# Artefatos do fluxo de trabalho

Saiba mais sobre como armazenar e compartilhar dados como artefatos de fluxos de trabalho do GitHub Actions.

## 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ê preserve os dados após a conclusão de um trabalho e compartilhe-os com outro trabalho no mesmo fluxo de trabalho. Por exemplo, você pode usar artefatos para salvar o build e os resultados dos testes após o término 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](https://github.com/actions/upload-artifact) e [download-artifact](https://github.com/actions/download-artifact).

Os artefatos comuns incluem:

* Arquivos de log e arquivos de despejo de núcleo
* Resultados de testes, falhas e capturas de tela;
* Arquivos binários ou comprimidos
* Resultados de desempenho do teste de estresse e de cobertura do código.

## Artefatos versus armazenamento em cache 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](/pt/actions/using-workflows/caching-dependencies-to-speed-up-workflows#comparing-artifacts-and-dependency-caching).

## 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](/pt/actions/deployment/security-hardening-your-deployments/about-security-hardening-with-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](/pt/actions/security-guides/using-artifact-attestations-to-establish-provenance-for-builds).

## 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 a execução de um fluxo de trabalho](/pt/actions/managing-workflow-runs-and-deployments/managing-workflow-runs/deleting-a-workflow-run), [Excluir uma execução de fluxo de trabalho](/pt/rest/actions/workflow-runs?apiVersion=2022-11-28#delete-a-workflow-run) ou [gh run delete](https://cli.github.com/manual/gh_run_delete).