Page History
Navitabs | ||||
---|---|---|---|---|
|
...
FIBS udviklervejledning
Indledning
Afhængigheder
Projektstruktur
Byggevejledning
Tests
Kendte fejl
Table of Contents |
---|
Indledning
...
Nærværende dokument udgør udviklervejledningen for FIBS (Fødselsindberetnings-servicen). FIBS fungerer som webservice gateway som modtager indberetninger som følger DenGodeWebservice (DGWS) til Kirkeministeriets jordemoder-service og transformerer dem til webservice protokollen OWSA Model T som jordemoder-service benytter.
Komponenten er udviklet som en Java webapplikation baseret på Spring frameworket og understøttes på JBoss Application Server version 8 (Wildfly). Komponenten bruger Axis2 til at foretage webservice kald til jordemoder-servicen, signering af beskeder håndteres gennem Axis2 modulet Rampart.Denne udviklervejledning er gældende for FIBS version 1.1.X.
...
FIBS benytter sig af en række open source projekter. Til at styre afhængighederne og bygge projektet benyttes maven byggeværktøjet.
...
Opsætning af udviklingsmiljø
FIBS projektet ligger i Softwarebørsens nspop subversion repository og kan nås på følgende adresse:
*https://svn.softwareborsennspop.dk/svn/components/fibs/*
Projektet er struktureret på følgende måde:
- trunk/modules/fibs: Selve FIBS applikationen som består af:
- assembly.xml: Maven konfiguration til installationspakken
- changes.txt: Projektets change log
- doc/: Alt dokumentation, herunder dette dokument.
- etc/:Konfigurationsfiler samt WSDL og XSD schemaer for Kirkeministeriets jordemoder-service
- pom.xml: Maven bygge filen
- src:/Kildekoden inklusiv test-kode
...
Krav til software
FIBS deployeres vha. docker. FIBS Docker image baserer sig på NSP platformens base image, hvori der findes nødvendigt software til afvikling.
Der krav til de anvendte udviklingsværktøjer:
- Maven 3.0.3 eller højere anvendes.
- docker
- docker-compose version 3.4 eller højere
Byggevejledning
Komponenten bygges med nedenstående kommando.
Code Block |
---|
mvn package |
...
Komponenten bygges fra trunk/modules/fibs med maven på sædvanlig vis:
mvn install
Installationspakken generer med assembly goal'et:
mvn assembly:assembly -Ddescriptor=assembly.xml
...
Tests
Unit- og integrations-tests er placeret under src/test og anvender samme pakkestruktur som de klasser de tester.
Testene er udformet som Junit 4 annoterede test-cases.
Integrationtest Bemærk at de afviklede tests forudsætter at der er online adgang til TEST2 i NSIs fælles testmiljøer og til DanIDs PP miljø (til hentning af krydscertifikat). Dvs. byggemiljøets eksterne IP skal være whitelistet hos DanID.
...
Integrationstest køres ved at kommenter "@Test" ind i dk.rsd.fibs.newborns.NewbornsIntegrationTest.testWildfly.
Afvikling af FIBS
Der henvises til FIBS - Installationsvejledning.
Når man udvikler kan det være praktisk at foretage lokal deployment.
Dette kan gøres vha. docker-compose:
|
Hvis man kører FIBS lokalt med docker-compose, anvendes en leverandørspecifik bruger til CPR's demomiljø
Da der tidliger har været problemer med udløb af password op i mod CPR's demomiljø er der lavet en ændring i development-compose setup'et, således at der anvendes en mock til dette formål.
Release
FIBS releases med følgende kommando
Code Block |
---|
mvn release:prepare -Darguments="-Dfibs.host=<host> -Dfibs.port=<port>" |
Hvor <host> og <port> f.eks. er 'localhost' og '8080', hvis integrationstests skal køres mod et lokalt kørende docker-compose setup
...
Der pt. ingen kendte fejl.