

Amazon CodeCatalyst tidak lagi terbuka untuk pelanggan baru. Pelanggan yang sudah ada dapat terus menggunakan layanan ini seperti biasa. Lihat informasi yang lebih lengkap di [Cara bermigrasi dari CodeCatalyst](migration.md).

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

# Berbagi artefak dan file antar tindakan
<a name="workflows-working-artifacts"></a>

*Artefak* adalah output dari tindakan alur kerja, dan biasanya terdiri dari folder atau arsip file. Artefak penting karena memungkinkan Anda berbagi file dan informasi antar tindakan.

Misalnya, Anda mungkin memiliki tindakan build yang *menghasilkan* `sam-template.yml` file, tetapi Anda ingin tindakan penerapan *menggunakannya*. Dalam skenario ini, Anda akan menggunakan artefak untuk memungkinkan tindakan build membagikan `sam-template.yml` file dengan tindakan penerapan. Kodenya mungkin terlihat seperti ini:

```
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
```

Dalam kode sebelumnya, build action (`BuildAction`) menghasilkan `sam-template.yml` file, dan kemudian menambahkannya ke artefak keluaran yang disebut`MYARTIFACT`. Tindakan penerapan berikutnya (`DeployAction`) menentukan `MYARTIFACT` sebagai input, memberikannya akses ke file. `sam-template.yml`

**Topics**
+ [Dapatkah saya membagikan artefak tanpa menentukannya sebagai output dan input?](#workflows-working-artifacts-share)
+ [Bisakah saya berbagi artefak antar alur kerja?](#workflows-working-artifacts-share-wf)
+ [Contoh artefak](workflows-working-artifacts-ex.md)
+ [Mendefinisikan artefak keluaran](workflows-working-artifacts-output.md)
+ [Mendefinisikan artefak input](workflows-working-artifacts-refer.md)
+ [Mereferensikan file dalam artefak](workflows-working-artifacts-refer-files.md)
+ [Mengunduh artefak](workflows-download-workflow-outputs.md)

## Dapatkah saya membagikan artefak tanpa menentukannya sebagai output dan input?
<a name="workflows-working-artifacts-share"></a>

Ya, Anda dapat berbagi artefak antar tindakan tanpa menentukannya di `Outputs` dan `Inputs` bagian kode YAMM tindakan Anda. Untuk melakukan ini, Anda harus mengaktifkan berbagi komputasi. Untuk informasi selengkapnya tentang berbagi komputasi dan cara menentukan artefak saat dihidupkan, lihat. [Berbagi komputasi di seluruh tindakan](compute-sharing.md) 

**catatan**  
Meskipun fitur berbagi komputasi memungkinkan Anda menyederhanakan kode YAMM alur kerja Anda dengan menghilangkan kebutuhan untuk `Inputs` bagian `Outputs` dan, fitur ini memiliki batasan yang harus Anda ketahui sebelum Anda menyalakannya. Untuk informasi tentang keterbatasan ini, lihat[Pertimbangan untuk berbagi komputasi](compute-sharing.md#compare-compute-sharing).

## Bisakah saya berbagi artefak antar alur kerja?
<a name="workflows-working-artifacts-share-wf"></a>

Tidak, Anda tidak dapat berbagi artefak di antara alur kerja yang berbeda; namun, Anda dapat berbagi artefak antar tindakan dalam alur kerja yang sama.