Integrationen - Übersicht
Integrationen sind für die Verwendung externer Services nützlich, z. B. für Git-Hosting oder Slack-Bots, und für die Pflege Ihrer aktuellen Entwicklungsprozesse, z. B. die Verwendung der Pull-Request-Funktion für die Code-Überprüfung in GitHub. Sie können Ihrem Adobe Commerce on Cloud-Infrastrukturprojekt die folgenden Integrationen hinzufügen:
So fügen Sie eine Integration mithilfe der Cloud-CLI hinzu:
Der folgende Befehl beginnt mit interaktiven Eingabeaufforderungen, um den Typ und die Optionen für die neue Integration auszuwählen.
code language-bash |
---|
|
Auflisten der für Ihr Projekt konfigurierten Integrationen:
code language-bash |
---|
|
Beispielantwort:
code language-none |
---|
|
So fügen Sie eine Integration mithilfe derCloud Console hinzu:
-
Klicken in "" auf Integrations.
-
Klicken Sie auf einen Integrationstyp oder klicken Sie auf Add integration.
-
Führen Sie die Schritte zur Auswahl des Integrationstyps und zur Konfiguration schrittweise 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 ENABLE_WEBHOOKS“. Commerce-Webhooks senden als Reaktion auf Commerce-generierte Ereignisse Anfragen 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 erfassen und melden, um JSON-Nachrichten an eine Webhook-URL zu POST
.
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 Eingabeaufforderungen, die eine Möglichkeit bieten, die Integration anzupassen. Bei Verwendung der Standardantwort (leer) werden Nachrichten zu allen Ereignissen in allen Umgebungen in einem Projekt gesendet.
Sie können die Integration anpassen, um bestimmte Ereignisse“ zu melden z. B. Code an eine Verzweigung zu senden. 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 pending
, in_progress
oder complete
Status 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)
>
Und Sie können Nachrichten ein oder ausschließen für bestimmte Umgebungen:
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 den Status wie folgt von complete
auf pending
:
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, die 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 gibt jedoch keine Inhaltsänderungenenvironment.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