Skip to content

Commit

Permalink
Merge branch 'main' into dev/svar-kafka-key
Browse files Browse the repository at this point in the history
  • Loading branch information
bjerga committed Dec 10, 2024
2 parents fb2d768 + e7c3fd3 commit 76bf389
Show file tree
Hide file tree
Showing 115 changed files with 571 additions and 1,032 deletions.
12 changes: 8 additions & 4 deletions .github/workflows/prod.yml
Original file line number Diff line number Diff line change
Expand Up @@ -20,8 +20,10 @@ jobs:
is_deploy_matrix_empty: ${{ steps.set_matrix.outputs.is_deploy_matrix_empty }}
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 2

# We fetch tags here because 'fetch-tags'-option on checkout-action doesn't work on release
- name: Fetch tags
run: git fetch --depth=1 --tags --quiet

- name: Cache gradle wrapper
uses: actions/cache@v4
Expand All @@ -45,14 +47,16 @@ jobs:
- name: Determine changes files
run: |
PREVIOUS_TAG=$(git tag --sort version:refname | tail -n 2 | head -n 1)
# Create a comma-separated list of changed files for use in build.gradle.kts
CHANGED_FILES=$(git diff-tree --no-commit-id --name-only -r -m $GITHUB_SHA | tr '\r\n' ',' | sed -e 's/,$//' | tr -d '"')
CHANGED_FILES=$(git diff-tree --no-commit-id --name-only -r -m $PREVIOUS_TAG $GITHUB_REF | tr '\r\n' ',' | sed -e 's/,$//' | tr -d '"')
echo Files changed from $PREVIOUS_TAG to $GITHUB_REF are [$CHANGED_FILES]
echo "CHANGED_FILES=$CHANGED_FILES" >> $GITHUB_ENV
- name: Determine projects to deploy
id: set_matrix
run: |
MATRIX=$(./gradlew -q buildAllMatrix --console=plain)
MATRIX=$(./gradlew -q buildMatrix --console=plain)
echo $MATRIX
echo $(./gradlew -q deployMatrixProd --console=plain)
DEPLOY_MATRIX=$(./gradlew -q deployMatrixProd --console=plain)
Expand Down
1 change: 1 addition & 0 deletions aareg/gradle.properties
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
aaregClientVersion=0.7.0
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,6 @@ import no.nav.helsearbeidsgiver.felles.rapidsrivers.KafkaKey
import no.nav.helsearbeidsgiver.felles.rapidsrivers.model.Fail
import no.nav.helsearbeidsgiver.felles.rapidsrivers.river.ObjectRiver
import no.nav.helsearbeidsgiver.felles.utils.Log
import no.nav.helsearbeidsgiver.utils.json.fromJson
import no.nav.helsearbeidsgiver.utils.json.serializer.UuidSerializer
import no.nav.helsearbeidsgiver.utils.json.toJson
import no.nav.helsearbeidsgiver.utils.log.logger
Expand Down Expand Up @@ -91,10 +90,8 @@ class HentArbeidsforholdRiver(
val fail =
Fail(
feilmelding = "Klarte ikke hente arbeidsforhold fra Aareg.",
event = eventName,
transaksjonId = transaksjonId,
forespoerselId = json[Key.FORESPOERSEL_ID]?.fromJson(UuidSerializer),
utloesendeMelding = json.toJson(),
kontekstId = transaksjonId,
utloesendeMelding = json,
)

logger.error(fail.feilmelding)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,6 @@ import io.mockk.coVerify
import io.mockk.coVerifySequence
import io.mockk.mockk
import kotlinx.serialization.json.JsonElement
import kotlinx.serialization.json.JsonNull
import no.nav.helsearbeidsgiver.aareg.AaregClient
import no.nav.helsearbeidsgiver.felles.BehovType
import no.nav.helsearbeidsgiver.felles.EventName
Expand All @@ -20,6 +19,7 @@ import no.nav.helsearbeidsgiver.felles.domene.Arbeidsforhold
import no.nav.helsearbeidsgiver.felles.json.toJson
import no.nav.helsearbeidsgiver.felles.json.toMap
import no.nav.helsearbeidsgiver.felles.rapidsrivers.model.Fail
import no.nav.helsearbeidsgiver.felles.test.mock.mockFail
import no.nav.helsearbeidsgiver.felles.test.rapidsrivers.firstMessage
import no.nav.helsearbeidsgiver.felles.test.rapidsrivers.sendJson
import no.nav.helsearbeidsgiver.inntektsmelding.aareg.HentArbeidsforholdMelding
Expand Down Expand Up @@ -80,10 +80,8 @@ class HentArbeidsforholdRiverTest :
val forventetFail =
Fail(
feilmelding = "Klarte ikke hente arbeidsforhold fra Aareg.",
event = innkommendeMelding.eventName,
transaksjonId = innkommendeMelding.transaksjonId,
forespoerselId = null,
utloesendeMelding = innkommendeMelding.toMap().toJson(),
kontekstId = innkommendeMelding.transaksjonId,
utloesendeMelding = innkommendeMelding.toMap(),
)

testRapid.sendJson(innkommendeMelding.toMap())
Expand Down Expand Up @@ -146,12 +144,5 @@ private object Mock {
Key.DATA to data.toJson(),
)

val fail =
Fail(
feilmelding = "All work and no play makes Jack a dull boy.",
event = EventName.AKTIVE_ORGNR_REQUESTED,
transaksjonId = UUID.randomUUID(),
forespoerselId = UUID.randomUUID(),
utloesendeMelding = JsonNull,
)
val fail = mockFail("All work and no play makes Jack a dull boy.", EventName.AKTIVE_ORGNR_REQUESTED)
}
Original file line number Diff line number Diff line change
Expand Up @@ -207,7 +207,7 @@ class AktiveOrgnrService(
melding: Map<Key, JsonElement>,
fail: Fail,
) {
onError(fail.transaksjonId, fail.feilmelding)
onError(fail.kontekstId, fail.feilmelding)
}

