Présentation des intégrations
Les intégrations sont utiles pour utiliser des services externes, tels que l’hébergement Git ou les robots de Slack, et pour maintenir vos processus de développement actuels, tels que l’utilisation de la fonction de révision du code et de demande de tirage dans GitHub. Vous pouvez ajouter les intégrations suivantes à votre projet d’infrastructure cloud Adobe Commerce :
Pour ajouter une intégration à l’aide de l’interface de ligne de commande Cloud :
La commande suivante lance des invites interactives pour sélectionner le type et les options de la nouvelle intégration.
code language-bash |
---|
|
Pour répertorier les intégrations configurées pour votre projet :
code language-bash |
---|
|
Exemple de réponse :
code language-none |
---|
|
Pour ajouter une intégration à l’aide de l’Cloud Console :
-
Dans Paramètres du projet, cliquez sur Integrations.
-
Cliquez sur un type d’intégration ou sur Add integration.
-
Parcourez les étapes de sélection et de configuration du type d’intégration.
-
Après avoir ajouté l’intégration, elle apparaît dans la liste de la vue Intégrations .
Webhooks Commerce
Vous pouvez configurer les Webhooks Commerce dans votre projet cloud avec la variable globale ENABLE_WEBHOOKS. Les webhooks Commerce envoient des requêtes à un serveur externe en réponse aux événements générés par Commerce. Le guide des Webhooks décrit cette fonctionnalité en détail.
Webhooks génériques
Vous pouvez capturer et générer des rapports sur les événements d’infrastructure cloud et de référentiel à l’aide d’une intégration webhook personnalisée pour POST
les messages JSON à une URL webhook.
Pour ajouter une URL webhook, utilisez la syntaxe suivante:
magento-cloud integration:add --type=webhook --url=https://hook-url.example.com
type
: spécifiez le type d'intégrationwebhook
.url
: indiquez l'URL webhook qui peut recevoir les messages JSON.
L’exemple de réponse affiche une série d’invites qui permettent de personnaliser l’intégration. L’utilisation de la réponse par défaut (vide) envoie des messages sur tous les événements dans tous les environnements d’un projet.
Vous pouvez personnaliser l’intégration pour signaler des événements spécifiques, tels que l’envoi de code vers une branche. Par exemple, vous pouvez spécifier l’événement environment.push
pour envoyer un message lorsqu’un utilisateur envoie du code vers une branche :
Events to report (--events)
A list of events to report, e.g. environment.push
Default: *
Enter comma-separated values (or leave this blank)
>
Vous pouvez choisir de générer des rapports sur des événements dont l’état est pending
, in_progress
ou complete
:
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)
>
Vous pouvez également inclure ou exclure des messages pour des environnements spécifiques :
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)
>
Une fois l’intégration terminée, vous recevez un résumé des valeurs :
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 |
+-----------------------+------------------------------+
Mettre à jour l’intégration existante
Vous pouvez mettre à jour une intégration existante. Par exemple, modifiez les états de complete
en pending
en procédant comme suit :
magento-cloud integration:update --states=pending <int-id>
Exemple de réponse :
Integration integration-ID (webhook) updated
+-----------------------+------------------------------+
| Property | Value |
+-----------------------+------------------------------+
| id | integration-ID |
| type | webhook |
| events | - '*' |
| environments | - '*' |
| excluded_environments | { } |
| states | - pending |
| url | https://hook-url.example.com |
+-----------------------+------------------------------+
Événements à signaler
environment.access.add
environment.access.remove
environment.activate
environment.backup
environment.branch
environment.deactivate
environment.delete
environment.initialize
master
du projet initialisée avec une première validationenvironment.merge
environment.push
environment.restore
environment.route.create
environment.route.delete
environment.route.update
environment.subscription.update
master
a été redimensionné car l’abonnement a été modifié, mais il n’y a aucune modification de contenuenvironment.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