

A Amazon não CodeCatalyst está mais aberta a novos clientes. Os clientes atuais podem continuar usando o serviço normalmente. Para obter mais informações, consulte [Como migrar do CodeCatalyst](migration.md).

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

# Compartilhar artefatos e arquivos entre ações
<a name="workflows-working-artifacts"></a>

*Artefato* é a saída de uma ação de fluxo de trabalho e geralmente consiste em uma pasta ou um arquivameto de arquivos. Os artefatos são importantes porque permitem que você compartilhe arquivos e informações entre as ações.

Por exemplo, você pode ter uma ação de criação que *gera* um arquivo `sam-template.yml`, mas deseja que uma ação de implantação a *use*. Nesse cenário, você usaria um artefato para permitir que a ação de criação compartilhasse o arquivo `sam-template.yml` com a ação de implantação. O código pode ser semelhante a este:

```
Actions:
  BuildAction:
    Identifier: aws/build@v1
    Steps:
      - Run: sam package --output-template-file sam-template.yml
    Outputs:
      Artifacts:
        - Name: MYARTIFACT
          Files:
            - sam-template.yml
  DeployAction:
    Identifier: aws/cfn-deploy@v1  
    Inputs:
      Artifacts:
        - MYARTIFACT
    Configuration:
      template: sam-template.yml
```

No código anterior, a ação de criação (`BuildAction`) gera um arquivo `sam-template.yml` e o adiciona a um artefato de saída chamado `MYARTIFACT`. Uma ação de implantação subsequente (`DeployAction`) especifica `MYARTIFACT` como uma entrada, dando acesso ao arquivo `sam-template.yml`.

**Topics**
+ [Posso compartilhar artefatos sem especificá-los como saídas e entradas?](#workflows-working-artifacts-share)
+ [Posso compartilhar artefatos entre fluxos de trabalho?](#workflows-working-artifacts-share-wf)
+ [Exemplos de artefatos](workflows-working-artifacts-ex.md)
+ [Definir um artefato de saída](workflows-working-artifacts-output.md)
+ [Definir um artefato de entrada](workflows-working-artifacts-refer.md)
+ [Referência de arquivos em um artefato](workflows-working-artifacts-refer-files.md)
+ [Baixar artefatos](workflows-download-workflow-outputs.md)

## Posso compartilhar artefatos sem especificá-los como saídas e entradas?
<a name="workflows-working-artifacts-share"></a>

Sim, você pode compartilhar artefatos entre ações sem especificá-los nas seções `Outputs` e `Inputs` do código de YAML de suas ações. Para fazer isso, você deve ativar o compartilhamento de computação. Para ter mais informações sobre o compartilhamento de computação e como especificar artefatos quando ele está ativado, consulte [Compartilhamento de computação entre ações](compute-sharing.md). 

**nota**  
Embora o recurso de compartilhamento de computação permita que você simplifique o código YAML do seu fluxo de trabalho eliminando a necessidade das seções `Outputs` e `Inputs`, o recurso tem limitações que você deve conhecer antes de ativá-lo. Para ter informações sobre essas limitações, consulte [Considerações sobre compartilhamento de computação](compute-sharing.md#compare-compute-sharing).

## Posso compartilhar artefatos entre fluxos de trabalho?
<a name="workflows-working-artifacts-share-wf"></a>

Não, você não pode compartilhar artefatos entre fluxos de trabalho diferentes. No entanto, pode compartilhar artefatos entre ações dentro do mesmo fluxo de trabalho.