mirror of
https://github.com/logos-storage/logos-storage-nim.git
synced 2026-05-12 22:39:26 +00:00
Adds a workflow for release tests: - builds a docker image for launching nodes in the tests (basically has additional nimflags set) - creates a K8s cluster in Digital Ocean - one pod in the cluster is dedicated as the test runner (uses the logos-storage-nim-cs-dist-tests:latest image) - the release will fail if the docker image build or the release tests fail - the K8s cluster is torn down after the tests finish (failure or not)
58 lines
1.6 KiB
HCL
58 lines
1.6 KiB
HCL
# Kubernetes cluster
|
|
module "doks" {
|
|
source = "../modules/doks"
|
|
|
|
name = "codex-dist-tests"
|
|
region = var.region
|
|
kubernetes_version = "1.34.5-do.2"
|
|
kubernetes_ha = true
|
|
kubernetes_auto_upgrade = false
|
|
kubernetes_node_pool_name = "infra-s-4vcpu-16gb-amd"
|
|
kubernetes_node_pool_size = "s-4vcpu-16gb-amd"
|
|
kubernetes_node_pool_auto_scale = true
|
|
kubernetes_node_pool_min = 1
|
|
kubernetes_node_pool_max = 3
|
|
kubernetes_node_pool_tags = ["default", "autoscale"]
|
|
kubernetes_node_pool_labels = {
|
|
default-pool = "true"
|
|
scaling-type = "auto"
|
|
workload-type = "infra"
|
|
}
|
|
}
|
|
|
|
# Node pool - Runners CI
|
|
resource "digitalocean_kubernetes_node_pool" "runners-ci" {
|
|
cluster_id = module.doks.kubernetes_cluster_id
|
|
name = "runners-ci-s-2vcpu-8gb-amd"
|
|
size = "s-2vcpu-8gb-amd"
|
|
auto_scale = true
|
|
min_nodes = 1
|
|
max_nodes = 5
|
|
tags = ["runners-ci"]
|
|
|
|
labels = {
|
|
allow-tests-pods = "false"
|
|
default-pool = "false"
|
|
scaling-type = "auto"
|
|
workload-type = "tests-runners-ci"
|
|
}
|
|
}
|
|
|
|
# Node pool - Tests Pods
|
|
resource "digitalocean_kubernetes_node_pool" "tests-s-2vcpu-4gb" {
|
|
cluster_id = module.doks.kubernetes_cluster_id
|
|
name = "tests-s-2vcpu-4gb"
|
|
size = "s-2vcpu-4gb"
|
|
auto_scale = true
|
|
min_nodes = 1
|
|
max_nodes = 10
|
|
tags = ["tests-pods"]
|
|
|
|
labels = {
|
|
allow-tests-pods = "true"
|
|
default-pool = "false"
|
|
scaling-type = "auto"
|
|
workload-type = "tests-pods"
|
|
}
|
|
}
|