

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

# CodeStarSourceConnection (Bitbucket Cloud、GitHub、GitHub Enterprise Server、GitLab.com、および GitLab セルフマネージドアクションの場合)
<a name="action-reference-CodestarConnectionSource"></a>

接続のソースアクションは でサポートされています AWS CodeConnections。CodeConnections を使用すると、 AWS リソースと GitHub などのサードパーティーリポジトリ間の接続を作成および管理できます。サードパーティーのソースコードリポジトリで新しいコミットが行われたときに、パイプラインを開始します。ソースアクションは、パイプラインが手動で実行されたとき、またはソースプロバイダから webhook イベントが送信されたときに、コードの変更を取得します。

パイプラインのアクションを設定して、トリガーでパイプラインを開始できる Git 設定を使用できます。トリガーを使用してフィルタリングするようにパイプラインのトリガー設定を構成する方法の詳細については、「[コードプッシュまたはプルリクエストイベントタイプを使用してトリガーを追加する](pipelines-filter.md)」を参照してください。

**注記**  
この機能は、アジアパシフィック (香港）、アジアパシフィック (ハイデラバード）、アジアパシフィック (ジャカルタ）、アジアパシフィック (メルボルン）、アジアパシフィック (大阪）、アフリカ (ケープタウン）、中東 (バーレーン）、中東 (アラブ首長国連邦）、欧州 (スペイン）、欧州 (チューリッヒ）、イスラエル (テルアビブ）、または AWS GovCloud (米国西部) の各リージョンでは使用できません。利用可能なその他のアクションについては、「[CodePipeline との製品とサービスの統合](integrations.md)」を参照してください。欧州 (ミラノ) リージョンでのこのアクションに関する考慮事項については、「[CodeStarSourceConnection (Bitbucket Cloud、GitHub、GitHub Enterprise Server、GitLab.com、および GitLab セルフマネージドアクションの場合)](#action-reference-CodestarConnectionSource)」の注意を参照してください。

接続では、 AWS リソースを次のサードパーティーリポジトリに関連付けることができます。
+ Bitbucket Cloud (CodePipeline コンソールの **Bitbucket** プロバイダーオプションまたは CLI の `Bitbucket` プロバイダーを使用)
**注記**  
Bitbucket Cloud リポジトリへの接続を作成できます。Bitbucket サーバーなど、インストールされている Bitbucket プロバイダーのタイプはサポートされていません。
+ 
**注記**  
Bitbucket ワークスペースを使用している場合、接続を作成するには管理者アクセス権が必要です。
+ GitHub および GitHub Enterprise Cloud (CodePipeline コンソールの **GitHub (GitHub アプリ経由)** プロバイダーオプションまたは CLI の `GitHub` プロバイダーを使用)
**注記**  
リポジトリが GitHub 組織に属している場合、接続を作成するには組織の所有者であることが必要です。組織に属していないリポジトリを使用する場合は、リポジトリの所有者であることが必要です。
+ GitHub Enterprise Server (CodePipeline コンソールの **GitHub Enterprise Server** プロバイダーオプションまたは CLI の `GitHub Enterprise Server` プロバイダーを使用)
+ GitLab.com (CodePipeline コンソールの **GitLab** プロバイダーオプションまたは CLI の `GitLab` プロバイダーを使用)
**注記**  
GitLab で、自分が**所有者**ロールを持っているリポジトリへの接続を作成すると、その接続を CodePipeline などのリソースを含むリポジトリで使用できます。グループ内のリポジトリでは、グループの所有者である必要はありません。
+ GitLab (エンタープライズエディションまたはコミュニティエディション) のセルフマネージドインストール (CodePipeline コンソールの **GitLab セルフマネージド**プロバイダーオプションまたは CLI の `GitLabSelfManaged` プロバイダーを使用)

**注記**  
各接続は、そのプロバイダーのすべてのリポジトリをサポートします。プロバイダーの種類ごとに新しい接続を作成する必要があります。

Connections により、パイプラインはサードパーティープロバイダーのインストールアプリを通じてソースの変更を検出することができます。例えば、webhooks は GitHub イベントタイプのサブスクライブに使用され、組織、リポジトリ、または GitHub アプリにインストールできます。接続によって、GitHub プッシュタイプのイベントをサブスクライブするリポジトリ webhook が GitHub アプリにインストールされます。

コードの変更が検出された後は、後続のアクションにコードを渡すための次のオプションがあります。
+ デフォルト: 他の既存の CodePipeline ソースアクションと同様に、`CodeStarSourceConnection` はコミットの浅いコピーを含む ZIP ファイルを出力できます。
+ フルクローン: `CodeStarSourceConnection` は、後続のアクションのためにリポジトリへの URL リファレンスを出力するように設定することも可能です。

  現在、Git URL リファレンスは、リポジトリと関連する Git メタデータをクローンするためにダウンストリーム CodeBuild アクションでのみ使用できます。Git URL リファレンスを CodeBuild 以外のアクションに渡そうとすると、エラーが発生します。

CodePipeline は、接続の作成時に AWS Connector インストールアプリをサードパーティーアカウントに追加するように求めます。`CodeStarSourceConnection` アクションを介して接続する前に、サードパーティープロバイダのアカウントとリポジトリを作成しておく必要があります。

**注記**  
 AWS CodeStar 接続を使用するために必要なアクセス許可を持つロールにポリシーを作成またはアタッチするには、[Connections アクセス許可リファレンス](https://docs.aws.amazon.com/dtconsole/latest/userguide/security-iam.html#permissions-reference-connections)を参照してください。CodePipeline サービスロールが作成された日時によっては、 AWS CodeStar 接続をサポートするためにアクセス許可を更新する必要がある場合があります。手順については、「[CodePipeline サービスロールにアクセス許可を追加する](how-to-custom-role.md#how-to-update-role-new-services)」を参照してください。

**注記**  
欧州 (ミラノ) で接続を使用するには AWS リージョン、以下を行う必要があります。  
リージョン固有のアプリをインストールする
リージョンを有効にする
このリージョン固有のアプリで、欧州 (ミラノ) リージョンの接続をサポートします。サードパーティープロバイダーのサイトで公開されているアプリであり、他のリージョンの接続をサポートする既存のアプリとは別のものです。このアプリをインストールすることで、このリージョンでのみサービスとデータを共有することをサードパーティープロバイダーに許可します。アプリをアンインストールすることでいつでもアクセス許可を取り消すことができます。  
リージョンを有効にしない限り、サービスはデータを処理または保存しません。このリージョンを有効にすることで、データを処理および保存するアクセス許可をサービスに付与したことになります。  
リージョンが有効になっていなくても、リージョン固有のアプリがインストールされたままであれば、サードパーティープロバイダーはお客様のデータをサービスと共有できます。したがって、リージョンを無効にしたら、必ずアプリをアンインストールしてください。詳細については、「[リージョンの有効化](https://docs.aws.amazon.com/general/latest/gr/rande-manage.html#rande-manage-enable)」を参照してください。

**Topics**
+ [

## アクションタイプ
](#action-reference-CodestarConnectionSource-type)
+ [

## 設定パラメータ
](#action-reference-CodestarConnectionSource-config)
+ [

## 入力アーティファクト
](#action-reference-CodestarConnectionSource-input)
+ [

## 出力アーティファクト
](#action-reference-CodestarConnectionSource-output)
+ [

## 出力変数
](#action-reference-CodestarConnectionSource-variables)
+ [

## サービスロールのアクセス許可: CodeConnections アクション
](#edit-role-connections)
+ [

## アクションの宣言
](#action-reference-CodestarConnectionSource-example)
+ [

## インストールアプリケーションのインストールと接続の作成
](#action-reference-CodestarConnectionSource-auth)
+ [

## 関連情報
](#action-reference-CodestarConnectionSource-links)

## アクションタイプ
<a name="action-reference-CodestarConnectionSource-type"></a>
+ カテゴリ:`Source`
+ 所有者: `AWS`
+ プロバイダー: `CodeStarSourceConnection`
+ バージョン: `1`

## 設定パラメータ
<a name="action-reference-CodestarConnectionSource-config"></a>

****ConnectionArn****  
必須: はい  
ソースプロバイダに対して設定および認証された接続 ARN。

****FullRepositoryId****  
必須: はい  
ソースの変更が検出される所有者とリポジトリの名前。  
例: `some-user/my-repo`  
**FullRepositoryId** 値の大文字と小文字は正しく保持する必要があります。例えば、ユーザー名が `some-user` で、リポジトリ名が `My-Repo` の場合、**FullRepositoryId** の推奨値は `some-user/My-Repo` です。

****BranchName****  
必須: はい  
ソースの変更が検出されるブランチの名前。

****OutputArtifactFormat****  
必須: いいえ  
出力アーティファクト形式を指定します。`CODEBUILD_CLONE_REF` または `CODE_ZIP` のいずれかになります。指定しない場合、デフォルトの `CODE_ZIP` が使用されます。  
`CODEBUILD_CLONE_REF` のオプションは、CodeBuild のダウンストリームアクションでのみ使用可能です。  
このオプションを選択した場合は、[Bitbucket、GitHub、GitHub Enterprise Server、または GitLab.com に接続するための CodeBuild GitClone アクセス許可を追加します。](troubleshooting.md#codebuild-role-connections) で示されるように CodeBuild プロジェクトサービスロールの許可を更新する必要があります。[**フルクローン**] オプションを使用する方法を示すチュートリアルについては、[チュートリアル: CodeCommit パイプラインソースで完全なクローンを使用する](tutorials-github-gitclone.md) を参照してください。

**DetectChanges**  
 必須: いいえ  
設定したリポジトリとブランチで新しいコミットが行われたときに、パイプラインを自動的にスタートするように制御します。未指定の場合、デフォルト値は `true` となり、フィールドはデフォルトで表示されません。このパラメータの有効な値:  
+ `true`: CodePipeline は、新しいコミットでパイプラインを自動的に開始します。
+ `false`: CodePipeline は新しいコミットでパイプラインを開始しません。

## 入力アーティファクト
<a name="action-reference-CodestarConnectionSource-input"></a>
+ **アーティファクトの数:** `0`
+ **説明:** 入力アーティファクトは、このアクションタイプには適用されません。

## 出力アーティファクト
<a name="action-reference-CodestarConnectionSource-output"></a>
+ **アーティファクトの数:** `1` 
+ **説明:** レポジトリから生成されたアーティファクトは、`CodeStarSourceConnection` アクションに対する出力アーティファクトです。ソースコードのコミット ID は、パイプライン実行のトリガーとなるソースリビジョンとして、CodePipeline に表示されます。このアクションの出力アーティファクトは、次で構成できます。
  + パイプライン実行のソースレビジョンとして指定されたコミットで設定されたレポジトリおよびブランチのコンテンツを含む ZIP ファイル。
  + リポジトリへの URL リファレンスを含む JSON ファイル。これで下流のアクションが Git コマンドを直接実行できるようになります。
**重要**  
このオプションは、CodeBuild ダウンストリームアクションでのみ使用できます。  
 このオプションを選択した場合は、[CodePipeline のトラブルシューティング](troubleshooting.md) で示されるように CodeBuild プロジェクトサービスロールの権限を更新する必要があります。[**フルクローン**] オプションを使用する方法を示すチュートリアルについては、[チュートリアル: CodeCommit パイプラインソースで完全なクローンを使用する](tutorials-github-gitclone.md) を参照してください。

## 出力変数
<a name="action-reference-CodestarConnectionSource-variables"></a>

このアクションを設定すると、パイプライン内のダウンストリームアクションのアクション設定によって参照できる変数が生成されます。このアクションは、アクションに名前空間がない場合でも、出力変数として表示できる変数を生成します。名前空間を使用してアクションを設定し、これらの変数をダウンストリームアクションの設定で使用できるようにします。

詳細については、「[変数リファレンス](reference-variables.md)」を参照してください。

AuthorDate  
コミットが認証された日付 (タイムスタンプ形式)。

BranchName  
ソースが変更された リポジトリのブランチの名前。

CommitId  
パイプライン実行をトリガーした コミット ID。

CommitMessage  
パイプライン実行をトリガーしたコミットに関連付けられた説明メッセージ (存在する場合)。

ConnectionArn  
ソースプロバイダに対して設定および認証された接続 ARN。

FullRepositoryName  
パイプラインをトリガーしたコミットが行われた リポジトリの名前。

## サービスロールのアクセス許可: CodeConnections アクション
<a name="edit-role-connections"></a>

CodeConnections の場合、Bitbucket Cloud などの接続を使用するソースとのパイプラインを作成するには、次のアクセス許可が必要です。

```
{
    "Effect": "Allow",
    "Action": [
        "codeconnections:UseConnection"
    ],
    "Resource": "resource_ARN"
},
```

接続に関する IAM アクセス許可の詳細については、「[Connections アクセス許可リファレンス](https://docs.aws.amazon.com/dtconsole/latest/userguide/security-iam.html#permissions-reference-connections)」を参照してください。

## アクションの宣言
<a name="action-reference-CodestarConnectionSource-example"></a>

次の例では、`CODE_ZIP` ARN との接続で出力アーティファクトが `arn:aws:codestar-connections:region:account-id:connection/connection-id` のデフォルト ZIP 形式に設定されています。

------
#### [ YAML ]

```
Name: Source
Actions:
  - InputArtifacts: []
    ActionTypeId:
      Version: '1'
      Owner: AWS
      Category: Source
      Provider: CodeStarSourceConnection
    OutputArtifacts:
      - Name: SourceArtifact
    RunOrder: 1
    Configuration:
      ConnectionArn: "arn:aws:codestar-connections:region:account-id:connection/connection-id"
      FullRepositoryId: "some-user/my-repo"
      BranchName: "main"
      OutputArtifactFormat: "CODE_ZIP"
    Name: ApplicationSource
```

------
#### [ JSON ]

```
{
    "Name": "Source",
    "Actions": [
        {
            "InputArtifacts": [],
            "ActionTypeId": {
                "Version": "1",
                "Owner": "AWS",
                "Category": "Source",
                "Provider": "CodeStarSourceConnection"
            },
            "OutputArtifacts": [
                {
                    "Name": "SourceArtifact"
                }
            ],
            "RunOrder": 1,
            "Configuration": {
                "ConnectionArn": "arn:aws:codestar-connections:region:account-id:connection/connection-id",
                "FullRepositoryId": "some-user/my-repo",
                "BranchName": "main",
                "OutputArtifactFormat": "CODE_ZIP"
            },
            "Name": "ApplicationSource"
        }
    ]
},
```

------

## インストールアプリケーションのインストールと接続の作成
<a name="action-reference-CodestarConnectionSource-auth"></a>

コンソールを使用してサードパーティーリポジトリに新しい接続を初めて追加するときは、リポジトリへの CodePipeline アクセスを認可する必要があります。サードパーティーコードリポジトリを作成したアカウントに接続するためのインストールアプリを選択または作成します。

 AWS CLI または CloudFormation テンプレートを使用する場合は、インストールハンドシェイクをすでに通過している接続の接続 ARN を指定する必要があります。提供しないと、パイプラインはトリガーされません。

**注記**  
`CodeStarSourceConnection` ソースアクションの場合、webhook を設定したり、ポーリングをデフォルトにする必要はありません。接続アクションは、ソースの変更検出を管理します。

## 関連情報
<a name="action-reference-CodestarConnectionSource-links"></a>

このアクションを利用する際に役立つ関連リソースは以下の通りです。
+ [AWS::CodeStarConnections::Connection](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codestarconnections-connection.html) – AWS CodeStar Connections リソースの CloudFormation テンプレートリファレンスは、 CloudFormation テンプレート内の接続のパラメータと例を提供します。
+ [AWS CodeStar Connections API リファレンス](https://docs.aws.amazon.com/codestar-connections/latest/APIReference/Welcome.html) – *AWS CodeStar Connections API リファレンス*は、使用可能な接続アクションのリファレンス情報を提供します。
+ 接続でサポートされているソースアクションでパイプラインを作成するステップについては、以下を参照してください。
  + Bitbucket Cloud の場合は、コンソールの [**Bitbucket**] オプションまたは CLI の `CodestarSourceConnection` アクションを使用します。「[Bitbucket Cloud への接続](connections-bitbucket.md)」を参照してください。
  + GitHub および GitHub Enterprise Cloud の場合、コンソールの [**GitHub**] プロバイダオプションまたは `CodestarSourceConnection` CLI のアクションを使用します。「[GitHub コネクション](connections-github.md)」を参照してください。
  + GitHub Enterprise Server の場合は、コンソールの [**GitHub Enterprise Server**] プロバイダオプション、または `CodestarSourceConnection` CLI のアクションを使用します。「[GitHub Enterprise Server 接続](connections-ghes.md)」を参照してください。
  + GitLab.com の場合は、コンソールの **GitLab** プロバイダーオプション、または CLI の `CodestarSourceConnection` アクションと`GitLab` プロバイダーを使用します。「[GitLab.com への接続](connections-gitlab.md)」を参照してください。
+ Bitbucket ソースと CodeBuild アクションを使用してパイプラインを作成する スタートアップチュートリアルを表示するには、[[接続をはじめよう](https://docs.aws.amazon.com/dtconsole/latest/userguide/getting-started-connections.html)] を参照してください。
+ GitHub リポジトリに接続し、ダウンストリーム CodeBuild アクションで [**フルクローン**] オプションを使用する方法を紹介したチュートリアルは、[チュートリアル: CodeCommit パイプラインソースで完全なクローンを使用する](tutorials-github-gitclone.md) を参照してください。