Utilisez des webhooks avec AWS CodeBuild - AWS CodeBuild

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.

Utilisez des webhooks avec AWS CodeBuild

AWS CodeBuild prend en charge l'intégration de webhook avec GitHub GitHub Enterprise Server GitLab, GitLab Self Managed et Bitbucket.

Bonnes pratiques d'utilisation des webhooks avec AWS CodeBuild

Pour les projets qui utilisent des référentiels publics pour configurer des webhooks, nous recommandons les options suivantes :

ACTOR_ACCOUNT_IDFiltres de configuration

Ajoutez des ACTOR_ACCOUNT_ID filtres aux groupes de filtres Webhook de votre projet pour spécifier quels utilisateurs peuvent déclencher une génération. Chaque événement webhook CodeBuild livré à est accompagné d'informations sur l'expéditeur qui spécifient l'identifiant de l'acteur. CodeBuild filtrera les webhooks en fonction du modèle d'expression régulière fourni dans les filtres. Vous pouvez spécifier les utilisateurs spécifiques autorisés à déclencher des builds avec ce filtre. Pour plus d’informations, consultez GitHub événements webhook et Événements du webhook Bitbucket.

FILE_PATHFiltres de configuration

Ajoutez des FILE_PATH filtres aux groupes de filtres Webhook de votre projet pour inclure ou exclure les fichiers susceptibles de déclencher une génération en cas de modification. Par exemple, vous pouvez refuser les demandes de compilation visant à modifier le buildspec.yml fichier à l'aide d'un modèle d'expression régulière tel que^buildspec.yml$, avec la excludeMatchedPattern propriété. Pour plus d’informations, consultez GitHub événements webhook et Événements du webhook Bitbucket.

Limitez les autorisations associées à votre IAM rôle de build

Les builds déclenchés par un webhook utilisent le rôle IAM de service spécifié dans le projet. Nous vous recommandons de définir les autorisations du rôle de service sur l'ensemble minimal d'autorisations requis pour exécuter la génération. Par exemple, dans un scénario de test et de déploiement, créez un projet pour les tests et un autre pour le déploiement. Le projet de test accepte les versions de webhook à partir du référentiel, mais ne fournit aucune autorisation d'écriture sur vos ressources. Le projet de déploiement fournit des autorisations d'écriture à vos ressources, et le filtre Webhook est configuré pour autoriser uniquement les utilisateurs de confiance à déclencher des builds.

Utilisez une spécification de construction en ligne ou stockée sur Amazon S3

Si vous définissez votre buildspec en ligne dans le projet lui-même, ou si vous stockez le fichier buildspec dans un compartiment Amazon S3, le fichier buildspec n'est visible que par le propriétaire du projet. Cela empêche les pull requests d'apporter des modifications de code au fichier buildspec et de déclencher des builds indésirables. Pour plus d'informations, consultez ProjectSource.buildspec dans la référence. CodeBuild API