private fun onError(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,6 @@ import io.mockk.clearAllMocks
import io.mockk.verify
import kotlinx.serialization.builtins.serializer
import kotlinx.serialization.json.JsonElement
import kotlinx.serialization.json.JsonObject
import no.nav.helsearbeidsgiver.felles.BehovType
import no.nav.helsearbeidsgiver.felles.EventName
import no.nav.helsearbeidsgiver.felles.Key
Expand All @@ -23,13 +22,13 @@ import no.nav.helsearbeidsgiver.felles.json.lesOrNull
import no.nav.helsearbeidsgiver.felles.json.personMapSerializer
import no.nav.helsearbeidsgiver.felles.json.toJson
import no.nav.helsearbeidsgiver.felles.rapidsrivers.KafkaKey
import no.nav.helsearbeidsgiver.felles.rapidsrivers.model.Fail
import no.nav.helsearbeidsgiver.felles.rapidsrivers.redis.RedisPrefix
import no.nav.helsearbeidsgiver.felles.rapidsrivers.service.ServiceRiverStateful
import no.nav.helsearbeidsgiver.felles.test.json.lesBehov
import no.nav.helsearbeidsgiver.felles.test.json.lesData
import no.nav.helsearbeidsgiver.felles.test.json.plusData
import no.nav.helsearbeidsgiver.felles.test.mock.MockRedis
import no.nav.helsearbeidsgiver.felles.test.mock.mockFail
import no.nav.helsearbeidsgiver.felles.test.rapidsrivers.message
import no.nav.helsearbeidsgiver.felles.test.rapidsrivers.sendJson
import no.nav.helsearbeidsgiver.utils.json.toJson
Expand Down Expand Up @@ -172,31 +171,22 @@ class AktiveOrgnrServiceTest :
}

