Mikrotjenester som svarer ut behov ved å hente data fra ulike registre.
Dette er for øvrig et skikkelig bra sted å skrive navnene på hver tjeneste og en one-liner om hva de er ment å gjøre. Og så kan man bruke README for hver tjeneste for å beskrive nøyere.
- Lag en mappe og sørg for at det finnes en
build.gradle.kts
der - Lag App.kt i
src/main/kotlin/no/nav/helse/sparkel/[app]
Alle gradle-modulene bygges og releases automatisk. Ved hver pakke som blir lastet opp trigges en deployment workflow for den pakken.
Navnet på appen blir prefikset med sparkel-
i nais.yml, så navnet på modulen skal være uten.
- Gjør 'Legge til en ny gradle-modul'. Mappenavnet korresponderer med appnavnet
- Lag
config/[app]/[cluster].yml
for de klustrene appen skal deployes til. - Push endringene
Finn nyeste versjon av gradle her: https://gradle.org/releases/
Kjør denne kommandoen for å oppdatere gradle-wrapper.properties
:
./gradlew wrapper --gradle-version <versjon>
Kjør samme kommando en gang til for å laste ned eventuelt oppdaterte jar- og skript-filer.
Oppdater gradle-versjonen i build.gradle.kts-filen:
val gradlewVersion = "<versjon>"
Det ble tidlig klart at sykepenge-tjenesten ville måtte hente data fra en del forskjellige tjenester utenfor teamet (og etter hvert som Produktområde Helse ble grunnlagt, uten POet). Det ble også klart at det var svært mange forskjellige måter å hente denne dataen på. Noen tjenester tilbød http-apier, noen brukte GraphQL, noen brukte ActiveMQ, osv. Vi ønsket å slippe at våre kjerneapplikasjoner skulle måtte forholde seg til alle disse forskjellige protokollene, så vi laget et sett med mikrotjenester, der hver tjeneste skulle integrere mot én ekstern tjeneste hver. Dermed fikk hver mikrotjeneste én protokoll å forholde seg til, og kjerneapplikasjonene kunne bruke samme måte å hente data på uavhengig av kilde.
Vi tenkte at en slik harmonisering av grensesnitt fungerte som et lag sparkel over en ujevn vegg, så da var fellesnavnet for disse applikasjonene selvsagt: Sparkel.
Spørsmål knyttet til koden eller prosjektet kan stilles som issues her på GitHub.
Interne henvendelser kan sendes via Slack i kanalen #team-bømlo-værsågod