

Amazon CodeCatalyst は新規のお客様には提供されなくなりました。既存のお客様は、通常どおりサービスを引き続き使用できます。詳細については、「[CodeCatalyst から移行する方法](migration.md)」を参照してください。

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# アクション間でのアーティファクトとファイルの共有
<a name="workflows-working-artifacts"></a>

*アーティファクト*はワークフローアクションの出力であり、通常はフォルダまたはファイルのアーカイブで構成されます。アーティファクトは、アクション間でのファイルや情報の共有を可能にするため重要です。

`sam-template.yml` ファイルを*生成*するビルドアクションがあっても、デプロイアクションでそれを*使用*するようにしたい場合を考えてみましょう。このシナリオでは、アーティファクトを使用して、ビルドアクションが `sam-template.yml` ファイルをデプロイアクションと共有できるようにします。コードは次のようになります。

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

前のコードでは、ビルドアクション (`BuildAction`) が `sam-template.yml` ファイルを生成し、それを `MYARTIFACT` という出力アーティファクトに追加します。後続のデプロイアクション (`DeployAction`) では、`MYARTIFACT` を入力として指定し、`sam-template.yml` ファイルへのアクセスを許可します。

**Topics**
+ [アーティファクトを出力や入力として指定せずに共有できますか?](#workflows-working-artifacts-share)
+ [ワークフロー間でアーティファクトを共有できますか?](#workflows-working-artifacts-share-wf)
+ [アーティファクトの例](workflows-working-artifacts-ex.md)
+ [出力アーティファクトの定義](workflows-working-artifacts-output.md)
+ [入力アーティファクトの定義](workflows-working-artifacts-refer.md)
+ [アーティファクト内のファイルの参照](workflows-working-artifacts-refer-files.md)
+ [アーティファクトのダウンロード](workflows-download-workflow-outputs.md)

## アーティファクトを出力や入力として指定せずに共有できますか?
<a name="workflows-working-artifacts-share"></a>

はい。アクションの YAML コードの `Outputs` および `Inputs` セクションでアーティファクトを指定せずに、アクション間でアーティファクトを共有できます。これを行うには、コンピューティング共有を有効にする必要があります。コンピューティング共有と、コンピューティング共有が有効になっているときにアーティファクトを指定する方法の詳細については、「[アクション間でのコンピューティングの共有する](compute-sharing.md)」を参照してください。

**注記**  
コンピューティング共有機能では、`Outputs` および `Inputs` セクションが不要になることで、ワークフローの YAML コードを簡素化できますが、この機能には有効にする前に注意すべき制限があります。制限の詳細については、「[コンピューティング共有に関する考慮事項](compute-sharing.md#compare-compute-sharing)」を参照してください。

## ワークフロー間でアーティファクトを共有できますか?
<a name="workflows-working-artifacts-share-wf"></a>

いいえ。異なるワークフロー間でアーティファクトを共有することはできませんが、同じワークフロー内のアクション間でアーティファクトを共有することはできます。