aws codebuild tutorial
AWS CodeBuild DevOps alat:
najbolje besplatno skeniranje i popravak računala
U Dio 1 alata AWS DevOps , vidjeli smo kako Usluga CodeCommit je korišten za pohranu izvornog koda u sigurnu internetsku uslugu kontrole verzija, što je preduvjet za bilo kakvu implementaciju DevOpsa.
U 2. dio serije , naučit ćemo više o tome kako se kôd iz spremišta CodeCommit može kompilirati u oblaku pomoću usluge CodeBuild i uslužnog programa ANT ili Maven.
Predloženo čitanje => Absolute DevOps serija treninga
Najvažnije je da nema potrebe za pružanjem bilo kojeg poslužitelja za izgradnju. Proizvedeni se artefakti zatim pohranjuju u skupinu AWS S3, koja predstavlja jednostavnu uslugu pohrane za pohranu i preuzimanje bilo koje količine podataka na Internetu. Ove dvije aktivnosti u oba vodiča čine dio kontinuirane integracije.
U ovom uputstvu vidjet ćemo i kako se Jenkins može integrirati s CodeBuildom.
Preduvjet:
- Račun s AWS-om po mogućnosti besplatni.
- Dobra i brza internetska veza.
- AWS regija koja se koristi - Azijsko-pacifički region (Singapur).
Bilješka: Ako ste za uslugu CodeCommit koristili regiju AWS (Mumbai), tada CodeBuild ne podržava ovu regiju. Morate koristiti odgovarajuću podržanu regiju i stoga se ovdje koristi regija Singapur.
Što ćete naučiti:
- Proces izrade u CodeBuildu
- Stvori projekt gradnje
- Jenkinsova integracija s AWS CodeBuild
- Sažetak
- Preporučena literatura
Proces izrade u CodeBuildu
Slijedi postupak koji se slijedi u izradi tijekom korištenja usluge CodeBuild:
- Izvorni kod se preuzima iz spremišta CodeCommit. Izvorni kod također se može pohraniti u GitHub ili čak S3 segment.
- Usluga CodeBuild oslanja se na datoteku koja se zove buildspec.yml koji sadrži neke naredbe za pokretanje tijekom faza izrade poput Instaliranja, Pre-Build, Build i Post-Build. Ova datoteka mora biti u ROOT-u mape projekta i mora biti predana spremištu.
- Ako u slučaju da ne želite koristiti buildspec.yml za izvođenje gradnje tada se mogu i izravno koristiti naredbe maven.
- Konačno, generirani artefakti poput J2EE JAR / WAR / EAR datoteke pohranjuju se u S3 segment.
- Obavijesti pomoću AWS Simple Notification Service (SNS) također se mogu konfigurirati za slanje rezultata gradnje relevantnim korisnicima.
Ovdje ćemo vidjeti kako upotrijebiti spremište CodeCommit (pogledajte 1. dio) i naredbu maven za izgradnju našeg projekta i spremanje artefakta u S3 kantu.
Stvori projekt gradnje
Prijavite se na AWS i pokrenite uslugu CodeBuild. Kliknite za stvaranje novog projekta gradnje.
Unesite detalje kako slijedi:
Naziv projekta: AWS-HelloWorld
Davatelj izvora: AWS CodeCommit
Spremište: AWS-HelloWorld
Operacijski sustav: Ubuntu
Vrijeme izvođenja: Java
kako proslijediti nizove u javi -
Runtime verzija: openjdk-8
Specifikacija verzije: Umetni naredbe za izgradnju
Naredbe za izgradnju: mvn čista instalacija
Izlazne datoteke: Target / AWS-HelloWorld-1.0.0.war (Ovo je u formatu Artifact ID-Version preuzeta iz POM datoteke).
Artefakti: Gdje smjestiti artefakte iz ovog projekta gradnje.
Tip: Amazon S3
Ime: HWJavaWebTarget (Ovo će biti mapa u segmentu).
Naziv segmenta: hwcodebuildbucket (Segment se mora stvoriti u početku prije izvođenja gradnje i mora biti malim slovima prema konvencijama).
Sljedeće 3 snimke zaslona su iz jednog obrasca za konfiguriranje projekta gradnje:
Klik Nastavite, a zatim Spremi. Izgradnja se sada može pokrenuti klikom na Počnite graditi dugme.
koji je najbolji besplatni blokator oglasa za krom
Kliknite ponovo na Počnite graditi kako bi se vidio napredak izvršenja.
Izgradnja je sada uspješno dovršena i artefakti se prenose u S3 kantu.
Pogled na kantu S3
Datoteka WAR sada se može koristiti za postavljanje na odgovarajuće poslužitelje aplikacija.
Jenkinsova integracija s AWS CodeBuild
Kao što smo vidjeli u tutorialu br. 1 ove serije o tome kako je Jenkins konfiguriran s spremištem CodeCommit za omogućavanje aktivnosti kontinuirane integracije. Kako je spremište za kontrolu verzija konfigurirano, sada možete pokrenuti izgradnju integracijom CodeBuilda s istim Jenkinsovim zadatkom gradnje.
Za integraciju treba instalirati dodatak AWS CodeBuild za Jenkins. Možete ga preuzeti i instalirati s ovdje .
Koristite Jenkins => Upravljanje dodacima za instaliranje dodatka.
Odaberite AWS CodeBuild kao okruženje gradnje i odaberite odgovarajući projekt CodeBuild konfiguriran u AWS-u kako je prikazano dolje. IAM korisničke pristupne tipke i tajni ključevi također će trebati unijeti kao dio konfiguracije.
Ključna stvar koju ovdje treba imati na umu jest da izrada nije pokrenuta u lokalnim okruženjima, već se izvodi u oblaku. Dakle, nema potrebe za pružanjem bilo kakvih poslužitelja za izgradnju.
Sažetak
Kroz ovaj tutorial saznali smo kako se spremište CodeCommit može koristiti za izvlačenje koda i izvođenje Mavenove gradnje pomoću usluge CodeBuild.
Izgradnju može pokrenuti i Jenkins. Stvoreni artefakt, koji je prvenstveno WAR datoteka, zatim se pohranjuje u skupinu AWS S3.
U našem nadolazećem uputstvu vidjet ćemo kako se WAR datoteka iz segmenta S3 može koristiti za postavljanje poslužitelja aplikacija Tomcat pomoću usluge AWS CodeDeploy.
Preporučena literatura
- Dubinski vodiči za pomračenje za početnike
- Upotreba alata za automatizaciju gradnje Maven i postavljanje projekta Maven za selen - Vodič za selen br. 24
- SVN Vodič: Upravljanje izvornim kodom pomoću Subverzije
- Vodič za kornjače SVN: Revizije u spremištu koda
- Vrhunski AWS DevOps alati za izradu i implementaciju u oblaku
- AWS Elastic Beanstalk Vodič za postavljanje .NET web aplikacija
- AWS CodeCommit Vodič za implementaciju DevOpsa u oblaku
- Izradite aplikaciju za jednu stranicu koristeći AngularJS (Vodič s primjerom)