Introduktion
Formål
Dette dokument beskriver hvordan man kommer i gang med at tilpasse eller videreudvikle IDSAS.
Læsevejledning
Læser forventes at have kendskab til Java softwareudvikling med anvendelse af Maven og WildFly. Derudover forventes kendskab til docker-compose.
Opsætning af udviklingsmiljø
Projektet ligger som nspop git-repository på følgende adresse: https://git.nspop.dk/projects/COM/repos/identitetsloering-af-ansatte-i-det-danske-sundhedsvaesen/browse
Det er udviklet i Java 8 og bygges med maven.
mvn package
Afvikling
Maven bygger war-filerne, som kan deployes med docker compose. Dette gøres lokalt med kommandoen:
docker-compose -f compose/development/docker-compose.yml up --build
Herefter vil de to IDSAS services være tilgængelig på hhv. http://localhost:8080/idsas og http://localhost:8090/idsas-lookup.
Derudover er der en service som driften kan bruge, til at igangsætte batchjobs til fornyelse af salt og sletning af gammelt data. Den findes på http://localhost:8090/idsas-operations.
Det er muligt at sætte en remote debugger op på port hhv. 5005, 5015 eller 5020 (operations).
Projektstruktur
For nærmeste beskrivelse af projektets struktur og opbygning, se IDSAS - Design- og Arkitekturbeskrivelse.
Database
Databasemodellen styres ved hjælp af liquibase. Det betyder, at når der skal laves ændringer til databasen, så må man ikke rette i de eksisterende skemafiler. I stedet skal der laves nye filer, der beskriver ændringerne.
Skemaændringer
Skal der tilføjes fx en ny kolonne eller en ny tabel, skal nedenstående gøres:
- Der oprettes SQL fil(er) i folderen compose/configuration/database/ddl til at foretage ændringerne.
- Der oprettes en ny fil i folderen compose/configuration/database/ddl. Filen skal navngives liquibase-changelog-x.y.z.xml hvor x, y og z er det versionsnummer du forventer at release komponenten som. Herfra refereres til de nyoprettede SQL filer.
- Filen fra punkt 1 tilføjes compose/configuration/database/liquibase-changelog-master.xml.
Testdata
Opstår der en situation, hvor der skal tilføjes yderlige testdata for at integrationstesten kan afvikles, skal nedenstående udføres.
- Der oprettes SQL fil(er) i folderen compose/configuration/database/ddl til at foretage ændringerne.
- Der oprettes en ny fil i folderen compose/configuration/database/test. Filen skal navngives liquibase-changelog-test-x.y.z.xml hvor x, y og z er det versionsnummer du forventer at release komponenten som. Herfra refereres til de nyoprettede SQL filer.
- Filen fra trin 1 tilføjes compose/configuration/database/liquibase-changelog-test.xml