Skip to content

Microservice for integrasjon mellom BISYS og JOARK (Brev og Arkiv)

License

Notifications You must be signed in to change notification settings

navikt/bidrag-dokument

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

bidrag-dokument

release bidrag-dokument

Microservice for integrasjon mellom BISYS og JOARK, bruk av bidrag-dokument-journalpost og bidrag-dokument-arkiv.

hensikt

bidrag-dokument vil tilby et REST grensesnitt som brukes av BISYS for å bruke tjenester tilbudt av JOARK men som må tilpasses BISYS sin domenemodell. Denne tjenesten kaller andre mikrotjenester og blir kontrollert av bidrag-dokument-ui. Andre tjenester som blir "rutet" via denne:

  • bidrag-dokument-arkiv
  • bidrag-dokument-journalpost

bygg og kjør applikasjon

Dette er en spring-boot applikasjon og kan kjøres som ren java applikasjon, ved å bruke maven eller ved å bygge et docker-image og kjøre dette

Se avsnittet Sikkerhet for kjøring med sikkerhet lokalt.

java og maven
  • krever installasjon av java og maven

mvn clean install
deretter
mvn spring-boot:run
eller
cd target
java -jar bidrag-dokument-<versjon>.jar

docker og maven
  • krever installasjon av java, maven og docker
  • docker image er det som blir kjørt som nais applikasjon

mvn clean install
deretter
docker build -t bidrag-dokument .
docker run -p 8080:8080 bidrag-dokument

Etter applikasjon er startet kan den nåes med browser på http://localhost:8080/bidrag-dokument/swagger-ui.html

Profiler

Applikasjonen er satt opp med følgende profiler:

nais-profil

Formål: Kjøring i produksjon og dev-cluster.

test-profil

Formål: Enhetstester generelt, og for lokal kjøring.

secure-test-profil

Formål: Brukes av JournalpostControllerTest for å skyte inn test-token i TestRestTemplate.

Sikkerhet

Tjenestens endepunkter er sikret med navikt token-validation-spring fra token-support. Det betyr at gyldig OIDC-id-token må være inkludert som Bearer-token i Authorization header for alle spørringer mot disse endepunktene.

For kjøring lokalt benyttes token-validation-test-support som blant annet sørger for at det genereres id-tokens til test formål. For å redusere risikoen for at testgeneratoren ved en feil gjøres aktiv i produksjon er token-validation-test-support-modulen kun tilgjengelig i test-scope. I tillegg er bruken av testgeneratoren kun knyttet til en egen spring-boot app-definisjon, BidragDokumentLocal (lokalisert under test) som benytter test-profil.

BidragDokumentLocal brukes i stedet for BidragDokument ved lokal kjøring.

AUD bidrag-q-localhost er lagt til for å støtte localhost redirect i preprod. Denne benyttes ved front-end-utvikling for å kunne kjøre tester med preprod-tjenester uten å måtte legge inn host-mappinger. bidrag-q-localhost-agenten er satt opp vha https://github.com/navikt/amag. Denne er ikke, og skal heller ikke være tilgjengelig i prod.

Oppskrift for kjøring med test-token i Swagger

(ved integrasjonstesting mot AM eller ABAC må token hentes fra bidrag-ui./session)

Lokal kjøring mot nais

For å kunne kjøre lokalt mot sky må du gjøre følgende

Åpne terminal på root mappen til bidrag-dokument Konfigurer kubectl til å gå mot kluster dev-fss

# Sett cluster til dev-fss
kubectx dev-fss
# Sett namespace til bidrag
kubens bidrag 

# -- Eller hvis du ikke har kubectx/kubens installert 
# (da må -n=bidrag legges til etter exec i neste kommando)
kubectl config use dev-fss

Deretter kjør følgende kommando for å importere secrets. Viktig at filen som opprettes ikke committes til git

kubectl exec --tty deployment/bidrag-dokument printenv | grep -E 'AZURE_|TOKEN_X|_URL|SCOPE|CLIENT_ID' | grep -v -e 'BIDRAG_FORSENDELSE_URL'> src/test/resources/application-lokal-nais-secrets.properties

Deretter kan tokenet brukes til å logge inn på swagger-ui http://localhost:8080/bidrag-dokument/swagger-ui/index.html og teste ut ulike api kall