Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions .docker/cluster.ci.yml
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
x-common-variables: &common-variables
KURRENTDB_CLUSTER_SIZE: "3"
KURRENTDB_LICENSING__LICENSE_KEY: "${KURRENTDB_LICENSING__LICENSE_KEY:-}"

services:

Expand All @@ -18,6 +19,7 @@ services:
networks:
kdb_cluster_network:
ipv4_address: "$SEC_CL_1_IP"
mac_address: "$SEC_CL_1_MAC"
depends_on:
- cert-gen
restart: on-failure:10
Expand All @@ -37,6 +39,7 @@ services:
networks:
kdb_cluster_network:
ipv4_address: "$SEC_CL_2_IP"
mac_address: "$SEC_CL_2_MAC"
depends_on:
- cert-gen
restart: on-failure:10
Expand All @@ -56,6 +59,7 @@ services:
networks:
kdb_cluster_network:
ipv4_address: "$SEC_CL_3_IP"
mac_address: "$SEC_CL_3_MAC"
depends_on:
- cert-gen
restart: on-failure:10
Expand Down
2 changes: 1 addition & 1 deletion .docker/images.env
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
KDB_CLI_IMAGE="${KDB_CLI_IMAGE:-docker.cloudsmith.io/eventstore/eventstore-utils/es-gencert-cli:1.3}"
KDB_IMAGE="${KDB_IMAGE:-docker.io/kurrentplatform/kurrentdb:26.1}"
KDB_IMAGE="${KDB_IMAGE:-docker.io/kurrentplatform/kurrentdb:26.2}"
3 changes: 3 additions & 0 deletions .docker/shared.env
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,9 @@ SEC_CL_SUBNET=172.22.0.0/16
SEC_CL_1_IP=172.22.0.2
SEC_CL_2_IP=172.22.0.3
SEC_CL_3_IP=172.22.0.4
SEC_CL_1_MAC=02:42:ac:16:00:02
SEC_CL_2_MAC=02:42:ac:16:00:03
SEC_CL_3_MAC=02:42:ac:16:00:04

# GENCERT

Expand Down
3 changes: 3 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@ on:

env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
KURRENTDB_LICENSING__LICENSE_KEY: ${{ secrets.KURRENTDB_LICENSING__LICENSE_KEY }}


concurrency:
Expand Down Expand Up @@ -89,6 +90,7 @@ jobs:
popd

- name: Start Cluster Nodes
if: env.KURRENTDB_LICENSING__LICENSE_KEY != ''
env:
SEC_GENCERT_CERTS_ROOT: ${{ github.workspace }}
run: |
Expand All @@ -97,6 +99,7 @@ jobs:
popd

- name: Cluster integration tests
if: env.KURRENTDB_LICENSING__LICENSE_KEY != ''
env:
SEC_CIT_CERTS_PATH: ${{ github.workspace }}/certs
SEC_CIT_AUTHORITY: es.sec.local
Expand Down
6 changes: 6 additions & 0 deletions build.sbt
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,9 @@ Global / lintUnusedKeysOnLoad := false
lazy val Scala3 = "3.9.0"
lazy val jdkRelease = 21

// Multi-node KurrentDB (26.2+) requires a license key, which is unavailable to fork and Dependabot PRs.
lazy val clusterLicensed = "env.KURRENTDB_LICENSING__LICENSE_KEY != ''"

lazy val sec = project
.in(file("."))
.enablePlugins(NoPublishPlugin)
Expand Down Expand Up @@ -178,6 +181,7 @@ inThisBuild(
List(
githubWorkflowTargetBranches := Seq("main"),
githubWorkflowJavaVersions := Seq(JavaSpec.temurin(jdkRelease.toString())),
githubWorkflowEnv += "KURRENTDB_LICENSING__LICENSE_KEY" -> "${{ secrets.KURRENTDB_LICENSING__LICENSE_KEY }}",
githubWorkflowBuildPreamble += WorkflowStep.Run(
name = Some("Start Single Node"),
commands = List("pushd .docker", "./single-node.sh up -d", "popd"),
Expand Down Expand Up @@ -217,13 +221,15 @@ inThisBuild(
WorkflowStep.Run(
name = Some("Start Cluster Nodes"),
commands = List("pushd .docker", "./cluster.sh up -d", "popd"),
cond = Some(clusterLicensed),
env = Map(
"SEC_GENCERT_CERTS_ROOT" -> "${{ github.workspace }}"
)
),
WorkflowStep.Use(
UseRef.Public("nick-invision", "retry", "v2"),
name = Some("Cluster integration tests"),
cond = Some(clusterLicensed),
params = Map(
"timeout_minutes" -> "10",
"max_attempts" -> "10",
Expand Down
2 changes: 1 addition & 1 deletion tests/src/fit/scala/sec/api/fsuite.scala
Original file line number Diff line number Diff line change
Expand Up @@ -97,7 +97,7 @@ final class KdbNode private (container: KdbNode.Kdb):
object KdbNode:

final private val grpcPort = 2113
final private val image = sys.env.getOrElse("KDB_IMAGE", "docker.io/kurrentplatform/kurrentdb:26.1")
final private val image = sys.env.getOrElse("KDB_IMAGE", "docker.io/kurrentplatform/kurrentdb:26.2")

private[api] val maxStreams: Int =
sys.env.get("SEC_FIT_MAX_STREAMS").fold(8) { raw =>
Expand Down
Loading