Dette dokument beskriver installation og konfiguration af prøvebestillings indlæseren.
Prøvebestillings indlæseren består af komponenten proevebestillingsindlaeser.war, der skal konfigureres og deployes på en applikationsserver.
Projektet bygges med Maven og kræver Java 8 samt en MariaDB-installation for at kunne afvikle unit-tests.
Udover normalt tilgængelige Maven dependencies, afhænger projektet også af interne artefakter. Hvis disse artefakter ikke er udgivet (released) i den påkrævede version i NSP's Nexus repository, skal man selv udtjekke og bygge dem fra NSP's Subversion i den pågældende version. Artefakternes forskellige versioner vil være tilgængelige under et Subversion-tag. Disse artefakter er:
For at bygge disse interne artefakter, henvises der til artefakternes dokumentation.
Alle filer der refereres til ligger sammen med projektets kildekode i NSP's Subversion. Referencer til stier er relative med udgangspunkt i projektets rodmappe.
For at bygge projektet og dets deployables (war-filen) uden at køre unit-tests og integrationstests, anvendes følgende Maven kommando:
mvn clean install -DskipTests
Projektets deployables ender i target-mappen under de respektive moduler.
Unit-testene i projektet kan afvikles med følgende Maven-kommando:
mvn clean test
Alternativt kan også samtidigt bygge projektet ved at anvende Maven-kommandoen:
mvn clean install
Når unittests afvikles startes en database og SFTP server op vha. TestContainers. Relevante databaseobjekter oprettes automatisk i den forbindelse.
Se testvejledningen.
Komponenten er tilpasset at kunne indgå i det aktuelt gældende CI-miljø på NSP. Det tager aktuelt udgangspunkt i version 1 af NSP's platform Docker image.
Servicen er testet mod MariaDB version 10.4, som bliver brugt på NSP platformen.
Der stilles ikke nogle særlige minimumskrav til hardware, men man skal forvente at bruge high-end hardware (både cpu, ram, netkort og diske) for at kunne opfylde de gældende svartidskrav på NSP.
Herunder beskrives servicens tilgang til database samt oprettelse af tabeller.
Prøvebestillings indlæseren kræver en enkelt database til at gemme forskellige stamdata under indlæsningen.
Servicen konfigureres med 1 datasource, som tilgår databaserne vha. root brugeren.
Prøvebestillings indlæseren kræver en anden, read-only, database til at lave opslag i Person og Sikrede registrene.
Servicen konfigureres med 1 datasource, som tilgår databaserne vha. read-only brugeren.
Datamodellen styres vha. de SQL-scripts, der findes under src/main/resources/db/migration.
Scriptene er udformet til at blive kørt med databasemigreringsværktøjet Flyway. Scriptene er designet til at kunne blive brugt i både test- og produktions-miljø.
Ved initial installation af servicen vil Flyway håndtere at køre scriptene i den korrekte rækkefølge:
Komponenten deployes vha. NSP's platform Docker image og konfigurationsfiler mountes i containeren som angivet i projektets Compose-filer.
Alle konfigurerbare properties bør gennemgås inden idriftsættelse, men standardværdierne er tiltænkt anvendelse i produktion medmindre andet er angivet.
Herunder beskrives de properties der findes i proevebestillingsindlaeser-komponentens konfigurationsfiler.
Property | Beskrivelse | Default |
---|---|---|
datasource.PBE.jndi | Angiver navnet på den datasource der er konfigureret på Wildfly'en og som anvendes til stamdata. | java:jboss/datasources/proevebestilling |
datasource.RO.jndi | Angiver navnet på den datasource der giver adgang til Person og Sikrede registret | java:jboss/datasources/readonly |
keep_backup_days | Antal dage hvor backup af leverede filer gemmes | 28 |
batch_problem_cutoff_hours | Antal timer inden et ikke-færdigbehandlet job rapporteres som en fejl | 12 |
fixed_ydernr | Fast ydernummer for gr2+ personer | 905429 |
send_ssi_alert | Skal der leveres en alarm til SSI ved fejl i modtaget batch. | true |
send_ssi_alert_protocol | Protokol for alarm | SFTP (det er den eneste mulig protokol) |
ssi_batch_camelUrl | Camel udtryk for CPR batch | *) |
ssi_skabelon_camelUrl | Camel udtryk for indlæsning af brevskabeloner | **) |
ssi_statistik_camelUrl | Camel udtryk for levering af statistik | ***) |
synlab_rekv_camelUrl | Camel udtryk for levering af rekvisitioner til Synlab | ****) |
synlab_kvit_camelUrl | Camel udtryk for indlæsning af kvittering fra Synlab | *****) |
stralfors_brev_camelUrl | Camel udtryk for levering af breve til Strålfors | ******) |
stralfors_kvit_camelUrl | Camel udtryk for indlæsning af kvittering fra Strålfors | *******) |
Camel udtryk er meget lange så defaultværdierne står her:
De angivne passwords herunder er udelukkende til illustration og de er ikke gyldige passwords |
*)
sftp:ssi@proevebestillingsftp:22/ssi/batch?password=pass&readLock=rename&antInclude=*.xlsx&delete=true&disconnect=true&stepwise=false&initialDelay=5s&delay=5s&knownHostsFile=/pack/wildfly8/modules/dk/nsi/sdm/proevebestilling/known_hosts
**)
sftp:ssi@proevebestillingsftp:22/ssi/skabelon?password=pass&readLock=rename&antInclude=*.docx&noop=true&disconnect=true&stepwise=false&initialDelay=5s&delay=5s&knownHostsFile=/pack/wildfly8/modules/dk/nsi/sdm/proevebestilling/known_hosts
***)
sftp:ssi@proevebestillingsftp:22/ssi/statistik?password=pass&tempFileName=${file:name.noext}.tmp&knownHostsFile=/pack/wildfly8/modules/dk/nsi/sdm/proevebestilling/known_hosts
****)
sftp:synlab@proevebestillingsftp:22/synlab?password=pass&tempFileName=${file:name.noext}.tmp&knownHostsFile=/pack/wildfly8/modules/dk/nsi/sdm/proevebestilling/known_hosts
*****)
sftp:synlab@proevebestillingsftp:22/synlab?password=pass&readLock=rename&antInclude=*.kvit&delete=true&disconnect=true&stepwise=false&initialDelay=5s&delay=5s&knownHostsFile=/pack/wildfly8/modules/dk/nsi/sdm/proevebestilling/known_hosts
******)
sftp:stralfors@proevebestillingsftp:22/stralfors?password=pass&tempFileName=${file:name.noext}.tmp&knownHostsFile=/pack/wildfly8/modules/dk/nsi/sdm/proevebestilling/known_hosts
*******)
sftp:stralfors@proevebestillingsftp:22/stralfors?password=pass&readLock=rename&antInclude=*.csv&delete=true&disconnect=true&stepwise=false&initialDelay=5s&delay=5s&knownHostsFile=/pack/wildfly8/modules/dk/nsi/sdm/proevebestilling/known_hosts