AWS CodeBuild est un service de génération entièrement géré. Spécifiez l'emplacement de votre code source et choisissez vos paramètres de génération : cela suffit à CodeBuild pour exécuter des scripts de création qui vous permettront de compiler, tester et compresser votre code. Vous n'avez plus besoin de mettre en service et dimensionner des serveurs, ni d'installer, de configurer ou d'exploiter des logiciels.

AWS CodeBuild est désormais disponible pour tous

Essayez AWS CodeBuild gratuitement

L'offre gratuite AWS inclut 100 minutes de génération build.general1.small par mois avec AWS CodeBuild.

Voir les détails relatifs à l'offre gratuite d'AWS »

Générations et tests

AWS CodeBuild exécute vos générations dans des environnements préconfigurés qui contiennent le système d'exploitation, l'exécutable du langage de programmation et les outils de génération (par ex., Apache Maven et Gradle, npm) nécessaires à la réalisation de la tâche. Il vous suffit de spécifier l'emplacement du code source et de sélectionner les paramètres de votre génération, tels que l'environnement de génération à utiliser et les commandes de création à exécuter pendant une génération. AWS CodeBuild génère votre code et stocke les artefacts dans un compartiment Amazon S3 ou vous pouvez utiliser une commande de génération pour les charger dans un référentiel d'artefacts. Vous pouvez créer, gérer et lancer des projets de génération à l'aide d'AWS CodePipeline, d'AWS Management Console, des interfaces de ligne de commande AWS ou des kits SDK.

Environnements de génération préconfigurés

AWS CodeBuild propose des environnements de génération pour Java, Python, Node.js, Ruby, Go, Android et Docker.

Vous trouverez la liste complète des environnements de génération préconfigurés ici.

Personnalisation des environnements de génération

Vous pouvez utiliser vos propres environnements de génération avec AWS CodeBuild. Vous pouvez compresser l'exécutable et les outils de votre génération dans une image Docker et les charger dans un référentiel public Docker Hub ou dans Amazon EC2 Container Registry (Amazon ECR). Lorsque vous créez un nouveau projet de génération, vous pouvez spécifier l'emplacement de votre image Docker. CodeBuild récupère alors l'image et l'utilise comme configuration pour le projet de génération.


Paramètres configurables

Définition des commandes de génération
Vous pouvez définir les commandes spécifiques que vous souhaitez qu'AWS CodeBuild exécute, telles que l'installation de packages d'outils de création, l'exécution de tests unitaires et la compression de votre code. La spécification de la génération est un fichier YAML qui vous permet de choisir les commandes à exécuter lors de chaque phase de la génération ainsi que d'autres paramètres. CodeBuild vous permet de rapidement faire vos premiers pas grâce à des fichiers d'exemples de spécification de génération pour des scénarios courants, tels que les générations utilisant Apache Maven, Gradle ou npm.

Les fichiers d'exemples de spécification de génération sont disponibles sur cette page.

Sélection du type de calcul
Vous pouvez sélectionner le type de calcul qui convient le mieux à vos besoins en matière de développement. Vous pouvez choisir parmi trois niveaux de capacité de calcul qui varient en fonction de la quantité de ressources de CPU et de mémoire. Cela vous permet de choisir davantage de ressources de CPU, de mémoire et de calcul si vous souhaitez que vos générations soient effectuées plus rapidement ou si leur exécution nécessite un niveau minimum de CPU et de mémoire.

Choix d'intégrations de source
Vous pouvez lancer des générations de plusieurs façons avec AWS CodeBuild. Par exemple, vous pouvez lancer des générations dans CodeBuild après vous être connecté à AWS CodeCommit, GitHub ou Amazon S3. Vous pouvez également connecter CodeBuild et votre référentiel source à AWS CodePipeline qui lance automatiquement une génération chaque fois que vous validez un changement.


Flux d'intégration et de diffusion continues

Le modèle de calcul à la demande et de paiement à l'utilisation d'AWS CodeBuild permet de générer et d'intégrer du code plus souvent, ce qui facilite la détection et la correction précoces des bugs faciles à corriger lors du processus de développement. Vous pouvez intégrer CodeBuild à votre flux d'intégration continue (CI) et de diffusion continue (CD) existant à l'aide de ses intégrations de source, des commandes de génération ou de l'intégration Jenkins. CodeBuild fait également partie d'une famille de services AWS Code qui vous aide à mettre en pratique l'intégration continue (CI) et la diffusion continue (CD). Vous pouvez connecter CodeBuild à AWS CodePipeline, qui automatise la création et les tests des codes dans CodeBuild chaque fois que vous validez un changement de référentiel source. Vous pouvez créer ce flux CI à l'aide de l'assistant AWS CodePipeline pour connecter votre référentiel source et sélectionner CodeBuild en tant que fournisseur de génération.

Vous pouvez facilement étendre votre flux d'intégration continue vers la diffusion continue avec CodePipeline en intégrant des outils tiers de test de charge ou d'interface utilisateur (par ex., BlazeMeter et Ghost Inspector) qui se lancent une fois que CodeBuild a terminé la génération. Vous pouvez ensuite procéder à un déploiement sur vos instances ou serveurs sur site à l'aide des services intégrés à AWS CodePipeline tels qu'AWS CodeDeploy et AWS Elastic Beanstalk.

AWS CodePipeline et AWS CodeBuild
AWS CodePipeline et AWS CodeBuild

Capture d'écran d'AWS CodePipeline. Ce pipeline extrait le code source d'AWS CodeCommit, génère le code dans AWS CodeBuild et le déploie avec AWS CodeDeploy.

Utilisation d'AWS CodeBuild avec AWS CodePipeline
(Cliquez pour agrandir)


Sécurité et autorisations

Vos artefacts de génération sont chiffrés à l'aide de clés propres à chaque client, gérées par AWS Key Management Service (KMS). AWS CodeBuild est intégré à AWS Identity and Access Management. Vous pouvez donc définir des contrôles précis concernant l'accès des utilisateurs et ressources AWS à vos générations.


Surveillance

Vous pouvez utiliser AWS Management Console, l'interface de ligne de commande AWS, les kits SDK et les API pour afficher des informations détaillées sur les générations. AWS CodeBuild affiche des informations telles que les heures de début et de fin de la génération, son état, l'ID de validation et la branche, etc. CodeBuild diffuse également les journaux de génération sur Amazon CloudWatch Logs.

AWS CodeBuild
AWS CodeBuild

(Cliquez pour agrandir)