Sobre artefatos de fluxos de trabalho
Um artefato é um arquivo ou uma coleção de arquivos produzidos durante a execução de um fluxo de trabalho. Os artefatos permitem que você persista com os dados após um trabalho ter sido concluído e compartilhe os dados com outro trabalho no mesmo fluxo de trabalho. Por exemplo, você pode usar artefatos para salvar a sua criação e testar a saída após uma conclusão da execução do fluxo de trabalho.
O GitHub fornece duas ações que você pode usar para carregar e baixar artefatos de build, upload-artifact e download-artifact.
Os artefatos comuns incluem:
- Arquivos de log e descartes de memória;
- Resultados de testes, falhas e capturas de tela;
- Arquivos binários ou comprimidos
- Resultados de teste de estresse e resultados de cobertura do código.
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.
Para obter mais informações sobre o cache de dependência, confira Referência do cache de dependência.
Gerar atestados de artefato para compilações
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, a organização, o ambiente, o SHA de commit e o 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.
Você pode acessar atestados após a execução de uma compilação, abaixo da lista de artefatos que a compilação produziu.
Para saber mais, confira 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.