Skip to main content

Workflow artifacts

Learn about storing and sharing data as artifacts of GitHub Actions workflows.

About workflow artifacts

An artifact is a file or collection of files produced during a workflow run. Artifacts allow you to persist data after a job has completed, and share that data with another job in the same workflow. For example, you can use artifacts to save your build and test output after a workflow run has ended.

GitHub provides two actions that you can use to upload and download build artifacts, upload-artifact and download-artifact.

Common artifacts include:

  • Log files and core dumps
  • Test results, failures, and screenshots
  • Binary or compressed files
  • Stress test performance output and code coverage results

Vergleich: Artefakte v/s Zwischenspeicherung von Abhängigkeiten

Artefakte und Caching sind ähnlich, da sie die Möglichkeit bieten, Dateien auf GitHub zu speichern, aber die beiden Funktionalitäten bieten verschiedene Anwendungsfälle und dürfen nicht miteinander verwechselt werden.

  • Verwende die Zwischenspeicherung, wenn du Dateien wiederverwenden möchtest, die sich zwischen Aufträgen oder Workflowausführungen nur selten verändern, zum Beispiel Buildabhängigkeiten aus einem Paketverwaltungssystem.
  • Verwende Artefakte, wenn du von einem Auftrag generierte Dateien speichern möchtest, um diese nach einer Workflowausführung zu öffnen, zum Beispiel Binärdateien oder Buildprotokolle.

For more information on dependency caching, see Dependency caching reference.

Generating artifact attestations for builds

Mit Artefaktbescheinigungen können Sie fälschungssichere Herkunfts- und Integritätsgarantien für die von Ihnen entwickelte Software erstellen. Personen, die Ihre Software nutzen, können wiederum überprüfen, wo und wie Ihre Software erstellt wurde.

Wenn Sie Artefaktenachweise mit Ihrer Software generieren, erstellen Sie kryptografisch signierte Ansprüche, die die Provenienz Ihres Builds einrichten und die folgenden Informationen enthalten:

  • Eine Verknüpfung mit dem Workflow, der dem Artefakt zugeordnet ist.
  • Das Repository, die Organisation, die Umgebung, die SHA-Übertragung und das auslösende Ereignis für das Artefakt.
  • Andere Informationen aus dem OIDC-Token, die zur Feststellung der Herkunft verwendet werden. Weitere Informationen finden Sie unter OpenID Connect.

Sie können auch Artefaktnachweise generieren, die eine zugeordnete Software-Stückliste (SBOM) enthalten. Das Zuordnen Ihrer Builds zu einer Liste der darin verwendeten Open Source-Abhängigkeiten bietet Transparenz und ermöglicht es Verbrauchern, Datenschutzstandards einzuhalten.

You can access attestations after a build run, underneath the list of the artifacts the build produced.

For more information, see Verwenden von Artefaktnachweisen zur Ermittlung der Herkunft von Builds.

Artefakte aus gelöschten Workflowausführungen

Wenn eine Workflowausführung gelöscht wird, werden alle Artefakte, die der Ausführung zugeordnet sind, ebenfalls aus dem Speicher gelöscht. Du kannst einen Workflow löschen, der mit der GitHub Actions-Benutzeroberfläche, der REST-API oder der GitHub-CLI ausgeführt wird: Eine Workflowausführung löschen, Löschen einer Workflowausführung oder gh run delete.