From 76e6a238b948fa15266df0f0b532cc0a43cc4762 Mon Sep 17 00:00:00 2001 From: Mikael Bjerga <6940327+bjerga@users.noreply.github.com> Date: Wed, 5 Feb 2025 11:49:31 +0100 Subject: [PATCH] Bruk Aiven Valkey (#829) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Bruk Aiven Redis under henting av data til preutfylling * Bygg Redis-URI selv * Bruk Aiven Redis overalt * Fjern unødvendig linje i konfig * Legg til prod-konfig * Bytt fra Redis til Valkey * Endre konfigurasjon til å bruke valkey istedenfor redis * Fiks appkonfigurasjon * Fjern midlertidig workflow trigger --------- Co-authored-by: Morten Byhring --- .github/workflows/valkey.yml | 24 +++++++++++++++++++ .../inntektsmelding/aktiveorgnrservice/App.kt | 8 ++++++- .../inntektsmelding/aktiveorgnrservice/Env.kt | 5 +++- apps/api/build.gradle.kts | 1 - .../inntektsmelding/api/App.kt | 8 ++++++- .../inntektsmelding/api/Env.kt | 9 ++++--- .../rapidsrivers/redis/RedisConnection.kt | 17 +++++++++++-- .../felles/test/mock/MockRedis.kt | 5 ++-- .../felles/test/mock/MockRedisClient.kt | 5 ++-- .../inntektsmelding/innsending/App.kt | 8 ++++++- .../inntektsmelding/innsending/Env.kt | 5 +++- .../inntektselvbestemtservice/App.kt | 8 ++++++- .../inntektselvbestemtservice/Env.kt | 5 +++- .../inntektsmelding/inntektservice/App.kt | 8 ++++++- .../inntektsmelding/inntektservice/Env.kt | 5 +++- .../integrasjonstest/utils/ContainerTest.kt | 2 +- .../integrasjonstest/utils/EndToEndTest.kt | 9 ++++++- .../selvbestemthentimservice/App.kt | 8 ++++++- .../selvbestemthentimservice/Env.kt | 5 +++- .../selvbestemtlagreimservice/App.kt | 8 ++++++- .../selvbestemtlagreimservice/Env.kt | 5 +++- .../inntektsmelding/tilgangservice/App.kt | 8 ++++++- .../inntektsmelding/tilgangservice/Env.kt | 5 +++- .../inntektsmelding/trengerservice/App.kt | 8 ++++++- .../inntektsmelding/trengerservice/Env.kt | 5 +++- config/aktiveorgnrservice/dev-gcp.yml | 6 +---- config/aktiveorgnrservice/prod-gcp.yml | 6 +---- config/api/dev-gcp.yml | 6 +---- config/api/prod-gcp.yml | 6 +---- config/innsending/dev-gcp.yml | 9 +------ config/innsending/prod-gcp.yml | 6 +---- .../inntekt-selvbestemt-service/dev-gcp.yml | 6 +---- .../inntekt-selvbestemt-service/prod-gcp.yml | 6 +---- config/inntektservice/dev-gcp.yml | 6 +---- config/inntektservice/prod-gcp.yml | 6 +---- config/nais.yml | 5 ++++ .../selvbestemt-hent-im-service/dev-gcp.yml | 6 +---- .../selvbestemt-hent-im-service/prod-gcp.yml | 6 +---- .../selvbestemt-lagre-im-service/dev-gcp.yml | 6 +---- .../selvbestemt-lagre-im-service/prod-gcp.yml | 6 +---- config/tilgangservice/dev-gcp.yml | 6 +---- config/tilgangservice/prod-gcp.yml | 6 +---- config/trengerservice/dev-gcp.yml | 6 +---- config/trengerservice/prod-gcp.yml | 6 +---- valkey/config.yml | 10 ++++++++ valkey/dev.yml | 2 ++ valkey/prod.yml | 2 ++ 47 files changed, 192 insertions(+), 122 deletions(-) create mode 100644 .github/workflows/valkey.yml create mode 100644 valkey/config.yml create mode 100644 valkey/dev.yml create mode 100644 valkey/prod.yml diff --git a/.github/workflows/valkey.yml b/.github/workflows/valkey.yml new file mode 100644 index 0000000000..bb9ff6d7d0 --- /dev/null +++ b/.github/workflows/valkey.yml @@ -0,0 +1,24 @@ +name: Deploy Valkey + +on: + push: + branches: + - main + paths: + - valkey/** + +jobs: + deploy: + runs-on: ubuntu-latest + permissions: + id-token: write + strategy: + matrix: + env: [dev, prod] + steps: + - uses: actions/checkout@v4 + - uses: nais/deploy/actions/deploy@v2 + env: + CLUSTER: ${{ matrix.env }}-gcp + RESOURCE: valkey/config.yml + VARS: valkey/${{ matrix.env }}.yml diff --git a/apps/aktiveorgnrservice/src/main/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/aktiveorgnrservice/App.kt b/apps/aktiveorgnrservice/src/main/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/aktiveorgnrservice/App.kt index 9fab78de67..98fdf32ef2 100644 --- a/apps/aktiveorgnrservice/src/main/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/aktiveorgnrservice/App.kt +++ b/apps/aktiveorgnrservice/src/main/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/aktiveorgnrservice/App.kt @@ -12,7 +12,13 @@ import no.nav.helsearbeidsgiver.utils.log.logger private val logger = "helsearbeidsgiver-im-aktiveorgnrservice".logger() fun main() { - val redisConnection = RedisConnection(Env.redisUrl) + val redisConnection = + RedisConnection( + host = Env.redisHost, + port = Env.redisPort, + username = Env.redisUsername, + password = Env.redisPassword, + ) RapidApplication .create(System.getenv()) diff --git a/apps/aktiveorgnrservice/src/main/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/aktiveorgnrservice/Env.kt b/apps/aktiveorgnrservice/src/main/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/aktiveorgnrservice/Env.kt index 3c90ac10b1..ff6647effa 100644 --- a/apps/aktiveorgnrservice/src/main/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/aktiveorgnrservice/Env.kt +++ b/apps/aktiveorgnrservice/src/main/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/aktiveorgnrservice/Env.kt @@ -3,5 +3,8 @@ package no.nav.helsearbeidsgiver.inntektsmelding.aktiveorgnrservice import no.nav.helsearbeidsgiver.felles.utils.fromEnv object Env { - val redisUrl = "REDIS_URL".fromEnv() + val redisHost = "REDIS_HOST_INNTEKTSMELDING".fromEnv() + val redisPort = "REDIS_PORT_INNTEKTSMELDING".fromEnv().toInt() + val redisUsername = "REDIS_USERNAME_INNTEKTSMELDING".fromEnv() + val redisPassword = "REDIS_PASSWORD_INNTEKTSMELDING".fromEnv() } diff --git a/apps/api/build.gradle.kts b/apps/api/build.gradle.kts index d411ba86d9..e2802e001e 100644 --- a/apps/api/build.gradle.kts +++ b/apps/api/build.gradle.kts @@ -6,7 +6,6 @@ tasks { test { environment("IDPORTEN_WELL_KNOWN_URL", "http://localhost:6666/idporten-issuer/.well-known/openid-configuration") environment("IDPORTEN_AUDIENCE", "aud-localhost") - environment("REDIS_URL", "redis://test_url:6379/0") } } diff --git a/apps/api/src/main/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/api/App.kt b/apps/api/src/main/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/api/App.kt index f50817a8e0..73db791810 100644 --- a/apps/api/src/main/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/api/App.kt +++ b/apps/api/src/main/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/api/App.kt @@ -58,7 +58,13 @@ object Routes { fun main() { val rapid = RapidApplication.create(System.getenv()) - val redisConnection = RedisConnection(Env.Redis.url) + val redisConnection = + RedisConnection( + host = Env.Redis.host, + port = Env.Redis.port, + username = Env.Redis.username, + password = Env.Redis.password, + ) embeddedServer( factory = Netty, diff --git a/apps/api/src/main/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/api/Env.kt b/apps/api/src/main/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/api/Env.kt index b176bad829..2b882c0e86 100644 --- a/apps/api/src/main/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/api/Env.kt +++ b/apps/api/src/main/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/api/Env.kt @@ -4,11 +4,14 @@ import no.nav.helsearbeidsgiver.felles.utils.fromEnv object Env { object Auth { - val discoveryUrl: String = "IDPORTEN_WELL_KNOWN_URL".fromEnv() - val acceptedAudience: List = "IDPORTEN_AUDIENCE".fromEnv().let(::listOf) + val discoveryUrl = "IDPORTEN_WELL_KNOWN_URL".fromEnv() + val acceptedAudience = "IDPORTEN_AUDIENCE".fromEnv().let(::listOf) } object Redis { - val url: String = "REDIS_URL".fromEnv() + val host = "REDIS_HOST_INNTEKTSMELDING".fromEnv() + val port = "REDIS_PORT_INNTEKTSMELDING".fromEnv().toInt() + val username = "REDIS_USERNAME_INNTEKTSMELDING".fromEnv() + val password = "REDIS_PASSWORD_INNTEKTSMELDING".fromEnv() } } diff --git a/apps/felles/src/main/kotlin/no/nav/helsearbeidsgiver/felles/rapidsrivers/redis/RedisConnection.kt b/apps/felles/src/main/kotlin/no/nav/helsearbeidsgiver/felles/rapidsrivers/redis/RedisConnection.kt index c89d684dcc..7b880f40e0 100644 --- a/apps/felles/src/main/kotlin/no/nav/helsearbeidsgiver/felles/rapidsrivers/redis/RedisConnection.kt +++ b/apps/felles/src/main/kotlin/no/nav/helsearbeidsgiver/felles/rapidsrivers/redis/RedisConnection.kt @@ -1,14 +1,27 @@ package no.nav.helsearbeidsgiver.felles.rapidsrivers.redis import io.lettuce.core.RedisClient +import io.lettuce.core.RedisURI import io.lettuce.core.api.StatefulRedisConnection import io.lettuce.core.api.sync.RedisCommands import no.nav.helsearbeidsgiver.utils.collection.mapValuesNotNull class RedisConnection( - redisUrl: String, + host: String, + port: Int, + username: String, + password: String, ) { - private val client: RedisClient = RedisClient.create(redisUrl) + private val client: RedisClient = + RedisURI + .builder() + .withSsl(true) + .withHost(host) + .withPort(port) + .withAuthentication(username, password) + .withDatabase(0) + .build() + .let(RedisClient::create) private val connection: StatefulRedisConnection = client.connect() private val syncCommands: RedisCommands = connection.sync() diff --git a/apps/felles/src/testFixtures/kotlin/no/nav/helsearbeidsgiver/felles/test/mock/MockRedis.kt b/apps/felles/src/testFixtures/kotlin/no/nav/helsearbeidsgiver/felles/test/mock/MockRedis.kt index 10cf3a5d17..14e8c00abd 100644 --- a/apps/felles/src/testFixtures/kotlin/no/nav/helsearbeidsgiver/felles/test/mock/MockRedis.kt +++ b/apps/felles/src/testFixtures/kotlin/no/nav/helsearbeidsgiver/felles/test/mock/MockRedis.kt @@ -1,6 +1,7 @@ package no.nav.helsearbeidsgiver.felles.test.mock import io.lettuce.core.RedisClient +import io.lettuce.core.RedisURI import io.lettuce.core.api.sync.RedisCommands import io.mockk.every import io.mockk.mockk @@ -16,8 +17,8 @@ class MockRedis( private val mockCommands = mockk>() private val redis = mockStatic(RedisClient::class) { - every { RedisClient.create(any()) } returns mockRedisClient(mockCommands) - RedisConnection("") + every { RedisClient.create(any()) } returns mockRedisClient(mockCommands) + RedisConnection("host", 0, "username", "password") } val store: RedisStore diff --git a/apps/felles/src/testFixtures/kotlin/no/nav/helsearbeidsgiver/felles/test/mock/MockRedisClient.kt b/apps/felles/src/testFixtures/kotlin/no/nav/helsearbeidsgiver/felles/test/mock/MockRedisClient.kt index c241227d90..76b7f5254e 100644 --- a/apps/felles/src/testFixtures/kotlin/no/nav/helsearbeidsgiver/felles/test/mock/MockRedisClient.kt +++ b/apps/felles/src/testFixtures/kotlin/no/nav/helsearbeidsgiver/felles/test/mock/MockRedisClient.kt @@ -2,6 +2,7 @@ package no.nav.helsearbeidsgiver.felles.test.mock import io.lettuce.core.KeyValue import io.lettuce.core.RedisClient +import io.lettuce.core.RedisURI import io.lettuce.core.api.StatefulRedisConnection import io.lettuce.core.api.sync.RedisCommands import io.mockk.every @@ -13,8 +14,8 @@ import no.nav.helsearbeidsgiver.utils.test.mock.mockStatic fun redisWithMockRedisClient(mockStorageInit: Map): RedisConnection { val mockCommands = mockk>().setupMock(mockStorageInit) return mockStatic(RedisClient::class) { - every { RedisClient.create(any()) } returns mockRedisClient(mockCommands) - RedisConnection("") + every { RedisClient.create(any()) } returns mockRedisClient(mockCommands) + RedisConnection("host", 0, "username", "password") } } diff --git a/apps/innsending/src/main/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/innsending/App.kt b/apps/innsending/src/main/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/innsending/App.kt index 1d4804f8fe..9cd011fe2f 100644 --- a/apps/innsending/src/main/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/innsending/App.kt +++ b/apps/innsending/src/main/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/innsending/App.kt @@ -13,7 +13,13 @@ import no.nav.helsearbeidsgiver.utils.log.logger private val logger = "helsearbeidsgiver-im-innsending".logger() fun main() { - val redisConnection = RedisConnection(Env.redisUrl) + val redisConnection = + RedisConnection( + host = Env.redisHost, + port = Env.redisPort, + username = Env.redisUsername, + password = Env.redisPassword, + ) RapidApplication .create(System.getenv()) diff --git a/apps/innsending/src/main/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/innsending/Env.kt b/apps/innsending/src/main/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/innsending/Env.kt index a2363c8ae4..e57531fa2f 100644 --- a/apps/innsending/src/main/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/innsending/Env.kt +++ b/apps/innsending/src/main/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/innsending/Env.kt @@ -3,5 +3,8 @@ package no.nav.helsearbeidsgiver.inntektsmelding.innsending import no.nav.helsearbeidsgiver.felles.utils.fromEnv object Env { - val redisUrl = "REDIS_URL".fromEnv() + val redisHost = "REDIS_HOST_INNTEKTSMELDING".fromEnv() + val redisPort = "REDIS_PORT_INNTEKTSMELDING".fromEnv().toInt() + val redisUsername = "REDIS_USERNAME_INNTEKTSMELDING".fromEnv() + val redisPassword = "REDIS_PASSWORD_INNTEKTSMELDING".fromEnv() } diff --git a/apps/inntekt-selvbestemt-service/src/main/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/inntektselvbestemtservice/App.kt b/apps/inntekt-selvbestemt-service/src/main/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/inntektselvbestemtservice/App.kt index d5a378a712..60f1bf5d5c 100644 --- a/apps/inntekt-selvbestemt-service/src/main/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/inntektselvbestemtservice/App.kt +++ b/apps/inntekt-selvbestemt-service/src/main/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/inntektselvbestemtservice/App.kt @@ -12,7 +12,13 @@ import no.nav.helsearbeidsgiver.utils.log.logger private val logger = "helsearbeidsgiver-im-inntektselvbestemtservice".logger() fun main() { - val redisConnection = RedisConnection(Env.redisUrl) + val redisConnection = + RedisConnection( + host = Env.redisHost, + port = Env.redisPort, + username = Env.redisUsername, + password = Env.redisPassword, + ) RapidApplication .create(System.getenv()) diff --git a/apps/inntekt-selvbestemt-service/src/main/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/inntektselvbestemtservice/Env.kt b/apps/inntekt-selvbestemt-service/src/main/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/inntektselvbestemtservice/Env.kt index f54eebb3e9..56ddc0efcd 100644 --- a/apps/inntekt-selvbestemt-service/src/main/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/inntektselvbestemtservice/Env.kt +++ b/apps/inntekt-selvbestemt-service/src/main/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/inntektselvbestemtservice/Env.kt @@ -3,5 +3,8 @@ package no.nav.helsearbeidsgiver.inntektsmelding.inntektselvbestemtservice import no.nav.helsearbeidsgiver.felles.utils.fromEnv object Env { - val redisUrl = "REDIS_URL".fromEnv() + val redisHost = "REDIS_HOST_INNTEKTSMELDING".fromEnv() + val redisPort = "REDIS_PORT_INNTEKTSMELDING".fromEnv().toInt() + val redisUsername = "REDIS_USERNAME_INNTEKTSMELDING".fromEnv() + val redisPassword = "REDIS_PASSWORD_INNTEKTSMELDING".fromEnv() } diff --git a/apps/inntektservice/src/main/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/inntektservice/App.kt b/apps/inntektservice/src/main/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/inntektservice/App.kt index fafbe7ec98..e9155e1c6b 100644 --- a/apps/inntektservice/src/main/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/inntektservice/App.kt +++ b/apps/inntektservice/src/main/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/inntektservice/App.kt @@ -12,7 +12,13 @@ import no.nav.helsearbeidsgiver.utils.log.logger private val logger = "helsearbeidsgiver-im-inntektservice".logger() fun main() { - val redisConnection = RedisConnection(Env.redisUrl) + val redisConnection = + RedisConnection( + host = Env.redisHost, + port = Env.redisPort, + username = Env.redisUsername, + password = Env.redisPassword, + ) RapidApplication .create(System.getenv()) diff --git a/apps/inntektservice/src/main/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/inntektservice/Env.kt b/apps/inntektservice/src/main/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/inntektservice/Env.kt index d0b7696856..7a878c0b91 100644 --- a/apps/inntektservice/src/main/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/inntektservice/Env.kt +++ b/apps/inntektservice/src/main/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/inntektservice/Env.kt @@ -3,5 +3,8 @@ package no.nav.helsearbeidsgiver.inntektsmelding.inntektservice import no.nav.helsearbeidsgiver.felles.utils.fromEnv object Env { - val redisUrl = "REDIS_URL".fromEnv() + val redisHost = "REDIS_HOST_INNTEKTSMELDING".fromEnv() + val redisPort = "REDIS_PORT_INNTEKTSMELDING".fromEnv().toInt() + val redisUsername = "REDIS_USERNAME_INNTEKTSMELDING".fromEnv() + val redisPassword = "REDIS_PASSWORD_INNTEKTSMELDING".fromEnv() } diff --git a/apps/integrasjonstest/src/test/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/integrasjonstest/utils/ContainerTest.kt b/apps/integrasjonstest/src/test/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/integrasjonstest/utils/ContainerTest.kt index fadaaa8d1d..477b06cc35 100644 --- a/apps/integrasjonstest/src/test/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/integrasjonstest/utils/ContainerTest.kt +++ b/apps/integrasjonstest/src/test/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/integrasjonstest/utils/ContainerTest.kt @@ -17,7 +17,7 @@ abstract class ContainerTest { private val topic = "helsearbeidsgiver.inntektsmelding" private val kafkaContainer = ConfluentKafkaContainer(DockerImageName.parse("confluentinc/cp-kafka:7.8.0")) - val redisContainer = RedisContainer(DockerImageName.parse("redis:7")) + val redisContainer = RedisContainer(DockerImageName.parse("redis:latest")) val postgresContainerOne = postgresContainer() val postgresContainerTwo = postgresContainer() diff --git a/apps/integrasjonstest/src/test/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/integrasjonstest/utils/EndToEndTest.kt b/apps/integrasjonstest/src/test/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/integrasjonstest/utils/EndToEndTest.kt index d5dac186dc..9ac74c3172 100644 --- a/apps/integrasjonstest/src/test/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/integrasjonstest/utils/EndToEndTest.kt +++ b/apps/integrasjonstest/src/test/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/integrasjonstest/utils/EndToEndTest.kt @@ -3,6 +3,8 @@ package no.nav.helsearbeidsgiver.inntektsmelding.integrasjonstest.utils import com.github.navikt.tbd_libs.rapids_and_rivers.JsonMessage import com.github.navikt.tbd_libs.rapids_and_rivers_api.MessageProblems import io.kotest.matchers.nulls.shouldNotBeNull +import io.lettuce.core.RedisClient +import io.lettuce.core.RedisURI import io.micrometer.core.instrument.simple.SimpleMeterRegistry import io.mockk.clearAllMocks import io.mockk.coEvery @@ -70,6 +72,7 @@ import no.nav.helsearbeidsgiver.utils.json.parseJson import no.nav.helsearbeidsgiver.utils.json.toJson import no.nav.helsearbeidsgiver.utils.test.date.august import no.nav.helsearbeidsgiver.utils.test.date.mai +import no.nav.helsearbeidsgiver.utils.test.mock.mockStatic import no.nav.helsearbeidsgiver.utils.test.wrapper.genererGyldig import no.nav.helsearbeidsgiver.utils.wrapper.Fnr import org.intellij.lang.annotations.Language @@ -156,7 +159,11 @@ abstract class EndToEndTest : ContainerTest() { return@lazy withRetries( feilmelding = "Klarte ikke koble til Redis.", ) { - RedisConnection(redisContainer.redisURI) + // Hijacker RedisClient her pga. vanskeligheter med å sette opp RedisContainer med SSL og autentisering + mockStatic(RedisClient::class) { + every { RedisClient.create(any()) } returns RedisClient.create(redisContainer.redisURI) + RedisConnection("host", 0, "username", "password") + } } } diff --git a/apps/selvbestemt-hent-im-service/src/main/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/selvbestemthentimservice/App.kt b/apps/selvbestemt-hent-im-service/src/main/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/selvbestemthentimservice/App.kt index 937f51ef48..5af258c28a 100644 --- a/apps/selvbestemt-hent-im-service/src/main/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/selvbestemthentimservice/App.kt +++ b/apps/selvbestemt-hent-im-service/src/main/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/selvbestemthentimservice/App.kt @@ -12,7 +12,13 @@ import no.nav.helsearbeidsgiver.utils.log.logger private val logger = "im-selvbestemt-hent-im-service".logger() fun main() { - val redisConnection = RedisConnection(Env.redisUrl) + val redisConnection = + RedisConnection( + host = Env.redisHost, + port = Env.redisPort, + username = Env.redisUsername, + password = Env.redisPassword, + ) RapidApplication .create(System.getenv()) diff --git a/apps/selvbestemt-hent-im-service/src/main/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/selvbestemthentimservice/Env.kt b/apps/selvbestemt-hent-im-service/src/main/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/selvbestemthentimservice/Env.kt index 9b485f42d3..3703a84489 100644 --- a/apps/selvbestemt-hent-im-service/src/main/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/selvbestemthentimservice/Env.kt +++ b/apps/selvbestemt-hent-im-service/src/main/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/selvbestemthentimservice/Env.kt @@ -3,5 +3,8 @@ package no.nav.helsearbeidsgiver.inntektsmelding.selvbestemthentimservice import no.nav.helsearbeidsgiver.felles.utils.fromEnv object Env { - val redisUrl = "REDIS_URL".fromEnv() + val redisHost = "REDIS_HOST_INNTEKTSMELDING".fromEnv() + val redisPort = "REDIS_PORT_INNTEKTSMELDING".fromEnv().toInt() + val redisUsername = "REDIS_USERNAME_INNTEKTSMELDING".fromEnv() + val redisPassword = "REDIS_PASSWORD_INNTEKTSMELDING".fromEnv() } diff --git a/apps/selvbestemt-lagre-im-service/src/main/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/selvbestemtlagreimservice/App.kt b/apps/selvbestemt-lagre-im-service/src/main/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/selvbestemtlagreimservice/App.kt index a45c6e72dc..7bf7fa10da 100644 --- a/apps/selvbestemt-lagre-im-service/src/main/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/selvbestemtlagreimservice/App.kt +++ b/apps/selvbestemt-lagre-im-service/src/main/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/selvbestemtlagreimservice/App.kt @@ -12,7 +12,13 @@ import no.nav.helsearbeidsgiver.utils.log.logger private val logger = "im-selvbestemt-lagre-im-service".logger() fun main() { - val redisConnection = RedisConnection(Env.redisUrl) + val redisConnection = + RedisConnection( + host = Env.redisHost, + port = Env.redisPort, + username = Env.redisUsername, + password = Env.redisPassword, + ) RapidApplication .create(System.getenv()) diff --git a/apps/selvbestemt-lagre-im-service/src/main/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/selvbestemtlagreimservice/Env.kt b/apps/selvbestemt-lagre-im-service/src/main/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/selvbestemtlagreimservice/Env.kt index 505f6bd071..ae00f80649 100644 --- a/apps/selvbestemt-lagre-im-service/src/main/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/selvbestemtlagreimservice/Env.kt +++ b/apps/selvbestemt-lagre-im-service/src/main/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/selvbestemtlagreimservice/Env.kt @@ -3,5 +3,8 @@ package no.nav.helsearbeidsgiver.inntektsmelding.selvbestemtlagreimservice import no.nav.helsearbeidsgiver.felles.utils.fromEnv object Env { - val redisUrl = "REDIS_URL".fromEnv() + val redisHost = "REDIS_HOST_INNTEKTSMELDING".fromEnv() + val redisPort = "REDIS_PORT_INNTEKTSMELDING".fromEnv().toInt() + val redisUsername = "REDIS_USERNAME_INNTEKTSMELDING".fromEnv() + val redisPassword = "REDIS_PASSWORD_INNTEKTSMELDING".fromEnv() } diff --git a/apps/tilgangservice/src/main/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/tilgangservice/App.kt b/apps/tilgangservice/src/main/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/tilgangservice/App.kt index ce1d3d95f1..6e158677c1 100644 --- a/apps/tilgangservice/src/main/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/tilgangservice/App.kt +++ b/apps/tilgangservice/src/main/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/tilgangservice/App.kt @@ -12,7 +12,13 @@ import no.nav.helsearbeidsgiver.utils.log.logger private val logger = "helsearbeidsgiver-im-tilgangservice".logger() fun main() { - val redisConnection = RedisConnection(Env.redisUrl) + val redisConnection = + RedisConnection( + host = Env.redisHost, + port = Env.redisPort, + username = Env.redisUsername, + password = Env.redisPassword, + ) RapidApplication .create(System.getenv()) diff --git a/apps/tilgangservice/src/main/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/tilgangservice/Env.kt b/apps/tilgangservice/src/main/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/tilgangservice/Env.kt index 9a6eaf027d..128ce08fb0 100644 --- a/apps/tilgangservice/src/main/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/tilgangservice/Env.kt +++ b/apps/tilgangservice/src/main/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/tilgangservice/Env.kt @@ -3,5 +3,8 @@ package no.nav.helsearbeidsgiver.inntektsmelding.tilgangservice import no.nav.helsearbeidsgiver.felles.utils.fromEnv object Env { - val redisUrl = "REDIS_URL".fromEnv() + val redisHost = "REDIS_HOST_INNTEKTSMELDING".fromEnv() + val redisPort = "REDIS_PORT_INNTEKTSMELDING".fromEnv().toInt() + val redisUsername = "REDIS_USERNAME_INNTEKTSMELDING".fromEnv() + val redisPassword = "REDIS_PASSWORD_INNTEKTSMELDING".fromEnv() } diff --git a/apps/trengerservice/src/main/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/trengerservice/App.kt b/apps/trengerservice/src/main/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/trengerservice/App.kt index cc77ea82ff..870ab00dd0 100644 --- a/apps/trengerservice/src/main/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/trengerservice/App.kt +++ b/apps/trengerservice/src/main/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/trengerservice/App.kt @@ -13,7 +13,13 @@ import no.nav.helsearbeidsgiver.utils.log.logger private val logger = "helsearbeidsgiver-im-hent-forespoersel-service".logger() fun main() { - val redisConnection = RedisConnection(Env.redisUrl) + val redisConnection = + RedisConnection( + host = Env.redisHost, + port = Env.redisPort, + username = Env.redisUsername, + password = Env.redisPassword, + ) RapidApplication .create(System.getenv()) diff --git a/apps/trengerservice/src/main/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/trengerservice/Env.kt b/apps/trengerservice/src/main/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/trengerservice/Env.kt index c7b790003b..c8307d1e1b 100644 --- a/apps/trengerservice/src/main/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/trengerservice/Env.kt +++ b/apps/trengerservice/src/main/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/trengerservice/Env.kt @@ -3,5 +3,8 @@ package no.nav.helsearbeidsgiver.inntektsmelding.trengerservice import no.nav.helsearbeidsgiver.felles.utils.fromEnv object Env { - val redisUrl = "REDIS_URL".fromEnv() + val redisHost = "REDIS_HOST_INNTEKTSMELDING".fromEnv() + val redisPort = "REDIS_PORT_INNTEKTSMELDING".fromEnv().toInt() + val redisUsername = "REDIS_USERNAME_INNTEKTSMELDING".fromEnv() + val redisPassword = "REDIS_PASSWORD_INNTEKTSMELDING".fromEnv() } diff --git a/config/aktiveorgnrservice/dev-gcp.yml b/config/aktiveorgnrservice/dev-gcp.yml index dc4a3a5dda..9fb51b04c1 100644 --- a/config/aktiveorgnrservice/dev-gcp.yml +++ b/config/aktiveorgnrservice/dev-gcp.yml @@ -1,6 +1,2 @@ kafkaPool: nav-dev -env: - - name: REDIS_URL - value: redis://helsearbeidsgiver-redis.helsearbeidsgiver.svc.cluster.local:6379/0 -apps: - - name: helsearbeidsgiver-redis +valkeyAccess: readwrite diff --git a/config/aktiveorgnrservice/prod-gcp.yml b/config/aktiveorgnrservice/prod-gcp.yml index 51ce466920..fa77b6f52e 100644 --- a/config/aktiveorgnrservice/prod-gcp.yml +++ b/config/aktiveorgnrservice/prod-gcp.yml @@ -1,6 +1,2 @@ kafkaPool: nav-prod -env: - - name: REDIS_URL - value: redis://helsearbeidsgiver-redis.helsearbeidsgiver.svc.cluster.local:6379/0 -apps: - - name: helsearbeidsgiver-redis +valkeyAccess: readwrite diff --git a/config/api/dev-gcp.yml b/config/api/dev-gcp.yml index f98a80b002..339a9f7c40 100644 --- a/config/api/dev-gcp.yml +++ b/config/api/dev-gcp.yml @@ -2,12 +2,8 @@ kafkaPool: nav-dev idportenEnabled: true azure: enabled: true +valkeyAccess: read ingress: https://helsearbeidsgiver-im-api.intern.dev.nav.no -env: - - name: REDIS_URL - value: redis://helsearbeidsgiver-redis.helsearbeidsgiver.svc.cluster.local:6379/0 -apps: - - name: helsearbeidsgiver-redis inboundApps: - name: spinntektsmelding-frontend diff --git a/config/api/prod-gcp.yml b/config/api/prod-gcp.yml index 15cc8a0886..bc261baaaf 100644 --- a/config/api/prod-gcp.yml +++ b/config/api/prod-gcp.yml @@ -2,11 +2,7 @@ kafkaPool: nav-prod idportenEnabled: true azure: enabled: true +valkeyAccess: read ingress: https://helsearbeidsgiver-im-api.intern.nav.no -env: - - name: REDIS_URL - value: redis://helsearbeidsgiver-redis.helsearbeidsgiver.svc.cluster.local:6379/0 -apps: - - name: helsearbeidsgiver-redis inboundApps: - name: spinntektsmelding-frontend diff --git a/config/innsending/dev-gcp.yml b/config/innsending/dev-gcp.yml index 10f59290cf..9fb51b04c1 100644 --- a/config/innsending/dev-gcp.yml +++ b/config/innsending/dev-gcp.yml @@ -1,9 +1,2 @@ kafkaPool: nav-dev -azure: - enabled: true -ingress: https://helsearbeidsgiver-im-innsending.intern.dev.nav.no -env: -- name: REDIS_URL - value: redis://helsearbeidsgiver-redis.helsearbeidsgiver.svc.cluster.local:6379/0 -apps: - - name: helsearbeidsgiver-redis +valkeyAccess: readwrite diff --git a/config/innsending/prod-gcp.yml b/config/innsending/prod-gcp.yml index a39dd5b14e..fa77b6f52e 100644 --- a/config/innsending/prod-gcp.yml +++ b/config/innsending/prod-gcp.yml @@ -1,6 +1,2 @@ kafkaPool: nav-prod -env: -- name: REDIS_URL - value: redis://helsearbeidsgiver-redis.helsearbeidsgiver.svc.cluster.local:6379/0 -apps: - - name: helsearbeidsgiver-redis +valkeyAccess: readwrite diff --git a/config/inntekt-selvbestemt-service/dev-gcp.yml b/config/inntekt-selvbestemt-service/dev-gcp.yml index dc4a3a5dda..9fb51b04c1 100644 --- a/config/inntekt-selvbestemt-service/dev-gcp.yml +++ b/config/inntekt-selvbestemt-service/dev-gcp.yml @@ -1,6 +1,2 @@ kafkaPool: nav-dev -env: - - name: REDIS_URL - value: redis://helsearbeidsgiver-redis.helsearbeidsgiver.svc.cluster.local:6379/0 -apps: - - name: helsearbeidsgiver-redis +valkeyAccess: readwrite diff --git a/config/inntekt-selvbestemt-service/prod-gcp.yml b/config/inntekt-selvbestemt-service/prod-gcp.yml index 51ce466920..fa77b6f52e 100644 --- a/config/inntekt-selvbestemt-service/prod-gcp.yml +++ b/config/inntekt-selvbestemt-service/prod-gcp.yml @@ -1,6 +1,2 @@ kafkaPool: nav-prod -env: - - name: REDIS_URL - value: redis://helsearbeidsgiver-redis.helsearbeidsgiver.svc.cluster.local:6379/0 -apps: - - name: helsearbeidsgiver-redis +valkeyAccess: readwrite diff --git a/config/inntektservice/dev-gcp.yml b/config/inntektservice/dev-gcp.yml index 47b7d8d766..9fb51b04c1 100644 --- a/config/inntektservice/dev-gcp.yml +++ b/config/inntektservice/dev-gcp.yml @@ -1,6 +1,2 @@ kafkaPool: nav-dev -env: -- name: REDIS_URL - value: redis://helsearbeidsgiver-redis.helsearbeidsgiver.svc.cluster.local:6379/0 -apps: - - name: helsearbeidsgiver-redis +valkeyAccess: readwrite diff --git a/config/inntektservice/prod-gcp.yml b/config/inntektservice/prod-gcp.yml index a39dd5b14e..fa77b6f52e 100644 --- a/config/inntektservice/prod-gcp.yml +++ b/config/inntektservice/prod-gcp.yml @@ -1,6 +1,2 @@ kafkaPool: nav-prod -env: -- name: REDIS_URL - value: redis://helsearbeidsgiver-redis.helsearbeidsgiver.svc.cluster.local:6379/0 -apps: - - name: helsearbeidsgiver-redis +valkeyAccess: readwrite diff --git a/config/nais.yml b/config/nais.yml index d1b9d00fa2..7a9b88a687 100644 --- a/config/nais.yml +++ b/config/nais.yml @@ -57,6 +57,11 @@ spec: application: enabled: {{ azure.enabled }} {{/if}} + {{#if valkeyAccess}} + valkey: + - instance: inntektsmelding + access: {{ valkeyAccess }} + {{/if}} {{#if database}} gcp: sqlInstances: diff --git a/config/selvbestemt-hent-im-service/dev-gcp.yml b/config/selvbestemt-hent-im-service/dev-gcp.yml index 47b7d8d766..9fb51b04c1 100644 --- a/config/selvbestemt-hent-im-service/dev-gcp.yml +++ b/config/selvbestemt-hent-im-service/dev-gcp.yml @@ -1,6 +1,2 @@ kafkaPool: nav-dev -env: -- name: REDIS_URL - value: redis://helsearbeidsgiver-redis.helsearbeidsgiver.svc.cluster.local:6379/0 -apps: - - name: helsearbeidsgiver-redis +valkeyAccess: readwrite diff --git a/config/selvbestemt-hent-im-service/prod-gcp.yml b/config/selvbestemt-hent-im-service/prod-gcp.yml index a39dd5b14e..fa77b6f52e 100644 --- a/config/selvbestemt-hent-im-service/prod-gcp.yml +++ b/config/selvbestemt-hent-im-service/prod-gcp.yml @@ -1,6 +1,2 @@ kafkaPool: nav-prod -env: -- name: REDIS_URL - value: redis://helsearbeidsgiver-redis.helsearbeidsgiver.svc.cluster.local:6379/0 -apps: - - name: helsearbeidsgiver-redis +valkeyAccess: readwrite diff --git a/config/selvbestemt-lagre-im-service/dev-gcp.yml b/config/selvbestemt-lagre-im-service/dev-gcp.yml index 47b7d8d766..9fb51b04c1 100644 --- a/config/selvbestemt-lagre-im-service/dev-gcp.yml +++ b/config/selvbestemt-lagre-im-service/dev-gcp.yml @@ -1,6 +1,2 @@ kafkaPool: nav-dev -env: -- name: REDIS_URL - value: redis://helsearbeidsgiver-redis.helsearbeidsgiver.svc.cluster.local:6379/0 -apps: - - name: helsearbeidsgiver-redis +valkeyAccess: readwrite diff --git a/config/selvbestemt-lagre-im-service/prod-gcp.yml b/config/selvbestemt-lagre-im-service/prod-gcp.yml index a39dd5b14e..fa77b6f52e 100644 --- a/config/selvbestemt-lagre-im-service/prod-gcp.yml +++ b/config/selvbestemt-lagre-im-service/prod-gcp.yml @@ -1,6 +1,2 @@ kafkaPool: nav-prod -env: -- name: REDIS_URL - value: redis://helsearbeidsgiver-redis.helsearbeidsgiver.svc.cluster.local:6379/0 -apps: - - name: helsearbeidsgiver-redis +valkeyAccess: readwrite diff --git a/config/tilgangservice/dev-gcp.yml b/config/tilgangservice/dev-gcp.yml index 47b7d8d766..9fb51b04c1 100644 --- a/config/tilgangservice/dev-gcp.yml +++ b/config/tilgangservice/dev-gcp.yml @@ -1,6 +1,2 @@ kafkaPool: nav-dev -env: -- name: REDIS_URL - value: redis://helsearbeidsgiver-redis.helsearbeidsgiver.svc.cluster.local:6379/0 -apps: - - name: helsearbeidsgiver-redis +valkeyAccess: readwrite diff --git a/config/tilgangservice/prod-gcp.yml b/config/tilgangservice/prod-gcp.yml index a39dd5b14e..fa77b6f52e 100644 --- a/config/tilgangservice/prod-gcp.yml +++ b/config/tilgangservice/prod-gcp.yml @@ -1,6 +1,2 @@ kafkaPool: nav-prod -env: -- name: REDIS_URL - value: redis://helsearbeidsgiver-redis.helsearbeidsgiver.svc.cluster.local:6379/0 -apps: - - name: helsearbeidsgiver-redis +valkeyAccess: readwrite diff --git a/config/trengerservice/dev-gcp.yml b/config/trengerservice/dev-gcp.yml index 47b7d8d766..9fb51b04c1 100644 --- a/config/trengerservice/dev-gcp.yml +++ b/config/trengerservice/dev-gcp.yml @@ -1,6 +1,2 @@ kafkaPool: nav-dev -env: -- name: REDIS_URL - value: redis://helsearbeidsgiver-redis.helsearbeidsgiver.svc.cluster.local:6379/0 -apps: - - name: helsearbeidsgiver-redis +valkeyAccess: readwrite diff --git a/config/trengerservice/prod-gcp.yml b/config/trengerservice/prod-gcp.yml index a39dd5b14e..fa77b6f52e 100644 --- a/config/trengerservice/prod-gcp.yml +++ b/config/trengerservice/prod-gcp.yml @@ -1,6 +1,2 @@ kafkaPool: nav-prod -env: -- name: REDIS_URL - value: redis://helsearbeidsgiver-redis.helsearbeidsgiver.svc.cluster.local:6379/0 -apps: - - name: helsearbeidsgiver-redis +valkeyAccess: readwrite diff --git a/valkey/config.yml b/valkey/config.yml new file mode 100644 index 0000000000..7540dc906a --- /dev/null +++ b/valkey/config.yml @@ -0,0 +1,10 @@ +apiVersion: aiven.io/v1alpha1 +kind: Valkey +metadata: + labels: + team: helsearbeidsgiver + name: valkey-helsearbeidsgiver-inntektsmelding + namespace: helsearbeidsgiver +spec: + project: {{ project }} + plan: {{ plan }} diff --git a/valkey/dev.yml b/valkey/dev.yml new file mode 100644 index 0000000000..4387a111b2 --- /dev/null +++ b/valkey/dev.yml @@ -0,0 +1,2 @@ +project: nav-dev +plan: hobbyist diff --git a/valkey/prod.yml b/valkey/prod.yml new file mode 100644 index 0000000000..2918ba6a62 --- /dev/null +++ b/valkey/prod.yml @@ -0,0 +1,2 @@ +project: nav-prod +plan: startup-4