Introduktion

Efter introduktionen af docker koncepterne i NSP Continuous Integration & Delivery, publiceres der nu test-opstillinger af vores NSP komponenter. Ved release af en komponent udstiller NSP således den tilsvarende testopstilling for det kode, der er tagget, så det lader sig gøre at afvikle de containere der kører i NSP's miljøer lokalt.

Alle testopstillinger er selvindeholdt, og de eneste krav der således er til afvikling af disser er docker, docker-compose og en svn-klient.

Testopstillingerne findes under de enkelte komponenter i repositoriet her:


https://svn.nspop.dk/src/test/docker/components/


Eksempel

NSP's container eksempelkode (NCC) bruges som eksempel her. Kildekoden til denne findes i repositoriet her: 

https://svn.nspop.dk/src/components/ncc/

Ved release af en komponent tagges og bygges denne i NSP's CI-miljø. Efter et succesfuld test og byg af en release, pushes et docker-image til NSP's docker registry. Det er dermed samme container-image, der stilles til rådighed for testopstillingerne, som driftes i NSP miljøerne. Herefter udstilles der for komponenten en folder indeholdende konfiguration samt en docker-compose-fil, med den fornødne mapning af konfiguration til det pågældende container-image.

Man checker testopstillingen for den givne komponent, i ønsket version ud:

svn co https://svn.nspop.dk/src/test/docker/components/ncc/release-1.0.10-5227/ ncc-test-setup

For de fleste komponenter kan det være nødvendigt at have et nsp_net - docker-netværk sat op. Det anvendes af komponenterne i testopstillingerne og kan anvendes på tværs af de forskellige komponenter. Det sættes op med følgende:

docker network create nsp_net

Derefter starter man docker-compose setuppet via den docker-compose.yml-fil der findes under compose/test:

docker-compose up

Herefter starter komponenten op med de fornødne afhængigheder. Det kan kontrolleres hvilken port de forskellige containere udstiller med følgende:

docker ps

Derefter kan de enkelte komponenter tilgås på de path's osv. som udstilles - NCC komponenten udstiller noget på localhost:8080/ncc/status. For de generelle NSP-komponenter findes der dokumentationen her : https://www.nspop.dk/display/public/web/NSP+services - der er for de enkelte komponenter en anvenderguide, beskrivende de interessante endpoints for testopstillingerne.

Testopstillingen nedlægges igen med følgende:

docker-compose down



  • No labels