1. Applikasjoner

1.1. State of the Union

1.2. Kodeverk backend

1.3. For applikasjonsforvaltere

1.3.1. Verktøy

Denne applikasjonen henter dokumentasjon om tjenestene rett fra JavaDoc, og det er antatt at den er på AsciiDoc-format. Det vil si at man bør skru av formatering av JavaDoc for å hindre at dokumentasjonen blir seende rar ut.

For å få mest ut av videreutvikling av Aktørregisteret er det anbefalt å installere noen plugins til IDE’en man jobber med:

  • Lombok - for enklere å kunne navigere kode som bruker Lombok-annotasjoner

  • AsciiDoc - for å gjøre det enklere å videreutvikle denne dokumentasjonen

1.3.2. Bygg og deploy

For å bygge applikasjonen skal det holde å kjøre følgende kommando:

mvn clean package

Vi går bare til package-fasen ettersom maven-install-plugin og maven-deploy-plugin er deaktivert. De individuelle artifaktene ikke skal lastes opp noe sted, men heller være en del av et Docker-image.

Hvis du vil deploye applikasjonen er det mer omfattende ettersom det må blant annet genereres et Docker-image. Hvis du har behov for å kjøre applikasjonen kan du starte den opp lokalt ved å kjøre LocalApplicationStarter fra IDE’en din, og supplere med følgende miljøvariabler:

  • spring.datasource.username - brukernavn til databasen

  • spring.datasource.password - passord til databasen

  • spring.datasource.url - url til databasen

  • app.username - servicebruker-navn

  • app.password - servicebruker-passord

Alternativt kan du starte den fra kommandolinjen slik:

java -jar kodeverk-app-local/target/kodeverk-app.jar --spring.datasource.username=<DBbrukernavn> --spring.datasource.password=<DBpassord> --spring.datasource.url=<miljø> --app.username=<servicebrukerUser> --app.password=<servicebrukerPW>

Om du vil kjøre smoketestene og ytelsestestene mot applikasjonen mens den kjører i et gitt miljø, så kan følgende kommando benyttes:

mvn clean verify -Psmoketest -DdataSourceUrl=<DBurl> -DdataSourceUser=<DBbruker> -DdataSourcePw=<DBpw> -Djavax.net.ssl.trustStore=<PathTilTrustStore> -Djavax.net.ssl.trustStore=<PwTilTrustStore>
mvn clean verify -Pperformancetest -Dfasit.username=<brukernavn> -Dfasit.password=<passord> -Dtest.environment=<miljø>

Hvis man skulle få SSLHandshake feil, selv med truststore, så vil det fungere å legge inn serfikatet inn i cacerts til jre som finnes på:
jdk-xxx/jre/lib/security/cacerts

Serfikatet *.nais.preprod.local får man ved å feks gå inn på kodeverk i en browser og laste ned derfra. Så kan man legge denne inn i cacerts med feks portecle.

1.3.3. Databasetabeller

1.3.4. Fremtidig milestone

  • Slett tabellen ENDRING

  • Slett tabellen ENDRING_KODE

  • Slett tabellen KODE

  • Slett tabellen KODE_PERIODE

  • Slett tabellen KODEVERK

  • Slett tabellen KODEVERK_ENDRING

  • Slett tabellen KODEVERK_GRAPHS

  • Slett tabellen KODEVERK_PERIODE

  • Slett tabellen KONSUMENT

  • Slett tabellen NODE

  • Slett tabellen NODE_FORRIGE_NODE

  • Slett tabellen NODE_NESTE_NODE

  • Slett tabellen NODELISTE

  • Slett tabellen NODELISTE_NODELISTE

  • Slett tabellen PERIODE

  • Slett tabellen TEKST

  • Slett tabellen TEKST_PERIODE

  • Slett tabellen TEKSTOBJEKT

  • Slett tabellen TEKSTOBJEKT_PERIODE

  • Slett tabellen TERM

  • Slett tabellen TERM_PERIODE

  • Slett tabellen TILGANG

  • Slett tabellen TILGANG_PERIODE

  • Undersøk om vi kan/bør bruke If-Modified-Since for å redusere svartid for konsumenter

1.3.5. Når Kodeverk_v2-tjenesten blir sanert

  • Slett kolonnen T_HIERARKINODE.NAVN

  • Fjern bruk av Joda Time til fordel for Java Time API’et

1.4. Kodeverk WEB

1.5. Lokal utvikling mot miljø

1.5.1. Lokalkjøring

For lokalkjøring må følgende environment variable settes:

spring.datasource.username={DB BRUKERNAVN} spring.datasource.password={DB PASSORD} spring.datasource.url={DB URL} app.username={SERVICEUSER BRUKERNAVN} app.password={SERVICEUSER PASSWORD}