統合の概要

統合は、Git ホスティングやSlackボットなどの外部サービスを使用したり、GitHub のコードリビュープルリクエスト機能の使用など、現在の開発プロセスを維持管理したりするのに役立ちます。 クラウドインフラストラクチャー上のAdobe Commerce プロジェクトに次の統合を追加できます。

統合

CLI

Cloud CLI を使用して統合を追加するには:

次のコマンドを実行すると、新しい統合のタイプとオプションを選択するための対話型プロンプトが表示されます。

code language-bash
magento-cloud integration:add

プロジェクトに設定されている統合をリストするには:

code language-bash
magento-cloud integration:list

応答の例:

code language-none
+----------+--------------+---------------------------------------------------------------------------+
| ID       | Type         | Summary                                                                   |
+----------+--------------+---------------------------------------------------------------------------+
| <int-id> | bitbucket    | Repository: user/magento-int                                              |
|          |              | Hook URL:                                                                 |
|          |              | https://magento-url.cloud/api/projects/projectID/integrations/int-ID/hook |
| <int-id> | health.email | From: you@example.com                                                     |
|          |              | To: them@example.com                                                      |
+----------+--------------+---------------------------------------------------------------------------+
コンソール

Cloud Console を使用して統合を追加するには:

  1. プロジェクト設定 で、「Integrations」をクリックします。

  2. 統合の種類をクリックするか、「Add integration」をクリックします。

  3. 統合タイプの選択と設定の手順について説明します。

  4. 統合を追加すると、統合ビューのリストに表示されます。

Commerce Webhook

ENABLE_WEBHOOK グローバル変数を使用して、クラウドプロジェクト内でCommerce Webhook を設定できます。 Commerce Webhook は、Commerceが生成したイベントに応答して、外部サーバーにリクエストを送信します。 Webhook ガイド では、この機能について詳しく説明します。

汎用 Webhook

カスタム Webhook 統合を使用して、クラウドインフラストラクチャーとリポジトリのイベントを取得し、レポートして、JSON メッセージを Webhook URL に POST すことができます。

Webhook URL を追加するには、次の構文を使用します

magento-cloud integration:add --type=webhook --url=https://hook-url.example.com
  • type - webhook 統合タイプを指定します。
  • url - JSON メッセージを受信できる Webhook URL を指定します。

応答のサンプルでは、統合をカスタマイズする機会を提供する一連のプロンプトを示しています。 デフォルト(空白)の応答を使用すると、プロジェクト内のすべての環境のすべてのイベントに関するメッセージが送信されます。

統合をカスタマイズして、分岐へのコードのプッシュなど、特定の イベントをレポートすることができます。 例えば、ユーザーがブランチにコードをプッシュする際にメッセージを送信するように、environment.push イベントを指定できます。

Events to report (--events)
A list of events to report, e.g. environment.push
Default: *
Enter comma-separated values (or leave this blank)
>

イベントの状態は、pendingin_progresscomplete から選択できます。

States to report (--states)
A list of states to report, e.g. pending, in_progress, complete
Default: complete
Enter comma-separated values (or leave this blank)
>

また、特定の環境に対してメッセージを 含める または 除外 できます。

Included environments (--environments)
The environment IDs to include
Default: *
Enter comma-separated values (or leave this blank)
>

Excluded environments (--excluded-environments)
The environment IDs to exclude
Enter comma-separated values (or leave this blank)
>

統合が完了すると、値の概要が表示されます。

Created integration integration-ID (type: webhook)
+-----------------------+------------------------------+
| Property              | Value                        |
+-----------------------+------------------------------+
| id                    | integration-ID               |
| type                  | webhook                      |
| events                | - '*'                        |
| environments          | - '*'                        |
| excluded_environments | {  }                         |
| states                | - complete                   |
| url                   | https://hook-url.example.com |
+-----------------------+------------------------------+

既存の統合を更新

既存の統合は更新できます。 例えば、以下を使用して状態を complete から pending に変更します。

magento-cloud integration:update --states=pending <int-id>

応答の例:

Integration integration-ID (webhook) updated
+-----------------------+------------------------------+
| Property              | Value                        |
+-----------------------+------------------------------+
| id                    | integration-ID               |
| type                  | webhook                      |
| events                | - '*'                        |
| environments          | - '*'                        |
| excluded_environments | {  }                         |
| states                | - pending                    |
| url                   | https://hook-url.example.com |
+-----------------------+------------------------------+

報告するイベント

イベント
説明
environment.access.add
ユーザーに環境へのアクセス権が付与されました
environment.access.remove
ユーザーが環境から削除されました
environment.activate
環境を含むブランチが「アクティブ化」されました
environment.backup
ユーザーがスナップショットをトリガーしました
environment.branch
管理コンソールを使用してブランチが作成されました
environment.deactivate
ブランチが「非アクティブ化」されました。 コードはまだそこにありますが、環境は破壊されました
environment.delete
分岐が削除されました
environment.initialize
プロジェクトの master ブランチが最初のコミットで初期化されました
environment.merge
アクティブなブランチが、管理コンソールまたは API を使用して統合されました
environment.push
ユーザーがブランチにコードをプッシュした
environment.restore
ユーザーがスナップショットを復元しました
environment.route.create
管理コンソールを使用してルートが作成されました
environment.route.delete
管理コンソールを使用してルートが削除されました
environment.route.update
管理コンソールを使用してルートが変更されました
environment.subscription.update
サブスクリプションが変更されたので、master 環境のサイズが変更されましたが、コンテンツの変更はありません
environment.synchronize
環境が親環境からデータまたはコードをコピーした
environment.update.http_access
環境の HTTP アクセスルールが変更されました
environment.update.restrict_robots
ブロック オールロボット機能が有効または無効になっています
environment.update.smtp
環境に対するメールの送信が有効または無効になっています
environment.variable.create
変数が作成されました
environment.variable.delete
変数が削除されました
environment.variable.update
変数が変更されました
project.domain.create
ドメインが作成され、プロジェクトに追加されました
project.domain.delete
プロジェクトに関連付けられているドメインが削除されました
project.domain.update
プロジェクトに関連付けられているドメインが更新されました
recommendation-more-help
05f2f56e-ac5d-4931-8cdb-764e60e16f26