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
Comparando artefatos e memorização de dependência
Os artefatos são similares, pois fornecem a habilidade de armazenar arquivos em GitHub, mas cada recurso oferece usos diferentes e não podem ser usados de forma intercambiável.
- Use o cache quando quiser reutilizar arquivos que não são alterados com frequência entre trabalhos ou execuções de fluxo de trabalho, como dependências de build de um sistema de gerenciamento de pacotes.
- Use artefatos quando quiser salvar arquivos produzidos por um trabalho a serem exibidos após o fim de uma execução de fluxo de trabalho, como binários internos ou logs de build.
For more information on dependency caching, see Dependency caching reference.
Generating artifact attestations for builds
Os atestados de artefatos permitem que você crie garantias de procedência e integridade infalsificáveis para o software que você cria. Por sua vez, as pessoas que consomem seu software podem verificar onde e como seu software foi criado.
Ao gerar atestados de artefato com seu software, você cria declarações assinadas criptograficamente que estabelecem a procedência do build e incluem as seguintes informações:
- Um link para o fluxo de trabalho associado ao artefato.
- O repositório, organização, ambiente, SHA de commit e evento de gatilho do artefato.
- Outras informações do token OIDC usado para estabelecer a procedência. Para saber mais, confira OpenID Connect.
Você também pode gerar atestados de artefato que incluam uma SBOM (lista de materiais de software) associada. Associar suas compilações a uma lista de dependências de código aberto usadas nelas fornece transparência e permite que os consumidores cumpram os padrões de proteção de dados.
You can access attestations after a build run, underneath the list of the artifacts the build produced.
For more information, see Usar atestados de artefatos para estabelecer a procedência de compilações.
Artefatos de execuções de fluxo de trabalho excluídas
Quando uma execução de fluxo de trabalho é excluída, todos os artefatos associados a ela também são excluídos do armazenamento. Você pode excluir uma execução de fluxo de trabalho usando a interface do usuário do GitHub Actions, a API REST ou a CLI do GitHub, confira: Excluir execução de um fluxo de trabalho, Excluir uma execução de fluxo de trabalho ou gh run delete.