Split CI action into two

Needed because the code signing action requires knowing the artifact upload ID, which as far as I know, is impossible to obtain under a matrix
This commit is contained in:
pizzaboxer 2024-10-14 00:44:15 +01:00
parent 8b781c176d
commit 7e59537b17
No known key found for this signature in database
GPG Key ID: 59D4A1DBAD0F2BA8
2 changed files with 92 additions and 66 deletions

30
.github/workflows/ci-debug.yml vendored Normal file
View File

@ -0,0 +1,30 @@
name: CI (Debug)
on: [push, pull_request]
jobs:
build:
runs-on: windows-latest
steps:
- uses: actions/checkout@v4
with:
submodules: true
- uses: actions/setup-dotnet@v4
with:
dotnet-version: '6.0.x'
- name: Restore dependencies
run: dotnet restore
- name: Build
run: dotnet build --no-restore
- name: Publish
run: dotnet publish -p:PublishSingleFile=true -p:CommitHash=${{ github.sha }} -p:CommitRef=${{ github.ref_type }}/${{ github.ref_name }} -r win-x64 -c Debug --self-contained false .\Bloxstrap\Bloxstrap.csproj
- name: Upload Artifact
uses: actions/upload-artifact@v4
with:
name: Bloxstrap (Debug) (${{ github.sha }})
path: .\Bloxstrap\bin\Debug\net6.0-windows\win-x64\publish\*

View File

@ -1,14 +1,13 @@
name: CI
name: CI (Release)
on: [push, pull_request]
jobs:
build:
strategy:
matrix:
configuration: [Debug, Release]
runs-on: windows-latest
outputs:
artifact-id: ${{ steps.upload-artifact.outputs.artifact-id }}
steps:
- uses: actions/checkout@v4
with:
@ -25,15 +24,14 @@ jobs:
run: dotnet build --no-restore
- name: Publish
run: dotnet publish -p:PublishSingleFile=true -p:CommitHash=${{ github.sha }} -p:CommitRef=${{ github.ref_type }}/${{ github.ref_name }} -r win-x64 -c ${{ matrix.configuration }} --self-contained false .\Bloxstrap\Bloxstrap.csproj
run: dotnet publish -p:PublishSingleFile=true -p:CommitHash=${{ github.sha }} -p:CommitRef=${{ github.ref_type }}/${{ github.ref_name }} -r win-x64 -c Release --self-contained false .\Bloxstrap\Bloxstrap.csproj
- name: Upload Artifact
id: upload-artifact-${{ matrix.configuration }}
id: upload-artifact
uses: actions/upload-artifact@v4
with:
name: Bloxstrap (${{ matrix.configuration }})
path: |
.\Bloxstrap\bin\${{ matrix.configuration }}\net6.0-windows\win-x64\publish\*
name: Bloxstrap (Release) (${{ github.sha }})
path: .\Bloxstrap\bin\Release\net6.0-windows\win-x64\publish\*
release:
needs: build
@ -41,7 +39,7 @@ jobs:
if: startsWith(github.ref, 'refs/tags/v')
steps:
- name: Sign and download release artifact
- name: Sign and download artifact
uses: signpath/github-action-submit-signing-request@v1
with:
api-token: '${{ secrets.SIGNPATH_API_TOKEN }}'
@ -49,18 +47,16 @@ jobs:
project-slug: 'bloxstrap'
signing-policy-slug: 'release-signing'
artifact-configuration-slug: 'github-ci'
github-artifact-id: '${{ steps.upload-artifact-Release.outputs.artifact-id }}'
github-artifact-id: '${{ needs.build.outputs.artifact-id }}'
wait-for-completion: true
output-artifact-directory: 'release'
- name: Rename binaries
run: |
mv release/Bloxstrap.exe Bloxstrap-${{ github.ref_name }}.exe
run: mv release/Bloxstrap.exe Bloxstrap-${{ github.ref_name }}.exe
- name: Release
- name: Create release
uses: softprops/action-gh-release@v2
with:
draft: true
files: |
Bloxstrap-${{ github.ref_name }}.exe
files: Bloxstrap-${{ github.ref_name }}.exe
name: Bloxstrap ${{ github.ref_name }}