aws codebuild tutorial
Outil AWS CodeBuild DevOps:
où diffuser l'anime gratuitement
Dans Partie 1 des outils AWS DevOps , nous avons vu comment Service CodeCommit a été utilisé pour stocker le code source dans un service de contrôle de version en ligne sécurisé, ce qui est une condition préalable à toute implémentation DevOps.
Dans Partie 2 de la série , nous en apprendrons plus sur la manière dont le code du référentiel CodeCommit peut être compilé sur le cloud à l'aide du service CodeBuild et de l'utilitaire de génération ANT ou Maven.
Suggestion de lecture => Série de formations Absolute DevOps
Plus important encore, il n'est pas nécessaire de fournir un serveur de build. Les artefacts produits sont ensuite stockés dans le compartiment AWS S3 qui est un service de stockage simple pour stocker et récupérer n'importe quelle quantité de données sur Internet. Ces 2 activités dans les deux didacticiels font partie de l'intégration continue.
Dans ce didacticiel, nous verrons également comment Jenkins peut être intégré à CodeBuild.
Prérequis:
- Compte avec AWS, de préférence un niveau gratuit.
- Connexion Internet bonne et rapide.
- Région AWS utilisée - Asie-Pacifique (Singapour).
Noter: Si vous avez utilisé la région AWS (Mumbai) pour le service CodeCommit, cette région n'est pas prise en charge dans CodeBuild. Vous devez utiliser la région appropriée prise en charge et, par conséquent, la région de Singapour est utilisée ici.
Ce que vous apprendrez:
- Processus de construction dans CodeBuild
- Créer un projet de construction
- Intégration de Jenkins avec AWS CodeBuild
- Résumé
- lecture recommandée
Processus de construction dans CodeBuild
Voici le processus qui est suivi dans la génération lors de l'utilisation du service CodeBuild:
- Le code source est extrait du référentiel CodeCommit. Le code source peut également être stocké dans le GitHub ou même dans un compartiment S3.
- Le service CodeBuild repose sur un fichier appelé buildspec.yml qui contient des commandes à exécuter pendant les phases de construction comme Installer, Pre-Build, Build et Post-Build. Ce fichier doit se trouver dans la racine du dossier du projet et doit être validé dans le référentiel.
- Si vous ne souhaitez pas utiliser le buildspec.yml pour effectuer la construction, les commandes maven peuvent également être directement utilisées.
- Enfin, les artefacts générés tels que le fichier J2EE JAR / WAR / EAR sont stockés dans le compartiment S3.
- Les notifications utilisant AWS Simple Notification Service (SNS) peuvent également être configurées pour envoyer par e-mail les résultats de la compilation aux utilisateurs concernés.
Ici, nous allons voir comment utiliser le référentiel CodeCommit (reportez-vous à la partie 1) et la commande maven pour construire notre projet et stocker l'artefact dans le compartiment S3.
Créer un projet de construction
Connectez-vous à AWS et lancez le service CodeBuild. Cliquez pour créer un nouveau projet de construction.
Entrez les détails comme suit:
Nom du projet: AWS-HelloWorld
Fournisseur source: AWS CodeCommit
Dépôt: AWS-HelloWorld
Système opérateur: Ubuntu
Durée: Java
questions et réponses d'entretien de test manuel pour les expérimentés
Version d'exécution: openjdk-8
Spécification de construction: Insérer des commandes de construction
Commandes de construction: installation propre mvn
Fichiers de sortie: Target / AWS-HelloWorld-1.0.0.war (Ceci est dans un format de Artifact ID-Version extrait du fichier POM).
Artefacts: Où placer les artefacts de ce projet de construction.
Taper: Amazon S3
Nom: HWJavaWebTarget (Ce sera le dossier dans le compartiment).
Nom du godet: hwcodebuildbucket (Le compartiment doit être créé initialement avant d'exécuter la construction et doit être en minuscules selon les conventions).
Les 3 captures d'écran suivantes proviennent d'un seul formulaire pour configurer le projet de génération:
Cliquez sur Continuez puis enregistrez. La construction peut maintenant être déclenchée en cliquant sur le bouton Démarrer la construction bouton.
Questions et réponses d'entretien informatica pour 5 ans d'expérience
Cliquez à nouveau sur le Démarrer la construction pour voir la progression de l'exécution.
La génération est maintenant terminée avec succès et les artefacts sont téléchargés dans le compartiment S3.
Vue du compartiment S3
Le fichier WAR peut désormais être utilisé pour le déploiement sur les serveurs d'applications appropriés.
Intégration de Jenkins avec AWS CodeBuild
Comme nous l'avons vu dans le didacticiel n ° 1 de cette série sur la configuration de Jenkins avec le référentiel CodeCommit pour activer l'activité d'intégration continue. Au fur et à mesure que le référentiel de contrôle de version est configuré, vous pouvez maintenant déclencher une génération en intégrant CodeBuild avec le même travail de génération Jenkins.
Le plug-in AWS CodeBuild pour Jenkins doit être installé pour l'intégration. Vous pouvez le télécharger et l'installer à partir de ici .
Utilisez Jenkins => Manage Plugins pour installer le plugin.
Sélectionnez AWS CodeBuild comme environnement de construction et sélectionnez le projet CodeBuild approprié configuré dans AWS comme indiqué ci-dessous. Les clés d'accès utilisateur et les clés secrètes IAM devront également être saisies dans le cadre de la configuration.
Le point clé dont il faut se souvenir ici est que la compilation n'a pas été déclenchée sur les environnements sur site mais se fait sur le cloud. Il n'est donc pas nécessaire de provisionner des serveurs de build.
Résumé
Grâce à ce didacticiel, nous avons appris comment le référentiel CodeCommit peut être utilisé pour extraire le code et effectuer une construction Maven à l'aide du service CodeBuild.
La construction peut également être déclenchée par Jenkins. L'artefact généré, qui est principalement un fichier WAR, est ensuite stocké dans le compartiment AWS S3.
Dans notre prochain didacticiel, nous verrons comment le fichier WAR du compartiment S3 peut être utilisé pour déployer le serveur d'applications Tomcat à l'aide du service AWS CodeDeploy.
Tutoriel PREV | Tutoriel SUIVANT
lecture recommandée
- Tutoriels Eclipse détaillés pour les débutants
- Utilisation de Maven Build Automation Tool et Maven Project Setup for Selenium - Selenium Tutorial # 24
- Tutoriel SVN: Gestion du code source à l'aide de Subversion
- Tutoriel Tortoise SVN: Révisions dans le référentiel de code
- Principaux outils AWS DevOps pour la création et le déploiement dans le cloud
- Tutoriel AWS Elastic Beanstalk pour le déploiement d'une application Web .NET
- Tutoriel AWS CodeCommit pour l'implémentation DevOps dans le cloud
- Créer une application à page unique à l'aide d'AngularJS (tutoriel avec exemple)