Pipelinelabb med Concourse.ci

Nyligen återsamlades pipelinegruppen igen för att utvärdera CI-verktyget concourse.ci.

Screen Shot 2017-05-06 at 17.45.54

Pipelinegruppen är en grupp devops, utvecklare och arkitekter från olika företag med ett gemensamt intresse för pipeline-teknik. Den här gången höll vi till i C.A.Gs lokaler inne i city.

Idag kör vi oftast med jenkins och multibranch pipeline och GoCD. Idealet är att vi kan hitta en pipeline som går att köra som tjänst och, som är lika bra och visuellt presentabel som GoCD med tilläggen att pipeline-konfigurationen på ett bra sätt kan representeras i en yaml-fil i applikationens git-repo.

Vi körde gemensamt igenom en tutorial under ledning av Mikael Sennerholm från C.A.G Edge som forsade igenom de olika stegen i ett högt tempo på projektorn.

pipelinelabb-800

Det sista vi gjorde var att låta pipelinen deploya en Node.js applikation i ett Kubernetes-kluster i Google Cloud.

När vi kollar på CI-verktyg för att bygga pipelines vill vi bland annat få ut följande från en pipeline:

– Cool visualisering typ dynamisk dashboard av såväl alla pipelines som stegen i en pipeline.

– Tydlig deployment-historik, vem deployade vad vart

– SaaS = vi vill slippa drift och uppgradering av själva pipelinen

– Pipeline-konfig versionshanterad i appens eget repo = minimal setup i själva pipelinen, typ bara repo-url.
Byggsteg med docker

– Möjlighet att dela pipeline-konfig/logik mellan alla appar så vi slipper copy-paste mellan apparna

– Möjlighet att enkelt se vad som skiljer mellan version X och Y i produktion av tjänsten, dvs, inte bara källkoden, utan även eventuella testfallsrepos, helper bibliotek, docker image version den kör på m.m. så man kan se att version Y slutade fungera pga av att vi uppdaterade paket från en version till en annan. Det är en funktion i GoCD som är riktigt snygg

Vi avslutade labben med att konstatera att concourse.ci har en cool visualisering, att den delar många bra funktioner med GoCD men dess Kubernetes-plugin fungerar inte som vi tänkt oss så deployen på Kubernetes hann vi inte få till innan klockan blev för mycket.

Concourse.ci är liksom GoCD inte SaaS men supportar yaml-konfiguration i app-repot.

Den har några snygga saker som byggsteg i Docker vilket gör att man på ett naturligt vis kan versionshantera även mjukvaran som bygger ihop applikationen.

Kommer vi välja Concourse.ci till nästa pipeline vi sätter upp? Concourse.ci är kapabel och snygg, men förmodligen inte än i alla fall, GoCD äger fortfarande.

IT Consultant at CAG Edge. Cloud and Continuous Delivery specialist, software developer and architect, Node.js, Java.

Publicerad i Cloud Computing, Continuous Delivery, DevOps, DOcker, Uncategorized

Kategorier

LinkedIn Auto Publish Powered By : XYZScripts.com