Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Det lokale udviklingsmiljø er opsat med docker-compose.

For at kunne køre de compose filer, der bliver beskrevet nedenfor kræves et docker netværk kaldet nap_net. Hvis dette ikke allerede er lavet kør `docker network create nap_net`.

Der udstilles ingen porte på docker-hosten, og alt trafik routes således igennem en lokal reverse proxy https://svn.nspop.dk/svn/components/nap/nap-compose/ på localhost:8080, som skal køres parallelt på samme netværk./ som er på nap_net og eksponere en port 8080 på localhost. Således bliver nap-ref-web tilgængelig på http://localhost:8080/nap/reference/web/.

Funktionaliteten af Nap-ref-web illustreres bedst, når applikation er indlejret i et værst system så som, Nap-Java-host Platformsservices (NAP) - Leverancebeskrivelse

Nap-ref-web

Udviklingsmiljø

Installer dependencies med `npm i` install` i rodfolderen.

Under compose/-folderen findes forskellige compose-filer til udvikling, test og release.

...

Hvis dependencies ændres skal containeren bygges igen, ellers er det fremover nok bare at køre `docker-compose up` når services skal startes.

Dette compose/develop setup Developper setuppet volume mapper ./src folderen, hvilket betyder ændringer i kildekoden bliver compilet og deployet med det samme - hot reload.

Applikationen kan nu nåes internt i docker på netværket nap_net på http://naprefweb:8080 (såfremt yderlige porte ikke eksponeres) og på http://localhost:8080/nap/reference/web/, hvis nap-compose reverse proxy, står foran som nævnt ovenfor. 


Jenkins bygget bygger compiler koden og deploye det i snapshot versioner af NSPs wildfly container. Dette byg kan testes ved at køre at `docker-compose up` i compose/test. 

Applikationen kan nu nåes internt i docker på netværket nap_net på http://naprefweb:8080 (såfremt yderlige porte ikke eksponeres) og på http://localhost:8080/nap/reference/web/.Apllikationen kan nåes på samme url som ovenfor. 


compose/release bruges til release

CI

konfigurationen bruges udelukkende i produktions øjemed.

Test og Coverage

...

For at køre unit-tests med Karma kør `npm run test`. Det kører alle unit tests i en headless chromium browser.

Istanbul generer en coverage rapport kommer i /coverage.

CI

Jenkinsfilen beskriver en jenkins pipeline med install, test og build, der køres i NSPs node-chrome image, for at kunne afvikle test i en headless chromium browser.

Nap-ref-facade

Udviklingsmiljø

Test og Coverage

JUnit anvendes til implementering af unit tests. Der er kontinuert gennemført unit tests på alle komponenter i projektet.
Unit tests kan afvikles ved at køre:
mvn test

Ci


og nap-ref-facade på http://localhost:8080/nap/reference/web/services/main.