

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

# AWS CloudFormation での CodeArtifact リソースの作成
<a name="cloudformation-codeartifact"></a>

CodeArtifact は AWS CloudFormation と統合されています。これは、AWS リソースをモデル化してセットアップするためのサービスで、リソースとインフラストラクチャの作成と管理に費やす時間を短縮できます。必要なすべての AWS リソースを記述するテンプレートを作成すると、これらのリソースが CloudFormation で自動的にプロビジョニングおよび設定されます。

CloudFormation を使用すると、テンプレートを再利用して CodeArtifact リソースを同じように繰り返してセットアップできます。リソースを一度記述するだけで、同じリソースを複数のアカウントと複数の AWS リージョンで何度でも繰り返してプロビジョニングできます。

## CodeArtifact および CloudFormation テンプレート
<a name="working-with-templates"></a>

CodeArtifact および関連サービスのリソースをプロビジョニングして設定するには、[CloudFormation テンプレート](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-guide.html) について理解しておく必要があります。テンプレートは、JSON や YAML でフォーマットされたテキストファイルです。これらのテンプレートには、CloudFormation スタックにプロビジョニングしたいリソースを記述します。JSON や YAML に不慣れな方は、CloudFormation デザイナー を使えば、CloudFormation テンプレートを使いこなすことができます。詳細については、*AWS CloudFormation ユーザーガイド*の「[What is AWS CloudFormation Designer? (AWS CloudFormation デザイナーとは)](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/working-with-templates-cfn-designer.html)」を参照してください。

CodeArtifact は、CloudFormation でのドメイン、リポジトリ、パッケージグループの作成をサポートしています。これらのリソースタイプの JSON テンプレートと YAML テンプレートの例を含む詳細情報については、「*CloudFormation ユーザーガイド*」の以下のトピックを参照してください。
+ [AWS::CodeArtifact::Domain](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codeartifact-domain.html)
+ [AWS::CodeArtifact::Repository](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codeartifact-repository.html)
+ [AWS::CodeArtifact::PackageGroup](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codeartifact-packagegroup.html) 

## CodeArtifact リソースの削除の防止
<a name="preventing-deletion-cloudformation"></a>

CodeArtifact リポジトリには、失われた場合に簡単に再作成できない可能性がある、重要なアプリケーション依存関係が含まれています。CloudFormation を使用して CodeArtifact リソースを管理するときに CodeArtifact リソースが誤って削除されないようにするには、すべてのドメインとリポジトリに値 `Retain` を含む `DeletionPolicy` および `UpdateRetainPolicy` 属性を含めます。これにより、スタックテンプレートからリソースが削除されたり、スタック全体が誤って削除されたりしても、削除を防ぐことができます。次の YAML スニペットは、これらの属性を持つ基本的なドメインとリポジトリを示しています。

```
Resources:
    MyCodeArtifactDomain:
        Type: 'AWS::CodeArtifact::Domain'
        DeletionPolicy: Retain
        UpdateReplacePolicy: Retain
        Properties:
            DomainName: "my-domain"

    MyCodeArtifactRepository:
        Type: 'AWS::CodeArtifact::Repository'
        DeletionPolicy: Retain
        UpdateReplacePolicy: Retain
        Properties:
            RepositoryName: "my-repo"
            DomainName: !GetAtt MyCodeArtifactDomain.Name
```

*これらの属性の詳細については、「AWS CloudFormation ユーザーガイド*」の「[DeletionPolicy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html)」と「[UpdateReplacePolicy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-updatereplacepolicy.html)」を参照してください。

## CloudFormation の詳細はこちら
<a name="learn-more-cloudformation"></a>

CloudFormation の詳細については、以下のリソースを参照してください。
+ [AWS CloudFormation](https://aws.amazon.com/cloudformation/)
+ [AWS CloudFormation ユーザーガイド](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/Welcome.html)
+ [AWS CloudFormation コマンドラインインターフェイスユーザーガイド](https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/what-is-cloudformation-cli.html)