Versions Compared

Key

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

...

Formålet med dette dokument er at beskrive hvordan et udviklingsmiljø, til videreudvikling af GM-CMSBFF, kan sættes op, samt hvordan koden bygges, deployes og testes.

...

Dette dokument er en del af den samlede dokumentation for GM-CMSBFF.

Dokumentets relation til de øvrige dokumenter er beskrevet i dokumentationsoversigten for GM-CMSBFF.

Læsevejledning

Læser forventes at have kendskab til ....Java, Maven og Springboot

Introduktion til GM-BFF

GM-CMS BFF Snitfladen er defineret i en ...<miljø>/gm-bff/swagger-ui/index.html

GM-CMS BFF er Java baserede komponenter, der baserer sig på Java 21 og ??? frameworketSpring Boot 3.5.5.

Design og arkitektur er beskrevet : ....GM-BFF - Design- og arkitekturbeskrivelse

Opsætning af udviklingsmiljø

I det følgende antages at koden er hentet fra git: https://git.nspop.dk/scm/bff/min-graviditet-backend-for-frontend.git

Krav til software

GM-CMS deployeres vha. ...

Derudover er der krav til de anvendte udviklingsværktøjer:

...

For at afvikle GM-BFF kræves Java og Maven, samt følgende komponenter :


PostSQL, Meilisearch og GM-CMS kan startes lokalt med kommandoen:

docker-compose -f compose/gravidmappen/docker-compose.yaml up

Bemærk, at GM-CMS ligger i private registry, hvor der ikke er offentligt adgang. Alternativt, kan GM-CMS opsættes lokalt som beskrevet her GM-CMS - Guide til anvendere

Bygge komponeten

Man skal bruge Maven til at bygge GM-CMSBFF, hvilket gøres ved at køre kommandoen, hvor revision angiver versionen

mvn package -Drevision=1.0.0


Efter byg kan WAR filer findes her:

.

/dros-war

/target/

dros.war

gm-bff-1.0.0.jar


Afvikling

Efter byg kan GM-

...

For at starte GM-CMS afvikles følgende kommando:

Udviklers workstation

Når man udvikler kan det være praktisk at foretage lokal deployment.

Dette kan gøres vha. ....:

Når GM-CMS er startet, svarer den på:

...

BFF afvikles med følgende kommando:


mvn spring-boot:run


Beskrivelse af systemdesign

Systemdesign er beskrevet i GM-CMS BFF - Design- og arkitekturbeskrivelse.

...

Kode strukturering

Kildekoden bygges vha Maven, og kildekoden er struktureret som Maven moduler. GM-CMS består af følgende moduler:er et single-module projekt. 


Snitfladen til appen er specificeret i OpenAPI og ligger i folderen:

./openapi/bff

 Snitfladen er opdelt i journal og cms.


Bruno (https://www.usebruno.com) benyttes som api client og gøre det muligt kalde en kørende instans af GM-BFF lokalt og i test.  

Beskrivelse af testsetup

Unittests

??? JUnit anvendes til implementering af unit tests . Der er kontinuert gennemført unit tests på alle komponenter i projektet.Unit tests afvikling under byg vha ??? plugin for Maven, men kan separat afvikles ved at køreog afvikles som følger:

mvn test


Hvis der derimod laves en verify, så vil der også blive genereret code coverage, hvor fremkommende rapport kan ses i testreport/target/site/jacoco-aggregate/index.html

Integrationstests

Integrationstests ligger i modulet ??? og kan afvikles med:

mvn verify -???

...

Hvis man ønsker af afvikle testen op mod en andet miljø f.eks. test1 eller test2 henvises til GM-CMS - Testvejledning.

Dokument Historik

3/4 2025Martin Henriksen/SDSEtablering af dokumentation
16/9 2025Thomas GlæsnerUdfyldt