Gérer les déclencheurs d'un AWS CodeCommit référentiel - AWS CodeCommit

AWS CodeCommit n'est plus disponible pour les nouveaux clients. Les clients existants de AWS CodeCommit peuvent continuer à utiliser le service normalement. En savoir plus »

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Gérer les déclencheurs d'un AWS CodeCommit référentiel

Vous pouvez configurer un CodeCommit référentiel de manière à ce que des poussées de code ou d'autres événements déclenchent des actions, telles que l'envoi d'une notification depuis Amazon Simple Notification Service (AmazonSNS) ou l'appel d'une fonction dans. AWS Lambda Vous pouvez créer jusqu'à 10 déclencheurs pour chaque CodeCommit dépôt.

Les déclencheurs sont généralement configurés pour :

  • Envoyer des e-mails à des utilisateurs abonnés chaque fois qu'une personne effectue une transmission vers le référentiel.

  • Demander à un système de génération externe de démarrer une génération une fois qu'une personne effectue une transmission vers la branche principale du référentiel.

Des scénarios tels que la notification d'un système de build externe nécessitent l'écriture d'une fonction Lambda pour interagir avec d'autres applications. Le scénario d'e-mail nécessite simplement la création d'un SNS sujet Amazon.

Cette rubrique explique comment définir des autorisations permettant de déclencher CodeCommit des actions dans Amazon SNS et Lambda. Elle inclut également des liens vers des exemples permettant de créer, modifier, test et supprimer des déclencheurs.

Créez la ressource et ajoutez des autorisations pour CodeCommit

Vous pouvez intégrer SNS des sujets Amazon et des fonctions Lambda à des déclencheurs CodeCommit, mais vous devez d'abord créer puis configurer des ressources avec une politique qui accorde CodeCommit les autorisations nécessaires pour interagir avec ces ressources. Vous devez créer la ressource au même endroit Région AWS que le CodeCommit référentiel. Par exemple, si le référentiel se trouve dans l'est des États-Unis (Ohio) (us-east-2), le sujet SNS Amazon ou la fonction Lambda doivent se trouver dans l'est des États-Unis (Ohio).

  • Pour les SNS sujets Amazon, vous n'avez pas besoin de configurer de IAM politiques ou d'autorisations supplémentaires si le SNS sujet Amazon est créé à l'aide du même compte que le CodeCommit référentiel. Vous pouvez créer le CodeCommit déclencheur dès que vous avez créé le SNS sujet Amazon et que vous vous y êtes abonné.

    • Pour plus d'informations sur la création de rubriques dans AmazonSNS, consultez la SNSdocumentation Amazon.

    • Pour plus d'informations sur l'utilisation SNS d'Amazon pour envoyer des messages aux SQS files d'attente Amazon, consultez la section Envoyer des messages aux SQS files d'attente Amazon dans le manuel Amazon SNS Developer Guide.

    • Pour plus d'informations sur l'utilisation d'Amazon SNS pour appeler une fonction Lambda, consultez Invoking Lambda Functions dans le manuel Amazon Developer Guide. SNS

  • Si vous souhaitez configurer votre déclencheur pour utiliser un SNS sujet Amazon dans un autre AWS compte, vous devez d'abord configurer ce sujet avec une politique autorisant CodeCommit la publication sur ce sujet. Pour de plus amples informations, veuillez consulter Exemple 1 : créer une politique qui autorise l'accès entre comptes à une rubrique Amazon SNS.

  • Vous pouvez configurer les fonctions Lambda en créant le déclencheur dans la console Lambda dans le cadre de la fonction. Il s'agit de la méthode la plus simple, car les déclencheurs créés dans la console Lambda incluent automatiquement les autorisations requises CodeCommit pour appeler la fonction Lambda. Si vous créez le déclencheur dans CodeCommit, vous devez inclure une politique permettant CodeCommit d'invoquer la fonction. Pour plus d’informations, consultez Création d'un déclencheur pour une fonction Lambda existante et Exemple 3 : créer une politique d' AWS Lambda intégration avec un CodeCommit déclencheur.