Cloud Manager での外部リポジトリの追加 external-repositories
Cloud Manager に外部リポジトリを追加する方法について説明します。Cloud Manager は、GitHub Enterprise、GitLab、Bitbucket リポジトリとの統合をサポートしています。
また、Azure DevOps Git リポジトリを Cloud Manager にオンボードできるようになりました。これは、最新の Azure DevOps リポジトリとレガシー VSTS(Visual Studio Team Services)リポジトリの両方に対応しています。
- Edge Delivery Services のユーザーは、オンボードされたリポジトリを使用して、サイトコードを同期およびデプロイできます。
- AEM as a Cloud Service および Adobe Managed Services(AMS)のユーザーは、リポジトリをフルスタックパイプラインとフロントエンドパイプラインの両方にリンクできます。
外部リポジトリの設定
Cloud Manager での外部リポジトリの設定は、次の 3 つの手順で構成されます。
- 選択したプログラムに外部リポジトリを追加します。
- 検証済みの外部リポジトリをパイプラインにリンクします。
- 外部リポジトリに webhook を設定します。
外部リポジトリの追加 add-ext-repo
-
my.cloudmanager.adobe.com で Cloud Manager にログインし、適切な組織を選択します。
-
マイプログラム コンソールで、外部リポジトリをリンクするプログラムを選択します。
-
サイドメニューの プログラム で、
-
リポジトリ ページの右上隅付近にある「リポジトリを追加」をクリックします。
-
リポジトリを追加 ダイアログボックスで、外部の Git リポジトリをプログラムにリンクする「プライベートリポジトリ」を選択します。
-
各フィールドに、リポジトリに関する次の詳細を入力します。
table 0-row-2 1-row-2 2-row-2 3-row-2 4-row-2 フィールド 説明 リポジトリ名 必須。新しいリポジトリのわかりやすい名前。 リポジトリ URL 必須。リポジトリの URL。
GitHub でホストされているリポジトリを使用している場合は、パスの末尾を.git
にする必要があります。
例:https://github.com/org-name/repo-name.git
(URL パスは説明用です)。
外部リポジトリを使用している場合は、次の URL パス形式を使用する必要があります。https://git-vendor-name.com/org-name/repo-name.git
またはhttps://self-hosted-domain/org-name/repo-name.git
。Git ベンダーと一致させる必要があります。リポジトリタイプを選択 必須。使用するリポジトリタイプを選択します。
- GitHub(GitHub Enterprise と自己ホスト型バージョンの GitHub)
- GitLab(
gitlab.com
と自己ホスト型バージョンの GitLab の両方) - Bitbucket(
bitbucket.org
(クラウドバージョン)のみがサポートされています。Bitbucket の自己ホスト型バージョンは、2024年2月15日(PT)以降に非推奨(廃止予定)になりました。) - Azure DevOps(
dev.azure.com
)
上記のリポジトリ URL パスに GitLab や Bitbucket などの Git ベンダー名が含まれている場合、リポジトリタイプは既に事前に選択されています。
説明 オプション。リポジトリの詳細な説明です。 -
「保存」を選択して、リポジトリを追加します。
次に、外部リポジトリの所有権を検証するアクセストークンを指定します。
-
プライベートリポジトリ所有権検証 ダイアログボックスで、外部リポジトリの所有権を検証してアクセスできるようにするためのアクセストークンを指定し、「検証」をクリックします。
BitBucket リポジトリの既存のアクセストークンを選択します(説明のみを目的としています)。
table 0-row-2 1-row-2 2-row-2 | |
---|---|
「アクセストークン」オプション | 説明 |
既存のアクセストークンを使用 | 組織にリポジトリアクセストークンを既に指定し、複数のリポジトリにアクセスできる場合は、既存のトークンを選択できます。トークン名 ドロップダウンリストを使用して、リポジトリに適用するトークンを選択します。それ以外の場合は、新しいアクセストークンを追加します。 |
新しいアクセストークンを追加 |
|
検証後、外部リポジトリを使用してパイプラインにリンクする準備が整います。
アクセストークンの管理も参照してください。
table 0-row-2 1-row-2 2-row-2 | |
---|---|
「アクセストークン」オプション | 説明 |
既存のアクセストークンを使用 | 組織にリポジトリアクセストークンを既に指定し、複数のリポジトリにアクセスできる場合は、既存のトークンを選択できます。トークン名 ドロップダウンリストを使用して、リポジトリに適用するトークンを選択します。それ以外の場合は、新しいアクセストークンを追加します。 |
新しいアクセストークンを追加 |
|
検証後、外部リポジトリを使用してパイプラインにリンクする準備が整います。
アクセストークンの管理も参照してください。
table 0-row-2 1-row-2 2-row-2 | |
---|---|
「アクセストークン」オプション | 説明 |
既存のアクセストークンを使用 | 組織にリポジトリアクセストークンを既に指定し、複数のリポジトリにアクセスできる場合は、既存のトークンを選択できます。トークン名 ドロップダウンリストを使用して、リポジトリに適用するトークンを選択します。それ以外の場合は、新しいアクセストークンを追加します。 |
新しいアクセストークンを追加 |
|
検証後、外部リポジトリを使用してパイプラインにリンクする準備が整います。
アクセストークンの管理も参照してください。
table 0-row-2 1-row-2 2-row-2 | |
---|---|
「アクセストークン」オプション | 説明 |
既存のアクセストークンを使用 | 組織にリポジトリアクセストークンを既に指定し、複数のリポジトリにアクセスできる場合は、既存のトークンを選択できます。トークン名 ドロップダウンリストを使用して、リポジトリに適用するトークンを選択します。それ以外の場合は、新しいアクセストークンを追加します。 |
新しいアクセストークンを追加 |
|
検証後、外部リポジトリを使用してパイプラインにリンクする準備が整います。
アクセストークンの管理も参照してください。
検証済みの外部リポジトリのパイプラインへのリンク validate-ext-repo
-
次のように、パイプラインを追加または編集します。
選択したリポジトリと Git 分岐を含む実稼動以外のパイプラインを追加ダイアログボックス。 -
パイプラインの追加または編集時に、新しいパイプラインまたは既存のパイプラインの ソースコード の場所を指定するには、リポジトリ ドロップダウンリストから使用する外部リポジトリを選択します。
-
Git 分岐 ドロップダウンリストで、パイプラインのソースとして分岐を選択します。
-
「保存」をクリックします。
外部リポジトリの webhook の設定 configure-webhook
Cloud Manager では、追加した外部 Git リポジトリの webhook を設定できます。詳しくは、外部リポジトリの追加を参照してください。これらの webhook により、Cloud Manager は Git ベンダーソリューション内の様々なアクションに関連するイベントを受信できます。
例えば、webhook を使用すると、Cloud Manager は次のようなイベントに基づいてアクションをトリガーできます。
- プルリクエスト(PR)の作成 - PR 検証機能を開始します。
- プッシュイベント -「Git コミット時」トリガーがオン(有効)になると、パイプラインを開始します。
- 今後のコメントベースのアクション - PR から高速開発環境(RDE)への直接デプロイメントなどのワークフローを可能にします。
Cloud Manager は GitHub アプリを通じて直接統合されるので、GitHub.com
でホストされているリポジトリでは webhook 設定は必要ありません。
GitHub Enterprise、GitLab、Bitbucket、Azure DevOps など、アクセストークンを使用してオンボードされるその他のすべての外部リポジトリでは、web フック設定が使用可能であり、手動で設定する必要があります。
外部リポジトリの webhook を設定するには:
-
my.cloudmanager.adobe.com で Cloud Manager にログインし、適切な組織を選択します。
-
マイプログラム コンソールで、外部 Git リポジトリの webhook を設定するプログラムを選択します。
-
ページの左上隅にある
-
左側のサイドメニューの プログラム 見出しで、
-
リポジトリ ページで、タイプ 列を使用して選択し、必要なリポジトリを見つけて、その横にある
-
ドロップダウンメニューから、「Webhook を設定」をクリックします。
-
Webhook を設定 ダイアログボックスで、次の操作を行います。
- 「Webhook URL」フィールドの横にある
URL をプレーンテキストファイルにペーストします。コピーした URL は、Git ベンダーの webhook 設定に必要です。 - 「Webhook 秘密鍵 トークン/キー」フィールドの横にある「生成」をクリックし、
秘密鍵をプレーンテキストファイルにペーストします。コピーした秘密鍵は、Git ベンダーの webhook 設定に必要です。
- 「Webhook URL」フィールドの横にある
-
「閉じる」をクリックします。
-
Git ベンダーソリューション(GitHub Enterprise、GitLab、Bitbucket、Azure DevOps)に移動します。
各ベンダーに必要な web フック設定とイベントについて詳しくは、外部リポジトリの追加を参照してください。手順 8 のタブ付きの表を参照してください。
-
ソリューションの webhook 設定セクションを見つけます。
-
前の手順でコピーした webhook URL を「URL」テキストフィールドにペーストします。
-
Webhook URL の
api_key
クエリパラメーターを独自の実際の API キーに置き換えます。API キーを生成するには、Adobe Developer Console で統合プロジェクトを作成する必要があります。詳しくは、API 統合プロジェクトの作成を参照してください。
-
-
前の手順でコピーした webhook 秘密鍵を「秘密鍵」(または「秘密鍵」、あるいは「秘密鍵トークン」)テキストフィールドにペーストします。
-
Web フックを設定して、Cloud Manager に必須のイベントを送信します。次の表を使用して、Git プロバイダーの正しいイベントを決定します。
table 0-row-1 1-row-1 |
---|
必須の web フックイベント |
これらのイベントにより、Cloud Manager でプルリクエストの検証、パイプラインのプッシュベースのトリガー、Edge Delivery Services のコード同期などの GitHub アクティビティに応答できます。
|
table 0-row-1 1-row-1 |
---|
必須の web フックイベント |
これらの webhook イベントにより、コードをプッシュした際や結合リクエストを送信した際に、Cloud Manager でパイプラインをトリガーできます。また、プルリクエストの検証に関連するコメントも(メモイベントを通じて)追跡します。
|
table 0-row-1 1-row-1 |
---|
必須の web フックイベント |
これらのイベントにより、Cloud Manager でプルリクエストの検証、コードプッシュへの応答、パイプライン調整用のコメントでのやり取りが可能になります。
|
table 0-row-1 1-row-1 |
---|
必須の Webhook イベントと認証 |
これらのイベントにより、Cloud Manager でプルリクエストの検証、コードプッシュへの応答、パイプライン調整用のコメントでのやり取りが可能になります。
認証の設定: |
Webhook を使用したプルリクエストの検証
Webhook が正しく設定されると、Cloud Managerは自動的にリポジトリのパイプライン実行またはプルリクエスト(PR)検証チェックをトリガーします。
以下に示すように、動作は使用する Git プロバイダーによって異なります。
チェックを作成すると、次のスクリーンショットのように表示されます。GitHub.com
との主な違いは、GitHub.com
はチェック実行を使用するのに対して、GitHub Enterprise(個人用アクセストークンを使用)はコミットステータスを生成することです。
GitLab のインタラクションは、コメントにのみ依存します。検証を開始すると、コメントが追加されます。検証が完了すると(成功または失敗に関係なく)、最初のコメントは削除され、検証結果やエラーの詳細を含む新しいコメントに置き換えられます。
コード品質検証が実行中の場合:
コード品質検証が終了した場合:
コード品質検証がエラーで失敗した場合:
コード品質検証が顧客の問題により失敗した場合:
コード品質検証が実行中の場合:
PR 検証の進行状況のトラッキングにコミットステータスを使用します。次の場合、スクリーンショットは、コード品質検証がお客様の問題により失敗した場合の動作を示しています。詳細なエラー情報を含むコメントが追加され、失敗を示すコミットチェックが作成されます(右側に表示)。
Azure DevOps は、ステータスチェックを通じてプルリクエストの検証を追跡します。 Cloud Managerがプルリクエストの検証を実行すると、Azure DevOps プルリクエストインターフェイスに表示されるステータスチェックが追加されます。
コード品質の検証中、ステータスチェックにプロセスが進行中であることが示されます。
コード品質の検証が完了すると、ステータスチェックが更新され、結果が反映されます。
検証が失敗した場合、詳細なエラー情報はステータスチェックの詳細に表示されます。 ステータスチェックをクリックすると、Cloud Managerで完全な検証の結果を表示できます。
プルリクエストのコメントとフィードバックについては、Cloud Managerが Azure DevOps のプルリクエストに直接コメントを追加し、検証の詳細と必要なアクションを追加します。
Web フックの問題のトラブルシューティング
- Web フック URL に有効な API キーが含まれていることを確認します。
- Git ベンダー設定で web フックイベントが正しく設定されていることを確認します。
- PR 検証またはパイプライントリガーが機能しない場合は、Cloud Manager と Git ベンダーの両方で web フックの秘密鍵が最新であることを確認します。