diff options
| author | ymatrix1 <10088631+ymatrix1@users.noreply.github.com> | 2026-11-02 04:43:12 -0300 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2026-11-02 08:43:12 +0100 |
| commit | 6184688806f379f27b04b8f774f702dceaeaa5a3 (patch) | |
| tree | 1db190399eb40e6b4248f1c954c8db55f0c591c3 /.github | |
| parent | 46b2577bf78870ed85cbb790a9dc3c82cc77f4a7 (diff) | |
ci: optimize caching, dependencies, and modernize actions to Node 24 (#263)
Diffstat (limited to '.github')
| -rw-r--r-- | .github/workflows/release-binaries.yml | 27 |
1 files changed, 14 insertions, 13 deletions
diff --git a/.github/workflows/release-binaries.yml b/.github/workflows/release-binaries.yml index 0871a57877..2a4e092f75 100644 --- a/.github/workflows/release-binaries.yml +++ b/.github/workflows/release-binaries.yml @@ -42,8 +42,9 @@ jobs: runs-on: ${{ matrix.runner }} env: CCACHE_DIR: ${{ github.workspace }}/.ccache - CCACHE_MAXSIZE: 1500M + CCACHE_MAXSIZE: 3000M SCCACHE_DIR: ${{ github.workspace }}/.sccache + SCCACHE_CACHE_SIZE: 3G strategy: fail-fast: false matrix: @@ -72,7 +73,7 @@ jobs: steps: - name: Check out source - uses: actions/checkout@v4 + uses: actions/checkout@v5 - name: Install Linux dependencies if: startsWith(matrix.platform, 'linux') @@ -87,7 +88,9 @@ jobs: libswscale-dev pkg-config zlib1g-dev libva-dev libvdpau-dev \ spirv-tools spirv-headers libusb-1.0-0-dev \ libboost-dev libboost-fiber-dev libboost-context-dev \ - libopus-dev libasound2-dev ccache + libopus-dev libasound2-dev ccache \ + libxcb-cursor0 libxcb-icccm4 libxcb-image0 \ + libxcb-keysyms1 libxcb-randr0 libxcb-render-util0 libxcb-shape0 libxcb-xinerama0 libxcb-xkb1 # The packages docs/Deps.md lists for macOS, plus ccache. - name: Install macOS dependencies @@ -196,6 +199,7 @@ jobs: with: msystem: UCRT64 update: true + cache: true install: >- git make autoconf libtool automake-wrapper patch jq pactoys ninja pacboy: >- @@ -207,7 +211,7 @@ jobs: lerc:p graphite2:p libwebp:p libtiff:p brotli:p ccache:p - name: Cache CPM downloads - uses: actions/cache@v4 + uses: actions/cache@v5 with: path: .cache/cpm key: cpm-${{ runner.os }}-${{ hashFiles('cpmfile.json', 'CMakeLists.txt', 'src/**/CMakeLists.txt') }} @@ -217,7 +221,7 @@ jobs: # The sha in the key makes every run save a fresh cache (actions/cache never saves over an # exact hit), and restore-keys seeds it from the newest one of the same platform. - name: Cache compiler objects - uses: actions/cache@v4 + uses: actions/cache@v5 with: path: | .ccache @@ -369,9 +373,6 @@ jobs: set -euo pipefail test -x build/release/bin/eglantine test -x build/release/bin/eden-cli - # Libraries Qt's xcb platform plugin needs, so linuxdeploy can resolve and bundle them. - sudo apt-get install -y --no-install-recommends libxcb-cursor0 libxcb-icccm4 libxcb-image0 \ - libxcb-keysyms1 libxcb-randr0 libxcb-render-util0 libxcb-shape0 libxcb-xinerama0 libxcb-xkb1 tools="$RUNNER_TEMP/linuxdeploy" mkdir -p "$tools" arch=$(uname -m) # aarch64 or x86_64 @@ -508,7 +509,7 @@ jobs: # zip gave a zip inside a zip. The release job zips it once for the release. - name: Upload Windows binary if: matrix.platform == 'windows-x86_64' - uses: actions/upload-artifact@v4 + uses: actions/upload-artifact@v7 with: name: eglantine-${{ matrix.platform }}-${{ github.sha }} path: build/release/bin/ @@ -517,7 +518,7 @@ jobs: - name: Upload MinGW binary if: matrix.mingw - uses: actions/upload-artifact@v4 + uses: actions/upload-artifact@v7 with: name: eglantine-${{ matrix.platform }}-${{ github.sha }} path: build/release/bin/ @@ -527,7 +528,7 @@ jobs: # Both Linux files go in one artifact: the tar.gz and the AppImage. - name: Upload Linux binary if: startsWith(matrix.platform, 'linux') - uses: actions/upload-artifact@v4 + uses: actions/upload-artifact@v7 with: name: eglantine-${{ matrix.platform }}-${{ github.sha }} path: | @@ -540,7 +541,7 @@ jobs: # Zipped with ditto beforehand: the bundle's framework symlinks don't survive artifact zipping. - name: Upload macOS app if: startsWith(matrix.platform, 'macos') - uses: actions/upload-artifact@v4 + uses: actions/upload-artifact@v7 with: name: eglantine-${{ matrix.platform }}-${{ github.sha }} path: | @@ -562,7 +563,7 @@ jobs: contents: write steps: - name: Download binaries - uses: actions/download-artifact@v4 + uses: actions/download-artifact@v7 with: pattern: eglantine-*-${{ github.sha }} path: artifacts |
