View a markdown version of this page

Utilisation AWS CodeBuild avec AWS CodePipeline pour tester le code et exécuter des builds - 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.

Utilisation AWS CodeBuild avec AWS CodePipeline pour tester le code et exécuter des builds

Vous pouvez automatiser votre processus de publication en utilisant AWS CodePipeline pour tester votre code et exécuter vos builds avec AWS CodeBuild.

Le tableau suivant répertorie les tâches et les méthodes disponibles pour ces tâches. L'utilisation des kits SDK AWS pour effectuer ces tâches n'entre pas dans le cadre de cette rubrique.

Sous-tâche Approches disponibles Approches décrites dans cette rubrique
Créez un pipeline de diffusion continue (CD) CodePipeline qui automatise les builds avec CodeBuild
  • CodePipeline console

  • AWS CLI

  • AWS SDK

Ajoutez l'automatisation des tests et des CodeBuild builds à un pipeline existant dans CodePipeline
  • CodePipeline console

  • AWS CLI

  • AWS SDK

Conditions préalables

  1. Répondez aux questions de Planification d'une génération.

  2. Si vous utilisez un utilisateur pour accéder CodePipeline au lieu d'un compte AWS root ou d'un utilisateur administrateur, attachez la politique gérée nommée AWSCodePipelineFullAccess à l'utilisateur (ou au groupe IAM auquel il appartient). L'utilisation d'un compte AWS root n'est pas recommandée. Cette stratégie accorde à l'utilisateur l'autorisation de créer le pipeline dans CodePipeline. Pour plus d'informations, consultez la section Joindre des politiques gérées dans le Guide de l'utilisateur.

    Note

    L'entité IAM qui associe la politique à l'utilisateur (ou au groupe IAM auquel appartient l'utilisateur) doit être autorisée dans IAM à associer des politiques. Pour plus d'informations, consultez la section Délégation des autorisations pour administrer les utilisateurs, les groupes et les informations d'identification IAM dans le Guide de l'utilisateur.

  3. Créez un rôle CodePipeline de service, si vous n'en avez pas déjà un disponible dans votre AWS compte. CodePipeline utilise ce rôle de service pour interagir avec d'autres AWS services AWS CodeBuild, notamment en votre nom. Par exemple, pour utiliser le AWS CLI pour créer un rôle CodePipeline de service, exécutez la create-role commande IAM :

    Pour Linux, macOS ou Unix :

    aws iam create-role --role-name AWS-CodePipeline-CodeBuild-Service-Role --assume-role-policy-document '{"Version": "2012-10-17","Statement":{"Effect":"Allow","Principal":{"Service":"codepipeline.amazonaws.com"},"Action":"sts:AssumeRole"}}'

    Pour Windows :

    aws iam create-role --role-name AWS-CodePipeline-CodeBuild-Service-Role --assume-role-policy-document "{\"Version\":\"2012-10-17\",\"Statement\":{\"Effect\":\"Allow\",\"Principal\":{\"Service\":\"codepipeline.amazonaws.com\"},\"Action\":\"sts:AssumeRole\"}}"
    Note

    L'entité IAM qui crée ce rôle de CodePipeline service doit être autorisée dans IAM à créer des rôles de service.

  4. Après avoir créé un rôle de CodePipeline service ou identifié un rôle existant, vous devez ajouter la politique de rôle de CodePipeline service par défaut au rôle de service comme décrit dans la section Révision de la stratégie de rôle de CodePipeline service par défaut du Guide de AWS CodePipeline l'utilisateur, si elle ne fait pas déjà partie de la stratégie du rôle.

    Note

    L'entité IAM qui ajoute cette politique de rôle de CodePipeline service doit être autorisée dans IAM à ajouter des politiques de rôle de service aux rôles de service.

  5. Créez et chargez le code source dans un type de référentiel pris en charge par CodeBuild et CodePipeline, par exemple CodeCommit, Amazon S3, Bitbucket ou GitHub. Le code source doit contenir un fichier de spécification de génération, mais vous pourrez en déclarer un lorsque vous définirez un projet de génération ultérieurement dans cette rubrique. Pour de plus amples informations, veuillez consulter Référence des spécifications de génération.

    Important

    Si vous prévoyez d'utiliser le pipeline pour déployer le code source généré, l'artefact de sortie de génération doit être compatible avec le système de déploiement que vous utilisez.