Refactor some workflows for consistency (#1510)

This commit is contained in:
Sylvie
2024-09-21 11:12:09 -04:00
committed by GitHub
parent 5d3e96662e
commit 84c01f064f
6 changed files with 46 additions and 33 deletions

View File

@@ -9,7 +9,8 @@ jobs:
if: github.repository_owner == 'gbdev' if: github.repository_owner == 'gbdev'
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- uses: actions/checkout@v4 - name: Checkout repo
uses: actions/checkout@v4
- name: Login to GitHub Container Registry - name: Login to GitHub Container Registry
uses: docker/login-action@v3 uses: docker/login-action@v3
with: with:

View File

@@ -1,4 +1,4 @@
name: "Code coverage checking" name: Code coverage checking
on: pull_request on: pull_request
jobs: jobs:

View File

@@ -1,4 +1,4 @@
name: "Create release artifacts" name: Create release artifacts
on: on:
push: push:
tags: tags:
@@ -24,30 +24,32 @@ jobs:
run: | # Turn "vX.Y.Z" into "X.Y.Z" run: | # Turn "vX.Y.Z" into "X.Y.Z"
VERSION="${{ github.ref_name }}" VERSION="${{ github.ref_name }}"
echo "version=${VERSION#v}" >> $GITHUB_ENV echo "version=${VERSION#v}" >> $GITHUB_ENV
- uses: actions/checkout@v4 - name: Checkout repo
uses: actions/checkout@v4
- name: Install deps - name: Install deps
run: .github/scripts/get_win_deps.ps1 run: .github/scripts/get_win_deps.ps1
- uses: actions/cache@v4 - name: Check libraries cache
id: cache id: cache
uses: actions/cache@v4
with: with:
path: | path: |
zbuild zbuild
pngbuild pngbuild
key: ${{ matrix.arch }}-${{ hashFiles('zlib/**', 'libpng/**') }} key: ${{ matrix.arch }}-${{ hashFiles('zlib/**', 'libpng/**') }}
- name: Build zlib - name: Build zlib
if: steps.cache.outputs.cache-hit != 'true'
run: | # BUILD_SHARED_LIBS causes the output DLL to be correctly called `zlib1.dll` run: | # BUILD_SHARED_LIBS causes the output DLL to be correctly called `zlib1.dll`
cmake -S zlib -B zbuild -A ${{ matrix.platform }} -Wno-dev -DCMAKE_INSTALL_PREFIX=install_dir -DBUILD_SHARED_LIBS=ON cmake -S zlib -B zbuild -A ${{ matrix.platform }} -Wno-dev -DCMAKE_INSTALL_PREFIX=install_dir -DBUILD_SHARED_LIBS=ON
cmake --build zbuild --config Release -j cmake --build zbuild --config Release -j
if: steps.cache.outputs.cache-hit != 'true'
- name: Install zlib - name: Install zlib
run: | run: |
cmake --install zbuild cmake --install zbuild
- name: Build libpng - name: Build libpng
if: steps.cache.outputs.cache-hit != 'true'
shell: bash shell: bash
run: | run: |
cmake -S libpng -B pngbuild -A ${{ matrix.platform }} -Wno-dev -DCMAKE_INSTALL_PREFIX=install_dir -DPNG_SHARED=ON -DPNG_STATIC=OFF -DPNG_TESTS=OFF cmake -S libpng -B pngbuild -A ${{ matrix.platform }} -Wno-dev -DCMAKE_INSTALL_PREFIX=install_dir -DPNG_SHARED=ON -DPNG_STATIC=OFF -DPNG_TESTS=OFF
cmake --build pngbuild --config Release -j cmake --build pngbuild --config Release -j
if: steps.cache.outputs.cache-hit != 'true'
- name: Install libpng - name: Install libpng
run: | run: |
cmake --install pngbuild cmake --install pngbuild
@@ -74,7 +76,8 @@ jobs:
run: | # Turn "refs/tags/vX.Y.Z" into "X.Y.Z" run: | # Turn "refs/tags/vX.Y.Z" into "X.Y.Z"
VERSION="${{ github.ref_name }}" VERSION="${{ github.ref_name }}"
echo "version=${VERSION#v}" >> $GITHUB_ENV echo "version=${VERSION#v}" >> $GITHUB_ENV
- uses: actions/checkout@v4 - name: Checkout repo
uses: actions/checkout@v4
- name: Install deps - name: Install deps
shell: bash shell: bash
run: | run: |
@@ -104,7 +107,8 @@ jobs:
run: | # Turn "refs/tags/vX.Y.Z" into "X.Y.Z" run: | # Turn "refs/tags/vX.Y.Z" into "X.Y.Z"
VERSION="${{ github.ref_name }}" VERSION="${{ github.ref_name }}"
echo "version=${VERSION#v}" >> $GITHUB_ENV echo "version=${VERSION#v}" >> $GITHUB_ENV
- uses: actions/checkout@v4 - name: Checkout repo
uses: actions/checkout@v4
- name: Install deps - name: Install deps
shell: bash shell: bash
run: | run: |
@@ -133,17 +137,19 @@ jobs:
run: | # Turn "refs/tags/vX.Y.Z" into "X.Y.Z" run: | # Turn "refs/tags/vX.Y.Z" into "X.Y.Z"
VERSION="${{ github.ref_name }}" VERSION="${{ github.ref_name }}"
echo "version=${VERSION#v}" >> $GITHUB_ENV echo "version=${VERSION#v}" >> $GITHUB_ENV
- uses: actions/checkout@v4 - name: Checkout repo
uses: actions/checkout@v4
- name: Package sources - name: Package sources
run: | run: |
make dist Q= make dist Q=
ls ls
- uses: actions/download-artifact@v4 - name: Download Linux binaries
uses: actions/download-artifact@v4
- name: Release - name: Release
uses: softprops/action-gh-release@v2 uses: softprops/action-gh-release@v2
with: with:
body: | body: |
Please ensure that the four packages below work properly. Please ensure that the packages below work properly.
Once that's done, replace this text with the changelog, un-draft the release, and update the `release` branch. Once that's done, replace this text with the changelog, un-draft the release, and update the `release` branch.
By the way, if you forgot to update `include/version.hpp`, RGBASM's version test is gonna fail in the tag's regression testing! (Use `git push --delete origin <tag>` to delete it) By the way, if you forgot to update `include/version.hpp`, RGBASM's version test is gonna fail in the tag's regression testing! (Use `git push --delete origin <tag>` to delete it)
draft: true # Don't publish the release quite yet... draft: true # Don't publish the release quite yet...

View File

@@ -1,4 +1,4 @@
name: "Create release docs" name: Create release docs
on: on:
release: release:
types: types:
@@ -7,7 +7,7 @@ on:
jobs: jobs:
build: build:
if: github.repository_owner == 'gbdev' if: github.repository_owner == 'gbdev'
runs-on: ubuntu-22.04 runs-on: ubuntu-latest
steps: steps:
- name: Checkout rgbds@release - name: Checkout rgbds@release
uses: actions/checkout@v4 uses: actions/checkout@v4

View File

@@ -1,4 +1,4 @@
name: "Regression testing" name: Regression testing
on: on:
- push - push
- pull_request - pull_request
@@ -17,7 +17,8 @@ jobs:
fail-fast: false fail-fast: false
runs-on: ${{ matrix.os }} runs-on: ${{ matrix.os }}
steps: steps:
- uses: actions/checkout@v4 - name: Checkout repo
uses: actions/checkout@v4
- name: Install deps - name: Install deps
shell: bash shell: bash
run: | run: |
@@ -58,8 +59,8 @@ jobs:
with: with:
path: ${{ fromJSON(steps.test-deps-cache-params.outputs.paths) }} path: ${{ fromJSON(steps.test-deps-cache-params.outputs.paths) }}
key: ${{ matrix.os }}-${{ steps.test-deps-cache-params.outputs.hash }} key: ${{ matrix.os }}-${{ steps.test-deps-cache-params.outputs.hash }}
- if: steps.test-deps-cache.outputs.cache-hit != 'true' - name: Fetch test dependency repositories
name: Fetch test dependency repositories if: steps.test-deps-cache.outputs.cache-hit != 'true'
continue-on-error: true continue-on-error: true
run: | run: |
test/fetch-test-deps.sh test/fetch-test-deps.sh
@@ -75,7 +76,8 @@ jobs:
macos-static: macos-static:
runs-on: macos-14 runs-on: macos-14
steps: steps:
- uses: actions/checkout@v4 - name: Checkout repo
uses: actions/checkout@v4
- name: Install deps - name: Install deps
shell: bash shell: bash
run: | run: |
@@ -109,8 +111,8 @@ jobs:
with: with:
path: ${{ fromJSON(steps.test-deps-cache-params.outputs.paths) }} path: ${{ fromJSON(steps.test-deps-cache-params.outputs.paths) }}
key: ${{ matrix.os }}-${{ steps.test-deps-cache-params.outputs.hash }} key: ${{ matrix.os }}-${{ steps.test-deps-cache-params.outputs.hash }}
- if: steps.test-deps-cache.outputs.cache-hit != 'true' - name: Fetch test dependency repositories
name: Fetch test dependency repositories if: steps.test-deps-cache.outputs.cache-hit != 'true'
continue-on-error: true continue-on-error: true
run: | run: |
test/fetch-test-deps.sh test/fetch-test-deps.sh
@@ -138,30 +140,32 @@ jobs:
fail-fast: false fail-fast: false
runs-on: ${{ matrix.os }} runs-on: ${{ matrix.os }}
steps: steps:
- uses: actions/checkout@v4 - name: Checkout repo
uses: actions/checkout@v4
- name: Install deps - name: Install deps
run: .github/scripts/get_win_deps.ps1 run: .github/scripts/get_win_deps.ps1
- uses: actions/cache@v4 - name: Check libraries cache
id: cache id: cache
uses: actions/cache@v4
with: with:
path: | path: |
zbuild zbuild
pngbuild pngbuild
key: ${{ matrix.arch }}-${{ hashFiles('zlib/**', 'libpng/**') }} key: ${{ matrix.arch }}-${{ hashFiles('zlib/**', 'libpng/**') }}
- name: Build zlib - name: Build zlib
if: steps.cache.outputs.cache-hit != 'true'
run: | # BUILD_SHARED_LIBS causes the output DLL to be correctly called `zlib1.dll` run: | # BUILD_SHARED_LIBS causes the output DLL to be correctly called `zlib1.dll`
cmake -S zlib -B zbuild -A ${{ matrix.platform }} -Wno-dev -DCMAKE_INSTALL_PREFIX=install_dir -DBUILD_SHARED_LIBS=ON cmake -S zlib -B zbuild -A ${{ matrix.platform }} -Wno-dev -DCMAKE_INSTALL_PREFIX=install_dir -DBUILD_SHARED_LIBS=ON
cmake --build zbuild --config Release -j cmake --build zbuild --config Release -j
if: steps.cache.outputs.cache-hit != 'true'
- name: Install zlib - name: Install zlib
run: | run: |
cmake --install zbuild cmake --install zbuild
- name: Build libpng - name: Build libpng
if: steps.cache.outputs.cache-hit != 'true'
shell: bash shell: bash
run: | run: |
cmake -S libpng -B pngbuild -A ${{ matrix.platform }} -Wno-dev -DCMAKE_INSTALL_PREFIX=install_dir -DPNG_SHARED=ON -DPNG_STATIC=OFF -DPNG_TESTS=OFF cmake -S libpng -B pngbuild -A ${{ matrix.platform }} -Wno-dev -DCMAKE_INSTALL_PREFIX=install_dir -DPNG_SHARED=ON -DPNG_STATIC=OFF -DPNG_TESTS=OFF
cmake --build pngbuild --config Release -j cmake --build pngbuild --config Release -j
if: steps.cache.outputs.cache-hit != 'true'
- name: Install libpng - name: Install libpng
run: | run: |
cmake --install pngbuild cmake --install pngbuild
@@ -196,8 +200,8 @@ jobs:
with: with:
path: ${{ fromJSON(steps.test-deps-cache-params.outputs.paths) }} path: ${{ fromJSON(steps.test-deps-cache-params.outputs.paths) }}
key: ${{ matrix.os }}-${{ matrix.bits }}-${{ steps.test-deps-cache-params.outputs.hash }} key: ${{ matrix.os }}-${{ matrix.bits }}-${{ steps.test-deps-cache-params.outputs.hash }}
- if: steps.test-deps-cache.outputs.cache-hit != 'true' - name: Fetch test dependency repositories
name: Fetch test dependency repositories if: steps.test-deps-cache.outputs.cache-hit != 'true'
shell: bash shell: bash
continue-on-error: true continue-on-error: true
run: | run: |
@@ -229,7 +233,8 @@ jobs:
env: env:
DIST_DIR: win${{ matrix.bits }} DIST_DIR: win${{ matrix.bits }}
steps: steps:
- uses: actions/checkout@v4 - name: Checkout repo
uses: actions/checkout@v4
- name: Install deps - name: Install deps
shell: bash shell: bash
run: | run: |
@@ -273,7 +278,8 @@ jobs:
fail-fast: false fail-fast: false
runs-on: ${{ matrix.os }} runs-on: ${{ matrix.os }}
steps: steps:
- uses: actions/checkout@v4 - name: Checkout repo
uses: actions/checkout@v4
- name: Retrieve binaries - name: Retrieve binaries
uses: actions/download-artifact@v4 uses: actions/download-artifact@v4
with: with:
@@ -303,8 +309,8 @@ jobs:
with: with:
path: ${{ fromJSON(steps.test-deps-cache-params.outputs.paths) }} path: ${{ fromJSON(steps.test-deps-cache-params.outputs.paths) }}
key: mingw-${{ matrix.bits }}-${{ steps.test-deps-cache-params.outputs.hash }} key: mingw-${{ matrix.bits }}-${{ steps.test-deps-cache-params.outputs.hash }}
- if: steps.test-deps-cache.outputs.cache-hit != 'true' - name: Fetch test dependency repositories
name: Fetch test dependency repositories if: steps.test-deps-cache.outputs.cache-hit != 'true'
shell: bash shell: bash
continue-on-error: true continue-on-error: true
run: | run: |

View File

@@ -1,4 +1,4 @@
name: "Update master docs" name: Update master docs
on: on:
push: push:
branches: branches:
@@ -17,7 +17,7 @@ on:
jobs: jobs:
build: build:
if: github.repository_owner == 'gbdev' if: github.repository_owner == 'gbdev'
runs-on: ubuntu-22.04 runs-on: ubuntu-latest
steps: steps:
- name: Checkout rgbds@master - name: Checkout rgbds@master
uses: actions/checkout@v4 uses: actions/checkout@v4