aws codebuild tutorial
AWS CodeBuild DevOps Tool:
bästa webbplatser att titta på anime dubbad
I Del 1 av AWS DevOps-verktygen , vi såg hur CodeCommit-tjänst användes för att lagra källkoden i en säker onlineversionskontrolltjänst som är en förutsättning för alla DevOps-implementeringar.
I Del 2 av serien , lär vi oss mer om hur koden från CodeCommit-förvaret kan sammanställas i molnet med hjälp av CodeBuild-tjänsten och ANT- eller Maven-byggverktyget.
Föreslagen läsning => Absolute DevOps Training Series
Viktigast är det inget behov av att tillhandahålla någon build-server. De producerade artefakterna lagras sedan i AWS S3-skopan, som är en enkel lagringstjänst för lagring och hämtning av vilken mängd data som helst på internet. Dessa två aktiviteter i båda handledningarna är en del av kontinuerlig integration.
I denna handledning kommer vi också att se hur Jenkins kan integreras med CodeBuild.
Nödvändig förutsättning:
- Konto med AWS helst en gratis nivå.
- Bra och snabb internetanslutning.
- AWS-regionen används - Asien och Stillahavsområdet (Singapore).
Notera: Om du har använt AWS-regionen (Mumbai) för CodeCommit-tjänsten stöds inte denna region i CodeBuild. Du måste använda lämplig region som stöds och därmed används Singapore-regionen här.
Vad du kommer att lära dig:
- Bygg process i CodeBuild
- Skapa byggprojekt
- Jenkins-integration med AWS CodeBuild
- Sammanfattning
- Rekommenderad läsning
Bygg process i CodeBuild
Följande är processen som följs i build när du använder tjänsten CodeBuild:
- Källkoden hämtas från CodeCommit-arkivet. Källkoden kan också lagras i GitHub eller till och med en S3-hink.
- CodeBuild-tjänsten är beroende av en fil som heter buildspec.yml som innehåller några kommandon som ska köras under byggfaserna som Install, Pre-Build, Build och Post-Build. Den här filen måste finnas i projektmappens ROT och måste kopplas till förvaret.
- Om du inte vill använda buildspec.yml för att utföra byggnaden kan maven-kommandona också användas direkt.
- Slutligen lagras de genererade artefakterna som J2EE JAR / WAR / EAR-filen i S3-hinken.
- Meddelanden med hjälp av AWS Simple Notification Service (SNS) kan också konfigureras för att skicka byggresultaten till relevanta användare via e-post.
Här kommer vi att se hur man använder CodeCommit-förvaret (se del 1) och kommandot maven för att bygga vårt projekt och lagra artefakten i S3-hinken.
Skapa byggprojekt
Logga in på AWS och starta tjänsten CodeBuild. Klicka för att skapa ett nytt byggprojekt.
Ange informationen enligt följande:
Projektnamn: AWS-HelloWorld
Källleverantör: AWS CodeCommit
Förvar: AWS-HelloWorld
Operativ system: Ubuntu
Körning: Java
Runtime-version: openjdk-8
Byggspecifikation: Infoga byggkommandon
Bygg kommandon: mvn ren installation
Utdata filer: Target / AWS-HelloWorld-1.0.0.war (Detta är i ett format av Artifact ID-version hämtad från POM-filen).
Artefakter: Var man kan lägga artefakterna från detta byggprojekt.
Typ: Amazon S3
Namn: HWJavaWebTarget (Detta kommer att vara mappen i skopan).
Skopnamn: hwcodebuildbucket (Skopan måste skapas initialt innan du kör build och måste vara i gemener enligt konventioner).
Följande tre skärmdumpar är från en enda form för att konfigurera byggprojektet:
hur man fixar standardgateway är inte tillgängligt
Klick Fortsätt och sedan Spara. Byggnaden kan nu utlösas genom att klicka på Börja bygga knapp.
Klicka igen på Börja bygga för att se framstegen i utförandet.
Bygget är nu framgångsrikt och artefakterna laddas upp till S3-skopan.
bästa gratis pc-rengöringsprogramvara för Windows 10
Utsikt över S3-skopan
WAR-filen kan nu användas för distribution till lämpliga applikationsservrar.
Jenkins-integration med AWS CodeBuild
Som vi såg i handledning nr 1 i denna serie om hur Jenkins konfigurerades med CodeCommit-arkivet för att möjliggöra kontinuerlig integrationsaktivitet. När versionskontrollförvaret är konfigurerat kan du nu utlösa en build genom att integrera CodeBuild med samma Jenkins-byggjobb.
AWS CodeBuild-tillägget till Jenkins måste installeras för integration. Du kan ladda ner och installera det från här .
Använd Jenkins => Hantera plugins för att installera plugin.
Välj AWS CodeBuild som byggmiljö och välj lämpligt CodeBuild-projekt konfigurerat i AWS enligt nedan. IAM-användarens åtkomstnycklar och hemliga nycklar måste också anges som en del av konfigurationen.
Den viktigaste punkten som måste komma ihåg här är att byggnaden inte har utlösts i lokala miljöer utan görs på molnet. Så det finns inget behov av att tillhandahålla några byggservrar.
Sammanfattning
Genom denna handledning lärde vi oss hur CodeCommit-förvaret kan användas för att dra koden och utföra en Maven-byggnad med hjälp av tjänsten CodeBuild.
Byggnaden kan också utlösas av Jenkins. Den genererade artefakten, som i första hand är en WAR-fil, lagras sedan i AWS S3-skopan.
I vår kommande handledning kommer vi att se hur WAR-filen från S3-skopan kan användas för att distribuera Tomcat-applikationsservern med hjälp av AWS CodeDeploy-tjänsten.
PREV-handledning | NÄSTA självstudie
Rekommenderad läsning
- Fördjupade förklaringar om förmörkelser för nybörjare
- Användning av Maven Build Automation Tool och Maven Project Setup för Selen - Selen Tutorial # 24
- SVN-handledning: Källkodshantering med subversion
- Tortoise SVN Tutorial: Revisions In Code Repository
- De bästa AWS DevOps-verktygen för molnbyggnad och distribution
- AWS Elastic Beanstalk Tutorial för distribution av .NET-webbapplikation
- AWS CodeCommit Tutorial för DevOps Implementation in Cloud
- Bygg en enskild sidapplikation med AngularJS (Handledning med exempel)