Eine Aktion, die hochgeladene Artefakte herunterlädt und extrahiert, die einem bestimmten Workflow und Commit oder anderen Kriterien zugeordnet sind.
Nehmen wir an, Sie haben einen Workflow mit einem Job darin, der am Ende mithilfe der Aktion actions/upload-artifact
ein Artefakt hochlädt, und Sie möchten dieses Artefakt in einem anderen Workflow herunterladen, der nach dem ersten ausgeführt wird. Offizielle actions/download-artifact
erlauben dies nicht. Deshalb habe ich mich entschieden, diese Aktion zu erstellen. Wenn Sie nur den Workflow-Namen und die Commit-SHA oder andere Details kennen, können Sie das zuvor hochgeladene Artefakt aus einem anderen Workflow herunterladen, der diesem Commit oder anderen Kriterien zugeordnet ist, und es verwenden.
Wenn
commit
“,pr
“, „branch
“,run_id
“ oderworkflow_conclusion
nicht angegeben ist, wird das Artefakt aus der letzten erfolgreich abgeschlossenen Workflow-Ausführung heruntergeladen.
Geben Sie pr
, commit
, branch
, run_id
nicht zusammen oder workflow_conclusion
und run_id
zusammen an. Wählen Sie jeweils nur eine oder keine aus.
- Name: Download-Artefakt-ID: download-artifact verwendet: dawidd6/action-download-artifact@v6 mit: # Optional, GitHub-Token, bei Bedarf ein persönliches Zugriffstoken mit „public_repo“-Bereich # Erforderlich, wenn das Artefakt von einem anderen stammt Repo # Erforderlich, wenn das Repo privat ist, ist ein persönliches Zugriffstoken mit dem „Repo“-Bereich erforderlich oder ein GitHub-Token in einem Job, bei dem die Berechtigungen auf den „Aktions“-Bereich festgelegt sind `read` github_token: ${{secrets.GITHUB_TOKEN}} # Optional, Workflow-Dateiname oder ID # Wenn nicht angegeben, wird von run_id abgeleitet (wenn run_id angegeben ist) oder ist der aktuelle Workflow-Workflow: Workflow_name.yml # Wenn kein Workflow festgelegt ist und Workflow_search auf „true“ gesetzt ist, wird der aktuellste Workflow, der mit allen anderen Kriterien übereinstimmt, nachgeschlagen, anstatt den aktuellen Workflow zu verwenden. Workflow_search: false # Optional, der Status oder Abschluss eines abgeschlossenen Vorgangs Zu suchender Workflow # Kann eine Workflow-Schlussfolgerung sein: # „Fehler“, „Erfolg“, „neutral“, „abgebrochen“, „übersprungen“, „timed_out“, „action_required“ # Oder ein Workflow-Status: # „abgeschlossen“. ", "in_progress", "queued" # Verwenden Sie die leere Zeichenfolge (""), um den Status oder die Schlussfolgerung in der Suche zu ignorieren. Workflow_Conclusion: Success # Optional, erhält Head-Commit-SHA-PR: ${{github.event.pull_request.number}} # Optional, es muss nicht angegeben werden, ob PR festgeschrieben ist: ${{github.event.pull_request.head.sha}} # Optional, verwendet den angegebenen Zweig. Standardmäßig alle Zweige branch: master # Optional, standardmäßig alle Ereignistypen: push # Optional, verwendet die angegebene Workflow-Ausführung # ${{ github.event.workflow_run.id }} verwenden, wenn Ihre Aktion in einem Workflow_run-Ereignis ausgeführt wird # und möchte zum Herunterladen vom auslösenden Workflow run run_id: 1122334455 # Optional, Laufnummer vom Workflow run_number: 34 # Optional, Name des hochgeladenen Artefakts, # lädt alle Artefakte herunter, wenn nicht angegeben # und extrahieren Sie sie in die entsprechenden Unterverzeichnisse # https://github.com/actions/download-artifact#download-all-artifacts # wird als regulärer Ausdruck behandelt, wenn die Eingabe name_is_regexp wahr ist # lädt nur die Artefakte mit einem passenden Namen herunter dieser reguläre Ausdruck # https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Regular_expressions Name: Artefaktname # Optional, Name wird als regulärer Ausdruck behandelt wenn true festgelegt, name_is_regexp: true # Optional, ein Verzeichnis, in das Artefakt(e) extrahiert werden sollen, standardmäßig der aktuelle Verzeichnispfad: extract_here # Optional, standardmäßig das aktuelle Repo-Repo: ${{ github.repository }} # Optional, überprüfen Sie den Workflow Ausführen, um zu prüfen, ob ein Artefakt vorhanden ist. # Dann wird das letzte verfügbare Artefakt aus dem vorherigen Workflow abgerufen. # Standardmäßig falsch, versuchen Sie einfach, vom letzten herunterzuladen. check_artifacts: false # Optional, suchen Sie nach der letzten Workflow-Ausführung, in der ein Artefakt gespeichert wurde benannt wie in „Name“-Eingabe # Standardwert false search_artifacts: false # Optional, wählen Sie, dass das Entpacken der heruntergeladenen Artefakte übersprungen werden soll. # Standardwert false skip_unpack: false # Optional, wählen Sie aus, wie die Aktion beendet werden soll, wenn kein Artefakt gefunden wird. # Kann einer sein of: # „fail“, „warn“, „ignore“ # default fail if_no_artifact_found: fail # Optional, Forks bei der Suche nach Artefakten einbeziehen # default falseallow_forks: true
v3
Version dieser Aktion wurde als Laufzeit von node16
auf node20
umgestellt. Knoten 20 erfordert glibc>=2.28
. Wenn Ihr selbst gehosteter Läufer über eine ältere glibc
verfügt, heften Sie ihn an die Version v2
Beachten Sie jedoch, dass er keine Updates erhält.