Use uploaded .zip for Windows action

Restore behavior for using uploaded zp file to generate the windows installer. This ensures that actions can always build and sign the installer, no matter how old the release, provided a .zip.

Signed-off-by: Ashley Cui <acui@redhat.com>
This commit is contained in:
Ashley Cui 2024-07-18 07:49:26 -04:00
parent 89432899a7
commit 7202e6172d
1 changed files with 22 additions and 17 deletions

View File

@ -22,7 +22,7 @@ jobs:
build: build:
runs-on: windows-latest runs-on: windows-latest
env: env:
FETCH_BASE_URL: ${{ github.server_url }}/${{ github.repository }} FETCH_BASE_URL: ${{ github.server_url }}/${{ github.repository }}
steps: steps:
- name: Consolidate dryrun setting to always be true or false - name: Consolidate dryrun setting to always be true or false
id: actual_dryrun id: actual_dryrun
@ -78,12 +78,11 @@ jobs:
# The podman release process requires a cross-compile of the windows binaries be uploaded to # The podman release process requires a cross-compile of the windows binaries be uploaded to
# the release page as a hard-coded filename. If non-existent, this workflow will fail in # the release page as a hard-coded filename. If non-existent, this workflow will fail in
# non-obvious ways with a non-obvious error message. Address that here. # non-obvious ways with a non-obvious error message. Address that here.
# TODO: Remove this in a future PR once verified to not cause artifact issues - name: Confirm upload_asset_name is non-empty
#- name: Confirm upload_asset_name is non-empty if: steps.check.outputs.upload_asset_name == ''
# if: steps.check.outputs.upload_asset_name == '' && github.event_name != 'pull_request' run: |
# run: | Write-Output "::error::check.ps1 script failed to find manually uploaded podman-remote-release-windows_amd64.zip github release asset for version ${{steps.getversion.outputs.version}}."
# Write-Output "::error::check.ps1 script failed to find manually uploaded podman-remote-release-windows_amd64.zip github release asset for version ${{steps.getversion.outputs.version}}." Exit 1
# Exit 1
- name: Set up Go - name: Set up Go
uses: actions/setup-go@v5 uses: actions/setup-go@v5
# N/B: already-exists may be an empty-string or "false", handle both cases. # N/B: already-exists may be an empty-string or "false", handle both cases.
@ -95,12 +94,12 @@ jobs:
- name: Setup Signature Tooling - name: Setup Signature Tooling
if: steps.Check.outputs.already-exists != 'true' || steps.actual_dryrun.outputs.dryrun == 'true' if: steps.Check.outputs.already-exists != 'true' || steps.actual_dryrun.outputs.dryrun == 'true'
run: | run: |
dotnet tool install --global AzureSignTool --version 3.0.0 dotnet tool install --global AzureSignTool --version 3.0.0
echo "CERT_NAME=${{secrets.AZ_CERT_NAME}}" | Out-File -FilePath $env:GITHUB_ENV -Append echo "CERT_NAME=${{secrets.AZ_CERT_NAME}}" | Out-File -FilePath $env:GITHUB_ENV -Append
echo "VAULT_ID=${{secrets.AZ_VAULT_ID}}" | Out-File -FilePath $env:GITHUB_ENV -Append echo "VAULT_ID=${{secrets.AZ_VAULT_ID}}" | Out-File -FilePath $env:GITHUB_ENV -Append
echo "APP_ID=${{secrets.AZ_APP_ID}}" | Out-File -FilePath $env:GITHUB_ENV -Append echo "APP_ID=${{secrets.AZ_APP_ID}}" | Out-File -FilePath $env:GITHUB_ENV -Append
echo "TENANT_ID=${{secrets.AZ_TENANT_ID}}" | Out-File -FilePath $env:GITHUB_ENV -Append echo "TENANT_ID=${{secrets.AZ_TENANT_ID}}" | Out-File -FilePath $env:GITHUB_ENV -Append
echo "CLIENT_SECRET=${{secrets.AZ_CLIENT_SECRET}}" | Out-File -FilePath $env:GITHUB_ENV -Append echo "CLIENT_SECRET=${{secrets.AZ_CLIENT_SECRET}}" | Out-File -FilePath $env:GITHUB_ENV -Append
- name: Pandoc Setup - name: Pandoc Setup
uses: r-lib/actions/setup-pandoc@v2 uses: r-lib/actions/setup-pandoc@v2
with: with:
@ -109,10 +108,16 @@ jobs:
id: build id: build
if: steps.check.outputs.already-exists != 'true' || steps.actual_dryrun.outputs.dryrun == 'true' if: steps.check.outputs.already-exists != 'true' || steps.actual_dryrun.outputs.dryrun == 'true'
run: | run: |
.\winmake.ps1 podman Push-Location contrib\win-installer
.\winmake.ps1 win-gvproxy .\build.ps1 ${{steps.getversion.outputs.version}} prod
.\winmake.ps1 docs $code = $LASTEXITCODE
.\winmake.ps1 installer if ($code -eq 2) {
Write-Output "artifact-missing=true" | Out-File -FilePath $env:GITHUB_OUTPUT -Append
Pop-Location
Exit 0
}
Pop-Location
Exit $code
- name: Artifact - name: Artifact
if: steps.check.outputs.already-exists != 'true' || steps.actual_dryrun.outputs.dryrun == 'true' if: steps.check.outputs.already-exists != 'true' || steps.actual_dryrun.outputs.dryrun == 'true'
uses: actions/upload-artifact@v4 uses: actions/upload-artifact@v4