Skip to content

Feature/cicd selfhost2#12840

Merged
SoftFever merged 12 commits into
mainfrom
feature/cicd_selfhost2
Mar 19, 2026
Merged

Feature/cicd selfhost2#12840
SoftFever merged 12 commits into
mainfrom
feature/cicd_selfhost2

Conversation

@SoftFever

Copy link
Copy Markdown
Collaborator

Description

Screenshots/Recordings/Graphs

Tests

Copilot AI review requested due to automatic review settings March 19, 2026 04:27

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR updates the GitHub Actions CI workflows to better support self-hosted runners by switching most OS gating logic from inputs.os string matching to runner.os, and by adding vars.SELF_HOSTED conditions to skip GitHub-hosted-only steps (e.g., some installs and deploys).

Changes:

  • Replace inputs.os-based conditions with runner.os checks across build workflows.
  • Add vars.SELF_HOSTED gating to avoid running package installs and release deployments on self-hosted runners.
  • Update the top-level build_all.yml to select self-hosted runner labels when SELF_HOSTED is set, including unit tests and Flatpak.

Reviewed changes

Copilot reviewed 4 out of 4 changed files in this pull request and generated 5 comments.

File Description
.github/workflows/build_orca.yml Adjusts platform gating to use runner.os and adds self-hosted-aware deploy/install behavior.
.github/workflows/build_deps.yml Updates OS condition checks and adds self-hosted-aware dependency installation logic.
.github/workflows/build_check_cache.yml Changes cache key OS mapping to use runner.os (linux/windows/macos-arch).
.github/workflows/build_all.yml Switches build/test jobs to self-hosted runner labels and adds Flatpak variant skip logic.
Comments suppressed due to low confidence (2)

.github/workflows/build_orca.yml:392

  • These paths use ${{ env.ubuntu-ver-str }}; with the current env key name containing a hyphen, this expression may not resolve as intended. Rename the env var (underscore/uppercase) or switch to bracket access (env['ubuntu-ver-str']) everywhere it’s used to ensure the AppImage rename/chmod works.
          ./build_linux.sh -istr
          mv -n ./build/OrcaSlicer_Linux_V${{ env.ver_pure }}.AppImage ./build/OrcaSlicer_Linux_AppImage${{ env.ubuntu-ver-str }}_${{ env.ver }}.AppImage
          chmod +x ./build/OrcaSlicer_Linux_AppImage${{ env.ubuntu-ver-str }}_${{ env.ver }}.AppImage
          tar -cvpf build_tests.tar build/tests

.github/workflows/build_deps.yml:126

  • This step sets env: ubuntu-ver: '2404' and then references it as ${{ env.ubuntu-ver }}. Because the key contains a hyphen, dot-notation may not resolve correctly in GitHub Actions expressions. Rename the variable (e.g. UBUNTU_VER) or use bracket access (env['ubuntu-ver']) in the artifact name.
      - name: Upload Ubuntu artifacts
        if: runner.os == 'Linux' && !env.ACT
        env:
          ubuntu-ver: '2404'
        uses: actions/upload-artifact@v6
        with:
          name: OrcaSlicer_dep_ubuntu_${{ env.ubuntu-ver }}_${{ env.date }}
          path: ${{ github.workspace }}/deps/build/OrcaSlicer_dep_ubuntu_*.tar.gz

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

You can also share your feedback on Copilot code review. Take the survey.

Comment thread .github/workflows/build_all.yml Outdated
Comment on lines +164 to +169
steps:
- name: Check if variant should run
id: should-run
run: echo "skip=true" >> $GITHUB_OUTPUT
shell: bash
if: ${{ vars.SELF_HOSTED && !matrix.variant.self-hosted-runner }}
Comment on lines 172 to 173
run:
rm -rf /usr/local/lib/android/* /usr/share/dotnet/* /opt/ghc1/* "/usr/local/share/boost1/*" /opt/hostedtoolcache1/*
Comment thread .github/workflows/build_all.yml Outdated
Comment on lines +149 to +159
variant:
- arch: x86_64
runner: ubuntu-24.04
self-hosted-runner: orca-lnx-server
- arch: aarch64
runner: ubuntu-24.04-arm
# Don't run scheduled builds on forks:
# Don't run scheduled builds on forks
if: ${{ !cancelled() && (github.event_name != 'schedule' || github.repository == 'OrcaSlicer/OrcaSlicer') }}
runs-on: ${{ matrix.variant.runner }}
# When SELF_HOSTED is set, use self-hosted runner if available, otherwise fall back to
# cheapest GitHub runner (variant will be skipped via step conditions anyway)
runs-on: ${{ vars.SELF_HOSTED && (matrix.variant.self-hosted-runner || 'ubuntu-24.04') || matrix.variant.runner }}
Comment on lines 25 to 31
env:
date:
ver:
ver_pure:
ubuntu-ver: '2404'
ubuntu-ver-str: '_Ubuntu2404'
ORCA_UPDATER_SIG_KEY: ${{ secrets.ORCA_UPDATER_SIG_KEY }}
Comment on lines +41 to +42
echo cache-key=${{ env.cache-os }}-cache-orcaslicer_deps-build-${{ hashFiles('deps/**') }} >> ${{ env.output-cmd }}
echo cache-path=${{ github.workspace }}/deps/build${{ env.dep-folder-name }} >> ${{ env.output-cmd }}
@github-actions

github-actions Bot commented Mar 19, 2026

Copy link
Copy Markdown

Test Results

0 tests  ±0   0 ✅ ±0   0s ⏱️ ±0s
1 suites ±0   0 💤 ±0 
1 files   ±0   0 ❌ ±0 

Results for commit 5c20da7. ± Comparison against base commit e00fcbb.

♻️ This comment has been updated with latest results.

@SoftFever SoftFever merged commit f201997 into main Mar 19, 2026
1 check passed
@SoftFever SoftFever deleted the feature/cicd_selfhost2 branch March 19, 2026 16:31
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants