À utiliser AWS CodeBuild avec Jenkins - 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.

À utiliser AWS CodeBuild avec Jenkins

Vous pouvez utiliser le plugin Jenkins pour l'intégrer AWS CodeBuild à vos CodeBuild tâches de génération Jenkins. Au lieu d'envoyer vos tâches de génération aux nœuds de génération de Jenkins, vous utilisez le plugin pour envoyer vos tâches de génération à CodeBuild. Vous n'avez ainsi plus besoin d'allouer, de configurer et de gérer des nœuds de génération Jenkins.

Configurer Jenkins

Pour plus d'informations sur la configuration de Jenkins avec le AWS CodeBuild plugin et pour télécharger le code source du plugin, consultez https://github.com/awslabs/aws-codebuild-jenkins-plugin.

Installer le plug-in

Si Jenkins est déjà configuré et que vous souhaitez uniquement installer le plug-in AWS CodeBuild , accédez à votre instance Jenkins, puis dans le gestionnaire de plug-in, recherchez CodeBuild Plugin for Jenkins.

Utiliser le plugin

À utiliser AWS CodeBuild avec des sources extérieures à VPC
  1. Créez un projet dans la CodeBuild console. Pour de plus amples informations, veuillez consulter Création d'un projet de génération (console).

    • Choisissez la AWS région dans laquelle vous souhaitez exécuter le build.

    • (Facultatif) Définissez la VPC configuration Amazon pour permettre au conteneur de CodeBuild build d'accéder aux ressources de votreVPC.

    • Notez le nom de votre projet. Vous en aurez besoin à l'étape 3.

    • (Facultatif) Si votre référentiel source n'est pas pris en charge de manière native par CodeBuild, vous pouvez définir Amazon S3 comme type de source d'entrée pour votre projet.

  2. Dans leIAMconsole, créez un utilisateur à utiliser par le plugin Jenkins.

    • Lorsque vous créez des informations d'identification pour l'utilisateur, choisissez Programmatic Access (Accès par programmation).

    • Créez une stratégie similaire à ce qui suit, puis attachez la stratégie à votre utilisateur.

      { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Resource": ["arn:aws:logs:{{region}}:{{awsAccountId}}:log-group:/aws/codebuild/{{projectName}}:*"], "Action": ["logs:GetLogEvents"] }, { "Effect": "Allow", "Resource": ["arn:aws:s3:::{{inputBucket}}"], "Action": ["s3:GetBucketVersioning"] }, { "Effect": "Allow", "Resource": ["arn:aws:s3:::{{inputBucket}}/{{inputObject}}"], "Action": ["s3:PutObject"] }, { "Effect": "Allow", "Resource": ["arn:aws:s3:::{{outputBucket}}/*"], "Action": ["s3:GetObject"] }, { "Effect": "Allow", "Resource": ["arn:aws:codebuild:{{region}}:{{awsAccountId}}:project/{{projectName}}"], "Action": ["codebuild:StartBuild", "codebuild:BatchGetBuilds", "codebuild:BatchGetProjects"] } ] }
  3. Créez un projet freestyle dans Jenkins.

    • Sur la page Configurer, choisissez Ajouter une étape de génération, puis sélectionnez Exécuter la construction sur CodeBuild.

    • Configurez votre étape de génération.

      • Fournissez des valeurs pour Region (Région), Credentials (Informations d'identification) et Project Name (Nom du projet).

      • Choisissez Use Project source (Utiliser la source de projet).

      • Enregistrez la configuration et exécutez une génération à partir de Jenkins.

  4. Pour Source Code Management (Gestion de code source), choisissez la façon dont vous souhaitez récupérer votre source. Vous devrez peut-être installer le GitHub plugin (ou le plugin Jenkins pour votre fournisseur de référentiel source) sur votre serveur Jenkins.

    • Sur la page Configure (Configurer), choisissez Add build step (Ajouter une étape de génération), puis choisissez Run build on AWS CodeBuild(Exécuter la génération sur &ACB;).

    • Configurez votre étape de génération.

      • Fournissez des valeurs pour Region (Région), Credentials (Informations d'identification) et Project Name (Nom du projet).

      • Choisissez Use Jenkins source (Utiliser la source Jenkins).

      • Enregistrez la configuration et exécutez une génération à partir de Jenkins.

Pour utiliser le AWS CodeBuild plugin avec le plugin Jenkins Pipeline
  • Sur la page de votre projet de pipeline Jenkins, utilisez le générateur d'extraits pour générer un script de pipeline qui s'ajoute en CodeBuild tant qu'étape à votre pipeline. Cela doit générer un script semblable à ce qui suit :

    awsCodeBuild projectName: 'project', credentialsType: 'keys', region: 'us-west-2', sourceControlType: 'jenkins'