refactor(ci): drop upload/download-artifact (remove github.com dependency)
actions/upload-artifact and download-artifact run code fetched from
github.com (and v4 is GHES-incompatible, v3 deprecated). The runner
host is single with a shared filesystem, so the orchestrator's
host-side collect dir is the artifact handoff:
- action.yml: replace the two upload-artifact steps with
host-path report steps; artifacts stay under F:\CI\Artifacts and
are aged by Invoke-RetentionPolicy.ps1.
- build-nsInnoUnp.yml: release job reads
F:\CI\Artifacts\{run_id}-{run_attempt}-{target} directly instead of
download-artifact; existing Gitea REST release-asset upload unchanged.
Tradeoff (accepted): artifacts are no longer downloadable from the
Gitea Actions run page for non-tag builds — only on host disk, and as
release assets for tagged builds.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
@@ -46,18 +46,10 @@ jobs:
|
||||
runs-on: windows-build
|
||||
|
||||
steps:
|
||||
- name: Download Windows artifact
|
||||
uses: actions/download-artifact@v3
|
||||
with:
|
||||
name: nsis-plugin-nsinnounp-windows-${{ github.ref_name }}
|
||||
path: artifacts/windows
|
||||
|
||||
- name: Download Linux artifact
|
||||
uses: actions/download-artifact@v3
|
||||
with:
|
||||
name: nsis-plugin-nsinnounp-linux-${{ github.ref_name }}
|
||||
path: artifacts/linux
|
||||
|
||||
# No actions/download-artifact (its code is fetched from github.com).
|
||||
# The runner host is single and shared; the build matrix legs left
|
||||
# their outputs at F:\CI\Artifacts\{run_id}-{run_attempt}-{target}
|
||||
# (job-id-suffix = matrix.target). Read them directly from disk.
|
||||
- name: Create Gitea release and upload assets
|
||||
shell: powershell
|
||||
env:
|
||||
@@ -65,6 +57,8 @@ jobs:
|
||||
GITEA_URL: ${{ github.server_url }}
|
||||
REPO: ${{ github.repository }}
|
||||
TAG: ${{ github.ref_name }}
|
||||
RUN_ID: ${{ github.run_id }}
|
||||
RUN_ATTEMPT: ${{ github.run_attempt }}
|
||||
run: |
|
||||
#Requires -Version 5.1
|
||||
Set-StrictMode -Version Latest
|
||||
@@ -86,9 +80,15 @@ jobs:
|
||||
$releaseId = $release.id
|
||||
Write-Host "Release created: id=$releaseId name=$($release.name)"
|
||||
|
||||
# Compress each artifact directory and upload as a release asset
|
||||
# Compress each host-side artifact directory and upload as a
|
||||
# release asset. The build legs collected to
|
||||
# F:\CI\Artifacts\{run_id}-{run_attempt}-{target}.
|
||||
foreach ($target in @('windows', 'linux')) {
|
||||
$srcDir = "artifacts\$target"
|
||||
$srcDir = "F:\CI\Artifacts\$env:RUN_ID-$env:RUN_ATTEMPT-$target"
|
||||
if (-not (Test-Path -LiteralPath $srcDir) -or
|
||||
-not (Get-ChildItem -Force -LiteralPath $srcDir)) {
|
||||
throw "artifact dir missing or empty: $srcDir"
|
||||
}
|
||||
$zipName = "nsis-plugin-nsinnounp-$target-$env:TAG.zip"
|
||||
Compress-Archive -Path "$srcDir\*" -DestinationPath $zipName -Force
|
||||
|
||||
|
||||
Reference in New Issue
Block a user