Skip to content

navikt/sokos-oppdrag

Repository files navigation

sokos-oppdrag

Innholdsoversikt


1. Funksjonelle Krav

Applikasjon er en proxy mellom OppdragZ og Utbetalingsportalen (intern arbeidsflate).

2. Utviklingsmiljø

Forutsetninger

  • Java 21
  • Gradle 8
  • Kotest plugin for å kjøre tester
  • Docker
    • for å starte opp en Redis server lokalt
    • for å kjøre testcontainers

Bygge prosjekt

./gradlew clean build shadowJar

Lokal utvikling

Kjør ./setupLocalEnvironment.sh for å sette opp prosjektet lokalt.

Kjør docker-compose up -d for å starte opp en Redis server lokalt.

Applikasjonen trenger en db2 lisens fil for å koble til DB2 lokalt. Kontakt en utvikler fra Team MOBY for å få denne filen.

3. Programvarearkitektur

TODO

4. Deployment

Distribusjon av tjenesten er gjort med bruk av Github Actions. sokos-oppdrag CI / CD

Push/merge til main branch direkte er ikke mulig. Det må opprettes PR og godkjennes før merge til main branch. Når PR er merged til main branch vil Github Actions bygge og deploye til dev-fss og prod-fss. Har også mulighet for å deploye manuelt til testmiljø ved å deploye PR.

5. Autentisering

Applikasjonen bruker AzureAD autentisering. Applikasjonen brukes av Utbetalingsportalen og derfor brukes det OBO-token som må genereres for å teste mot dev-miljøet.

6. Drift og støtte

Logging

https://logs.adeo.no.

Feilmeldinger og infomeldinger som ikke innheholder sensitive data logges til data view Applikasjonslogger.
Sensetive meldinger logges til data view Securelogs sikker-utvikling/logging).

Kubectl

For dev-gcp:

kubectl config use-context dev-gcp
kubectl get pods -n okonomi | grep sokos-oppdrag
kubectl logs -f sokos-oppdrag-<POD-ID> --namespace okonomi -c sokos-oppdrag

For prod-gcp:

kubectl config use-context prod-gcp
kubectl get pods -n okonomi | grep sokos-oppdrag
kubectl logs -f sokos-oppdrag-<POD-ID> --namespace okonomi -c sokos-oppdrag

Alarmer

Vi bruker nais-alerts for å sette opp alarmer. Disse finner man konfigurert i .nais/alerts-dev.yaml filen og .nais/alerts-prod.yaml Alarmene blir publisert i Slack kanalen #team-mob-alerts-dev og #team-mob-alerts-prod.

Grafana


7. Swagger

Integration:

Oppdragsinfo:

Attestasjon:

8. Henvendelser

Spørsmål knyttet til koden eller prosjektet kan stilles som issues her på Github. Interne henvendelser kan sendes via Slack i kanalen #po-utbetaling