test("svarer med feilmelding dersom man ikke klarer å hente noe") {
val transaksjonId = UUID.randomUUID()
val feilmelding = "Kafka streiker for bedre vilkår :("
val expectedFailure = Mock.failureResult(feilmelding)
val fail =
mockFail(
feilmelding = "Kafka streiker for bedre vilkår :(",
eventName = EventName.AKTIVE_ORGNR_REQUESTED,
behovType = BehovType.ARBEIDSGIVERE,
)
val expectedFailure = Mock.failureResult(fail.feilmelding)

testRapid.sendJson(
Mock.startmelding(transaksjonId),
Mock.startmelding(fail.kontekstId),
)

testRapid.sendJson(
Fail(
feilmelding = feilmelding,
event = EventName.AKTIVE_ORGNR_REQUESTED,
transaksjonId = transaksjonId,
forespoerselId = null,
utloesendeMelding =
JsonObject(
mapOf(
Key.BEHOV.toString() to BehovType.ARBEIDSGIVERE.toJson(),
),
),
).tilMelding(),
)
testRapid.sendJson(fail.tilMelding())

verify {
mockRedis.store.skrivResultat(transaksjonId, expectedFailure)
mockRedis.store.skrivResultat(fail.kontekstId, expectedFailure)
}
}
})
Expand Down
2 changes: 2 additions & 0 deletions altinn/gradle.properties
Original file line number Diff line number Diff line change
@@ -1,2 +1,4 @@
altinnClientVersion=0.4.0
maskinportenClientVersion=0.1.9
mockwebserverVersion=5.0.0-alpha.14
nimbusJoseJwtVersion=9.47
Original file line number Diff line number Diff line change
Expand Up @@ -82,10 +82,8 @@ class AltinnRiver(
val fail =
Fail(
feilmelding = "Klarte ikke hente organisasjonsrettigheter fra Altinn.",
event = eventName,
transaksjonId = transaksjonId,
forespoerselId = null,
utloesendeMelding = json.toJson(),
kontekstId = transaksjonId,
utloesendeMelding = json,
)

logger.error(fail.feilmelding)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -79,10 +79,8 @@ class TilgangRiver(
val fail =
Fail(
feilmelding = "Klarte ikke sjekke tilgang i Altinn.",
event = eventName,
transaksjonId = transaksjonId,
forespoerselId = null,
utloesendeMelding = json.toJson(),
kontekstId = transaksjonId,
utloesendeMelding = json,
)

logger.error(fail.feilmelding)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -74,10 +74,8 @@ class AltinnRiverTest :
val forventetFail =
Fail(
feilmelding = "Klarte ikke hente organisasjonsrettigheter fra Altinn.",
event = innkommendeMelding.eventName,
transaksjonId = innkommendeMelding.transaksjonId,
forespoerselId = null,
utloesendeMelding = innkommendeJsonMap.toJson(),
kontekstId = innkommendeMelding.transaksjonId,
utloesendeMelding = innkommendeJsonMap,
)

coEvery { mockAltinnClient.hentRettighetOrganisasjoner(any()) } throws NullPointerException()
Expand Down
Original file line number Diff line number Diff line change
@@ -1,13 +1,12 @@
package no.nav.helsearbeidsgiver.inntektsmelding.altinn

import kotlinx.serialization.json.JsonElement
import kotlinx.serialization.json.JsonNull
import no.nav.helsearbeidsgiver.altinn.AltinnOrganisasjon
import no.nav.helsearbeidsgiver.felles.BehovType
import no.nav.helsearbeidsgiver.felles.EventName
import no.nav.helsearbeidsgiver.felles.Key
import no.nav.helsearbeidsgiver.felles.json.toJson
import no.nav.helsearbeidsgiver.felles.rapidsrivers.model.Fail
import no.nav.helsearbeidsgiver.felles.test.mock.mockFail
import no.nav.helsearbeidsgiver.utils.json.toJson
import no.nav.helsearbeidsgiver.utils.test.wrapper.genererGyldig
import no.nav.helsearbeidsgiver.utils.wrapper.Fnr
Expand Down Expand Up @@ -41,14 +40,7 @@ object Mock {
).toJson(),
)

val fail =
Fail(
feilmelding = "One does not simply walk into Mordor.",
event = EventName.AKTIVE_ORGNR_REQUESTED,
transaksjonId = UUID.randomUUID(),
forespoerselId = null,
utloesendeMelding = JsonNull,
)
val fail = mockFail("One does not simply walk into Mordor.", EventName.AKTIVE_ORGNR_REQUESTED)

val altinnOrganisasjoner =
setOf(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,6 @@ import io.mockk.coVerify
import io.mockk.coVerifySequence
import io.mockk.mockk
import kotlinx.serialization.json.JsonElement
import kotlinx.serialization.json.JsonNull
import no.nav.helsearbeidsgiver.altinn.AltinnClient
import no.nav.helsearbeidsgiver.felles.BehovType
import no.nav.helsearbeidsgiver.felles.EventName
Expand All @@ -21,6 +20,7 @@ import no.nav.helsearbeidsgiver.felles.domene.Tilgang
import no.nav.helsearbeidsgiver.felles.json.toJson
import no.nav.helsearbeidsgiver.felles.json.toMap
import no.nav.helsearbeidsgiver.felles.rapidsrivers.model.Fail
import no.nav.helsearbeidsgiver.felles.test.mock.mockFail
import no.nav.helsearbeidsgiver.felles.test.rapidsrivers.firstMessage
import no.nav.helsearbeidsgiver.felles.test.rapidsrivers.sendJson
import no.nav.helsearbeidsgiver.inntektsmelding.altinn.MockTilgang.toMap
Expand Down Expand Up @@ -81,10 +81,8 @@ class TilgangRiverTest :
val forventetFail =
Fail(
feilmelding = "Klarte ikke sjekke tilgang i Altinn.",
event = innkommendeMelding.eventName,
transaksjonId = innkommendeMelding.transaksjonId,
forespoerselId = null,
utloesendeMelding = innkommendeMelding.toMap().toJson(),
kontekstId = innkommendeMelding.transaksjonId,
utloesendeMelding = innkommendeMelding.toMap(),
)

testRapid.sendJson(innkommendeMelding.toMap())
Expand Down Expand Up @@ -149,12 +147,5 @@ private object MockTilgang {
Key.DATA to data.toJson(),
)

val fail =
Fail(
feilmelding = "You shall not pass!",
event = EventName.TILGANG_FORESPOERSEL_REQUESTED,
transaksjonId = UUID.randomUUID(),
forespoerselId = UUID.randomUUID(),
utloesendeMelding = JsonNull,
)
val fail = mockFail("You shall not pass!", EventName.TILGANG_FORESPOERSEL_REQUESTED)
}
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,7 @@ data class HentForespoerselResponse(
val bruttoinntekt: Double?,
val tidligereinntekter: List<InntektPerMaaned>,
val forespurtData: ForespurtData?,
val opprettetUpresisIkkeBruk: LocalDate,
val erBesvart: Boolean,
val feilReport: FeilReport? = null,
val success: JsonElement? = null,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -109,6 +109,7 @@ private fun HentForespoerselResultat.toResponse(): HentForespoerselResponse {
bruttoinntekt = inntekt?.gjennomsnitt(),
tidligereinntekter = inntekt?.maanedOversikt.orEmpty(),
forespurtData = forespoersel.forespurtData,
opprettetUpresisIkkeBruk = forespoersel.opprettetUpresisIkkeBruk,
erBesvart = forespoersel.erBesvart,
feilReport =
if (feil.isEmpty()) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -168,6 +168,7 @@ private object Mock {
forespurtData = mockForespurtData(),
erBesvart = false,
vedtaksperiodeId = UUID.randomUUID(),
opprettetUpresisIkkeBruk = 31.mars,
)

private val inntekt =
Expand Down Expand Up @@ -234,6 +235,7 @@ private object Mock {
"bruttoinntekt": ${inntekt.gjennomsnitt()},
"tidligereinntekter": [${inntekt.maanedOversikt.joinToString(transform = InntektPerMaaned::hardcodedJson)}],
"forespurtData": ${forespoersel.forespurtData.hardcodedJson()},
"opprettetUpresisIkkeBruk": "${forespoersel.opprettetUpresisIkkeBruk}",
"erBesvart": ${forespoersel.erBesvart},
"success": {
"navn": "Ola Normann",
Expand All @@ -248,6 +250,7 @@ private object Mock {
"bruttoinntekt": ${inntekt.gjennomsnitt()},
"tidligereinntekter": [${inntekt.maanedOversikt.joinToString(transform = InntektPerMaaned::hardcodedJson)}],
"forespurtData": ${forespoersel.forespurtData.hardcodedJson()},
"opprettetUpresisIkkeBruk": "${forespoersel.opprettetUpresisIkkeBruk}",
"erBesvart": ${forespoersel.erBesvart}
}
}
Expand All @@ -268,6 +271,7 @@ private object Mock {
"bruttoinntekt": ${inntekt.gjennomsnitt()},
"tidligereinntekter": [${inntekt.maanedOversikt.joinToString(transform = InntektPerMaaned::hardcodedJson)}],
"forespurtData": ${mockForespurtDataMedForrigeInntekt().hardcodedJson()},
"opprettetUpresisIkkeBruk": "${forespoersel.opprettetUpresisIkkeBruk}",
"erBesvart": ${forespoersel.erBesvart},
"success": {
"navn": "Ola Normann",
Expand All @@ -282,6 +286,7 @@ private object Mock {
"bruttoinntekt": ${inntekt.gjennomsnitt()},
"tidligereinntekter": [${inntekt.maanedOversikt.joinToString(transform = InntektPerMaaned::hardcodedJson)}],
"forespurtData": ${mockForespurtDataMedForrigeInntekt().hardcodedJson()},
"opprettetUpresisIkkeBruk": "${forespoersel.opprettetUpresisIkkeBruk}",
"erBesvart": ${forespoersel.erBesvart}
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,6 @@ import io.kotest.matchers.shouldNotBe
import io.mockk.clearAllMocks
import kotlinx.serialization.builtins.serializer
import kotlinx.serialization.json.JsonElement
import kotlinx.serialization.json.JsonObject
import no.nav.helsearbeidsgiver.domene.inntektsmelding.v1.Inntektsmelding
import no.nav.helsearbeidsgiver.domene.inntektsmelding.v1.skjema.SkjemaInntektsmelding
import no.nav.helsearbeidsgiver.felles.BehovType
Expand All @@ -20,12 +19,12 @@ import no.nav.helsearbeidsgiver.felles.json.lesOrNull
import no.nav.helsearbeidsgiver.felles.json.orgMapSerializer
import no.nav.helsearbeidsgiver.felles.json.personMapSerializer
import no.nav.helsearbeidsgiver.felles.json.toJson
import no.nav.helsearbeidsgiver.felles.rapidsrivers.model.Fail
import no.nav.helsearbeidsgiver.felles.rapidsrivers.service.ServiceRiverStateless
import no.nav.helsearbeidsgiver.felles.test.json.lesBehov
import no.nav.helsearbeidsgiver.felles.test.json.lesData
import no.nav.helsearbeidsgiver.felles.test.json.lesEventName
import no.nav.helsearbeidsgiver.felles.test.json.plusData
import no.nav.helsearbeidsgiver.felles.test.mock.mockFail
import no.nav.helsearbeidsgiver.felles.test.mock.mockForespoersel
import no.nav.helsearbeidsgiver.felles.test.mock.mockInntektsmeldingV1
import no.nav.helsearbeidsgiver.felles.test.mock.mockSkjemaInntektsmelding
Expand Down Expand Up @@ -131,22 +130,14 @@ class BerikInntektsmeldingServiceTest :
}

test("skal ved feil ikke foreta seg noe (FeilLytter skal plukke opp og rekjøre meldingen som utløste feilen)") {

val transaksjonId = UUID.randomUUID()
testRapid.sendJson(
Fail(
val fail =
mockFail(
feilmelding = "Detta gikk jo ikke så bra.",
event = EventName.INNTEKTSMELDING_SKJEMA_LAGRET,
transaksjonId = transaksjonId,
forespoerselId = Mock.skjema.forespoerselId,
utloesendeMelding =
JsonObject(
mapOf(
Key.BEHOV.toString() to BehovType.HENT_TRENGER_IM.toJson(),
),
),
).tilMelding(),
)
eventName = EventName.INNTEKTSMELDING_SKJEMA_LAGRET,
behovType = BehovType.HENT_TRENGER_IM,
)

testRapid.sendJson(fail.tilMelding())

testRapid.inspektør.size shouldBeExactly 0
}
Expand Down
1 change: 1 addition & 0 deletions bro-spinn/gradle.properties
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
spinnInntektsmeldingKontraktVersion=2023.10.13-04-47-c372d
Loading

0 comments on commit 76bf389

Please sign in to comment.