Integrationen - Übersicht
Integrationen sind nützlich für die Verwendung externer Dienste wie Git-Hosting oder Slack-Bots und die Wartung Ihrer aktuellen Entwicklungsprozesse, z. B. die Verwendung der Pull-Anforderungsfunktion für die Codeüberprüfung in GitHub. Sie können die folgenden Integrationen zu Ihrem Adobe Commerce-Projekt in der Cloud-Infrastruktur hinzufügen:
Hinzufügen einer Integration mithilfe der Cloud CLI:
Der folgende Befehl startet interaktive Aufforderungen zur Auswahl des Typs und der Optionen für die neue Integration.
code language-bash |
---|
|
So listen Sie die für Ihr Projekt konfigurierten Integrationen auf:
code language-bash |
---|
|
Beispielantwort:
code language-none |
---|
|
Hinzufügen einer Integration mithilfe desCloud Console:
-
Klicken Sie in Projekteinstellungen auf Integrations.
-
Klicken Sie auf einen Integrationstyp oder auf Add integration.
-
Führen Sie die Schritte zur Auswahl und Konfiguration des Integrationstyps durch.
-
Nach dem Hinzufügen der Integration wird sie in der Liste in der Ansicht "Integrationen"angezeigt.
Commerce-Webhooks
Sie können Commerce-Webhooks in Ihrem Cloud-Projekt mit der globalen Variable ENABLE_WEBHOOKS konfigurieren. Commerce-Webhooks senden Anfragen als Reaktion auf von Commerce generierte Ereignisse an einen externen Server. Im Webhooks-Handbuch wird diese Funktion ausführlich beschrieben.
Allgemeine Webhooks
Sie können Cloud-Infrastruktur- und Repository-Ereignisse mithilfe einer benutzerdefinierten Webhook-Integration in POST
JSON-Nachrichten mit einer webhook -URL erfassen und in Berichte aufnehmen.
Verwenden Sie die folgende Syntax, um eine Webhook-URL hinzuzufügen:
magento-cloud integration:add --type=webhook --url=https://hook-url.example.com
type
- Geben Sie den Integrationstypwebhook
an.url
- Geben Sie die Webhook-URL an, die JSON-Nachrichten empfangen kann.
Die Beispielantwort zeigt eine Reihe von Aufforderungen, die eine Möglichkeit bieten, die Integration anzupassen. Bei Verwendung der standardmäßigen (leeren) Antwort werden Meldungen zu allen Ereignissen in allen Umgebungen eines Projekts gesendet.
Sie können die Integration so anpassen, dass bestimmte Ereignisse gemeldet werden, z. B. das Pushen von Code in eine Verzweigung. Sie können beispielsweise das environment.push
-Ereignis angeben, um eine Nachricht zu senden, wenn ein Benutzer Code an eine Verzweigung sendet:
Events to report (--events)
A list of events to report, e.g. environment.push
Default: *
Enter comma-separated values (or leave this blank)
>
Sie können Ereignisse in einem Status pending
, in_progress
oder complete
melden:
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)
>
Außerdem können Sie __ - oder __ -Meldungen für bestimmte Umgebungen ausschließen:
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)
>
Nach Abschluss der Integration erhalten Sie eine Zusammenfassung der Werte:
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 |
+-----------------------+------------------------------+
Vorhandene Integration aktualisieren
Sie können eine vorhandene Integration aktualisieren. Ändern Sie beispielsweise die Status von complete
in pending
, indem Sie Folgendes verwenden:
magento-cloud integration:update --states=pending <int-id>
Beispielantwort:
Integration integration-ID (webhook) updated
+-----------------------+------------------------------+
| Property | Value |
+-----------------------+------------------------------+
| id | integration-ID |
| type | webhook |
| events | - '*' |
| environments | - '*' |
| excluded_environments | { } |
| states | - pending |
| url | https://hook-url.example.com |
+-----------------------+------------------------------+
Zu meldende Ereignisse
environment.access.add
environment.access.remove
environment.activate
environment.backup
environment.branch
environment.deactivate
environment.delete
environment.initialize
master
-Verzweigung des Projekts, das mit einem ersten Commit initialisiert wurdeenvironment.merge
environment.push
environment.restore
environment.route.create
environment.route.delete
environment.route.update
environment.subscription.update
master
" wurde geändert, da sich das Abonnement geändert hat, es jedoch keine Inhaltsänderungen gibt.environment.synchronize
environment.update.http_access
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