From faa2ebda74e10fa61c3a9bd94f2fded1d35f7fb6 Mon Sep 17 00:00:00 2001 From: kjubybot Date: Mon, 3 Mar 2025 18:53:32 +0400 Subject: [PATCH 01/13] prepare unibattle infra --- k8s/timoni/codebattle/templates/config.cue | 1 + k8s/timoni/codebattle/templates/deployment.cue | 3 +++ k8s/timoni/codebattle/values.cue | 4 ++-- k8s/timoni/runners.cue | 2 +- 4 files changed, 7 insertions(+), 3 deletions(-) diff --git a/k8s/timoni/codebattle/templates/config.cue b/k8s/timoni/codebattle/templates/config.cue index 70b56fa6e..b23ac6f53 100644 --- a/k8s/timoni/codebattle/templates/config.cue +++ b/k8s/timoni/codebattle/templates/config.cue @@ -57,6 +57,7 @@ import ( tolerations?: [...corev1.#Toleration] affinity?: corev1.#Affinity topologySpreadConstraints?: [...corev1.#TopologySpreadConstraint] + nodeSelector?: [string]: string ingress: { enable: *false | bool diff --git a/k8s/timoni/codebattle/templates/deployment.cue b/k8s/timoni/codebattle/templates/deployment.cue index 039912141..40930db55 100644 --- a/k8s/timoni/codebattle/templates/deployment.cue +++ b/k8s/timoni/codebattle/templates/deployment.cue @@ -80,6 +80,9 @@ import ( if #config.affinity != _|_ { affinity: #config.affinity } + if #config.nodeSelector != _|_ { + nodeSelector: #config.nodeSelector + } } } } diff --git a/k8s/timoni/codebattle/values.cue b/k8s/timoni/codebattle/values.cue index 7f8243318..dd20ab20c 100644 --- a/k8s/timoni/codebattle/values.cue +++ b/k8s/timoni/codebattle/values.cue @@ -18,6 +18,6 @@ values: { digest: "" } } - env: { - } + env: {} + nodeSelector: app: "codebattle" } diff --git a/k8s/timoni/runners.cue b/k8s/timoni/runners.cue index b770ace6c..f84554ae9 100644 --- a/k8s/timoni/runners.cue +++ b/k8s/timoni/runners.cue @@ -3,7 +3,7 @@ runners: { image: "codebattle/python" version: "3.12.2" lang: "python" - replicas: 1 + replicas: 0 } "cpp": { image: "codebattle/cpp" From 7a0840e3834f54bafd3eb709c01087af120efab0 Mon Sep 17 00:00:00 2001 From: kjubybot Date: Mon, 3 Mar 2025 22:50:11 +0400 Subject: [PATCH 02/13] flux instances tweak --- k8s/flux.cue | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/k8s/flux.cue b/k8s/flux.cue index dfc48e463..105d7972b 100644 --- a/k8s/flux.cue +++ b/k8s/flux.cue @@ -2,6 +2,18 @@ bundle: { apiVersion: "v1alpha1" name: "codebattle" instances: { + "gateway": { + module: url: "oci://ghcr.io/stefanprodan/modules/flux-helm-release" + namespace: "flux-system" + values: { + repository: url: "oci://registry-1.docker.io/envoyproxy" + chart: { + name: "gateway-helm" + version: "v1.3.0" + } + sync: targetNamespace: "codebattle" + } + } "cert-manager": { module: url: "oci://ghcr.io/stefanprodan/modules/flux-helm-release" namespace: "flux-system" @@ -22,18 +34,6 @@ bundle: { } } } - "gateway": { - module: url: "oci://ghcr.io/stefanprodan/modules/flux-helm-release" - namespace: "flux-system" - values: { - repository: url: "oci://registry-1.docker.io/envoyproxy" - chart: { - name: "gateway-helm" - version: "v1.3.0" - } - sync: targetNamespace: "codebattle" - } - } "codebattle": { module: url: "file://timoni/kustomize-oci" namespace: "flux-system" From e9acb7ed6e872c4864b5aac66a8f01b6f578dea2 Mon Sep 17 00:00:00 2001 From: kjubybot Date: Mon, 10 Mar 2025 16:36:55 +0400 Subject: [PATCH 03/13] scale up runners --- k8s/timoni/bundle.cue | 4 +-- k8s/timoni/runners.cue | 77 ++++++++++++++++++++++++++++++++++-------- 2 files changed, 65 insertions(+), 16 deletions(-) diff --git a/k8s/timoni/bundle.cue b/k8s/timoni/bundle.cue index 0c9ba1e6c..c5f383a44 100644 --- a/k8s/timoni/bundle.cue +++ b/k8s/timoni/bundle.cue @@ -22,10 +22,10 @@ bundle: { module: url: "file://runner" namespace: "codebattle" values: { - registry: "docker.io" + registry: "cr.yandex/crp5804gnefl1uhkcljn" image: { repository: "\(registry)/\(runner.image)" - tag: runner.version + tag: "latest" // runner.version } replicas: runner.replicas } diff --git a/k8s/timoni/runners.cue b/k8s/timoni/runners.cue index f84554ae9..34c45aa32 100644 --- a/k8s/timoni/runners.cue +++ b/k8s/timoni/runners.cue @@ -1,38 +1,87 @@ runners: { - "python": { - image: "codebattle/python" - version: "3.12.2" - lang: "python" - replicas: 0 + "clojure": { + image: "codebattle/clojure" + version: "1.3.190" + lang: "clojure" + replicas: 1 } "cpp": { image: "codebattle/cpp" version: "20" lang: "cpp" - replicas: 0 + replicas: 1 } "csharp": { image: "codebattle/csharp" version: "8.0.201" lang: "csharp" - replicas: 0 + replicas: 1 } - "java": { - image: "codebattle/java" - version: "21" - lang: "java" - replicas: 0 + "dart": { + image: "codebattle/dart" + + version: "latest" + lang: "dart" + replicas: 1 + } + "elixir": { + image: "codebattle/elixir" + version: "1.18.2" + lang: "elixir" + replicas: 1 } "golang": { image: "codebattle/golang" version: "1.22.1" lang: "golang" - replicas: 0 + replicas: 1 + } + "haskell": { + image: "codebattle/haskell" + version: "latest" + lang: "haskell" + replicas: 1 + } + "java": { + image: "codebattle/java" + version: "21" + lang: "java" + replicas: 1 + } + "js": { + image: "codebattle/js" + version: "20.11.1" + lang: "js" + replicas: 1 } "kotlin": { image: "codebattle/kotlin" version: "1.9.23" lang: "kotlin" - replicas: 0 + replicas: 1 + } + "php": { + image: "codebattle/php" + version: "8.3.3" + lang: "php" + replicas: 1 + } + "python": { + image: "codebattle/python" + version: "3.12.2" + lang: "python" + replicas: 1 + } + "ruby": { + image: "codebattle/ruby" + version: "3.3.0" + lang: "ruby" + replicas: 1 + } + "rust": { + image: "codebattle/rust" + version: "1.85" + lang: "rust" + replicas: 1 } } From b7789cb0441e1c169c0cdb1b2cf7b77976a5f38f Mon Sep 17 00:00:00 2001 From: kjubybot Date: Mon, 10 Mar 2025 16:39:20 +0400 Subject: [PATCH 04/13] fix runner image --- k8s/timoni/runners.cue | 28 ++++++++++++++-------------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/k8s/timoni/runners.cue b/k8s/timoni/runners.cue index 34c45aa32..de3a4e69e 100644 --- a/k8s/timoni/runners.cue +++ b/k8s/timoni/runners.cue @@ -1,85 +1,85 @@ runners: { "clojure": { - image: "codebattle/clojure" + image: "codebattle/runner-clojure" version: "1.3.190" lang: "clojure" replicas: 1 } "cpp": { - image: "codebattle/cpp" + image: "codebattle/runner-cpp" version: "20" lang: "cpp" replicas: 1 } "csharp": { - image: "codebattle/csharp" + image: "codebattle/runner-csharp" version: "8.0.201" lang: "csharp" replicas: 1 } "dart": { - image: "codebattle/dart" + image: "codebattle/runner-dart" version: "latest" lang: "dart" replicas: 1 } "elixir": { - image: "codebattle/elixir" + image: "codebattle/runner-elixir" version: "1.18.2" lang: "elixir" replicas: 1 } "golang": { - image: "codebattle/golang" + image: "codebattle/runner-golang" version: "1.22.1" lang: "golang" replicas: 1 } "haskell": { - image: "codebattle/haskell" + image: "codebattle/runner-haskell" version: "latest" lang: "haskell" replicas: 1 } "java": { - image: "codebattle/java" + image: "codebattle/runner-java" version: "21" lang: "java" replicas: 1 } "js": { - image: "codebattle/js" + image: "codebattle/runner-js" version: "20.11.1" lang: "js" replicas: 1 } "kotlin": { - image: "codebattle/kotlin" + image: "codebattle/runner-kotlin" version: "1.9.23" lang: "kotlin" replicas: 1 } "php": { - image: "codebattle/php" + image: "codebattle/runner-php" version: "8.3.3" lang: "php" replicas: 1 } "python": { - image: "codebattle/python" + image: "codebattle/runner-python" version: "3.12.2" lang: "python" replicas: 1 } "ruby": { - image: "codebattle/ruby" + image: "codebattle/runner-ruby" version: "3.3.0" lang: "ruby" replicas: 1 } "rust": { - image: "codebattle/rust" + image: "codebattle/runner-rust" version: "1.85" lang: "rust" replicas: 1 From ad849ae077a05c9635294814cc8a231f7167b191 Mon Sep 17 00:00:00 2001 From: kjubybot Date: Mon, 10 Mar 2025 16:45:25 +0400 Subject: [PATCH 05/13] fix runner image --- k8s/timoni/runners.cue | 28 ++++++++++++++-------------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/k8s/timoni/runners.cue b/k8s/timoni/runners.cue index de3a4e69e..ed9b31272 100644 --- a/k8s/timoni/runners.cue +++ b/k8s/timoni/runners.cue @@ -1,85 +1,85 @@ runners: { "clojure": { - image: "codebattle/runner-clojure" + image: "runner-clojure" version: "1.3.190" lang: "clojure" replicas: 1 } "cpp": { - image: "codebattle/runner-cpp" + image: "runner-cpp" version: "20" lang: "cpp" replicas: 1 } "csharp": { - image: "codebattle/runner-csharp" + image: "runner-csharp" version: "8.0.201" lang: "csharp" replicas: 1 } "dart": { - image: "codebattle/runner-dart" + image: "runner-dart" version: "latest" lang: "dart" replicas: 1 } "elixir": { - image: "codebattle/runner-elixir" + image: "runner-elixir" version: "1.18.2" lang: "elixir" replicas: 1 } "golang": { - image: "codebattle/runner-golang" + image: "runner-golang" version: "1.22.1" lang: "golang" replicas: 1 } "haskell": { - image: "codebattle/runner-haskell" + image: "runner-haskell" version: "latest" lang: "haskell" replicas: 1 } "java": { - image: "codebattle/runner-java" + image: "runner-java" version: "21" lang: "java" replicas: 1 } "js": { - image: "codebattle/runner-js" + image: "runner-js" version: "20.11.1" lang: "js" replicas: 1 } "kotlin": { - image: "codebattle/runner-kotlin" + image: "runner-kotlin" version: "1.9.23" lang: "kotlin" replicas: 1 } "php": { - image: "codebattle/runner-php" + image: "runner-php" version: "8.3.3" lang: "php" replicas: 1 } "python": { - image: "codebattle/runner-python" + image: "runner-python" version: "3.12.2" lang: "python" replicas: 1 } "ruby": { - image: "codebattle/runner-ruby" + image: "runner-ruby" version: "3.3.0" lang: "ruby" replicas: 1 } "rust": { - image: "codebattle/runner-rust" + image: "runner-rust" version: "1.85" lang: "rust" replicas: 1 From c240640eee19595d0c8ca034387358b658f6ac6e Mon Sep 17 00:00:00 2001 From: kjubybot Date: Fri, 14 Mar 2025 18:47:51 +0400 Subject: [PATCH 06/13] scale down runners --- k8s/timoni/bundle.cue | 4 ++-- k8s/timoni/runners.cue | 28 ++++++++++++++-------------- 2 files changed, 16 insertions(+), 16 deletions(-) diff --git a/k8s/timoni/bundle.cue b/k8s/timoni/bundle.cue index c5f383a44..0c9ba1e6c 100644 --- a/k8s/timoni/bundle.cue +++ b/k8s/timoni/bundle.cue @@ -22,10 +22,10 @@ bundle: { module: url: "file://runner" namespace: "codebattle" values: { - registry: "cr.yandex/crp5804gnefl1uhkcljn" + registry: "docker.io" image: { repository: "\(registry)/\(runner.image)" - tag: "latest" // runner.version + tag: runner.version } replicas: runner.replicas } diff --git a/k8s/timoni/runners.cue b/k8s/timoni/runners.cue index ed9b31272..f167dbfdf 100644 --- a/k8s/timoni/runners.cue +++ b/k8s/timoni/runners.cue @@ -3,85 +3,85 @@ runners: { image: "runner-clojure" version: "1.3.190" lang: "clojure" - replicas: 1 + replicas: 0 } "cpp": { image: "runner-cpp" version: "20" lang: "cpp" - replicas: 1 + replicas: 0 } "csharp": { image: "runner-csharp" version: "8.0.201" lang: "csharp" - replicas: 1 + replicas: 0 } "dart": { image: "runner-dart" version: "latest" lang: "dart" - replicas: 1 + replicas: 0 } "elixir": { image: "runner-elixir" version: "1.18.2" lang: "elixir" - replicas: 1 + replicas: 0 } "golang": { image: "runner-golang" version: "1.22.1" lang: "golang" - replicas: 1 + replicas: 0 } "haskell": { image: "runner-haskell" version: "latest" lang: "haskell" - replicas: 1 + replicas: 0 } "java": { image: "runner-java" version: "21" lang: "java" - replicas: 1 + replicas: 0 } "js": { image: "runner-js" version: "20.11.1" lang: "js" - replicas: 1 + replicas: 0 } "kotlin": { image: "runner-kotlin" version: "1.9.23" lang: "kotlin" - replicas: 1 + replicas: 0 } "php": { image: "runner-php" version: "8.3.3" lang: "php" - replicas: 1 + replicas: 0 } "python": { image: "runner-python" version: "3.12.2" lang: "python" - replicas: 1 + replicas: 0 } "ruby": { image: "runner-ruby" version: "3.3.0" lang: "ruby" - replicas: 1 + replicas: 0 } "rust": { image: "runner-rust" version: "1.85" lang: "rust" - replicas: 1 + replicas: 0 } } From 42d25a4ab0c19dddf638b1536ffaea621780becc Mon Sep 17 00:00:00 2001 From: kjubybot Date: Mon, 17 Mar 2025 18:17:22 +0400 Subject: [PATCH 07/13] scale up python and cpp --- k8s/timoni/runners.cue | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/k8s/timoni/runners.cue b/k8s/timoni/runners.cue index f167dbfdf..0f913c170 100644 --- a/k8s/timoni/runners.cue +++ b/k8s/timoni/runners.cue @@ -9,7 +9,7 @@ runners: { image: "runner-cpp" version: "20" lang: "cpp" - replicas: 0 + replicas: 1 } "csharp": { image: "runner-csharp" @@ -70,7 +70,7 @@ runners: { image: "runner-python" version: "3.12.2" lang: "python" - replicas: 0 + replicas: 1 } "ruby": { image: "runner-ruby" From 182710ea08a30c727ca5d3e4bbbb62e8dae35091 Mon Sep 17 00:00:00 2001 From: kjubybot Date: Mon, 17 Mar 2025 18:24:19 +0400 Subject: [PATCH 08/13] fix runner images --- k8s/timoni/runners.cue | 28 ++++++++++++++-------------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/k8s/timoni/runners.cue b/k8s/timoni/runners.cue index 0f913c170..19787d9ac 100644 --- a/k8s/timoni/runners.cue +++ b/k8s/timoni/runners.cue @@ -1,85 +1,85 @@ runners: { "clojure": { - image: "runner-clojure" + image: "codebattle/clojure" version: "1.3.190" lang: "clojure" replicas: 0 } "cpp": { - image: "runner-cpp" + image: "codebattle/cpp" version: "20" lang: "cpp" replicas: 1 } "csharp": { - image: "runner-csharp" + image: "codebattle/csharp" version: "8.0.201" lang: "csharp" replicas: 0 } "dart": { - image: "runner-dart" + image: "codebattle/dart" version: "latest" lang: "dart" replicas: 0 } "elixir": { - image: "runner-elixir" + image: "codebattle/elixir" version: "1.18.2" lang: "elixir" replicas: 0 } "golang": { - image: "runner-golang" + image: "codebattle/golang" version: "1.22.1" lang: "golang" replicas: 0 } "haskell": { - image: "runner-haskell" + image: "codebattle/haskell" version: "latest" lang: "haskell" replicas: 0 } "java": { - image: "runner-java" + image: "codebattle/java" version: "21" lang: "java" replicas: 0 } "js": { - image: "runner-js" + image: "codebattle/js" version: "20.11.1" lang: "js" replicas: 0 } "kotlin": { - image: "runner-kotlin" + image: "codebattle/kotlin" version: "1.9.23" lang: "kotlin" replicas: 0 } "php": { - image: "runner-php" + image: "codebattle/php" version: "8.3.3" lang: "php" replicas: 0 } "python": { - image: "runner-python" + image: "codebattle/python" version: "3.12.2" lang: "python" replicas: 1 } "ruby": { - image: "runner-ruby" + image: "codebattle/ruby" version: "3.3.0" lang: "ruby" replicas: 0 } "rust": { - image: "runner-rust" + image: "codebattle/rust" version: "1.85" lang: "rust" replicas: 0 From 14acdfc3e6fe34c04b534f949a763e41d5562c3e Mon Sep 17 00:00:00 2001 From: kjubybot Date: Mon, 17 Mar 2025 19:08:36 +0400 Subject: [PATCH 09/13] enable privleged runners --- k8s/timoni/runner/templates/deployment.cue | 1 + 1 file changed, 1 insertion(+) diff --git a/k8s/timoni/runner/templates/deployment.cue b/k8s/timoni/runner/templates/deployment.cue index 97868f1d1..176a0158d 100644 --- a/k8s/timoni/runner/templates/deployment.cue +++ b/k8s/timoni/runner/templates/deployment.cue @@ -46,6 +46,7 @@ import ( successThreshold: 1 } resources: #config.resources + securityContext: privileged: true }] } } From 1d95d21426e51c7c0f9490e6757eeaedf5cc07f2 Mon Sep 17 00:00:00 2001 From: kjubybot Date: Mon, 17 Mar 2025 19:16:43 +0400 Subject: [PATCH 10/13] add tmpfs to runners --- k8s/timoni/runner/templates/deployment.cue | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/k8s/timoni/runner/templates/deployment.cue b/k8s/timoni/runner/templates/deployment.cue index 176a0158d..9e953f650 100644 --- a/k8s/timoni/runner/templates/deployment.cue +++ b/k8s/timoni/runner/templates/deployment.cue @@ -47,6 +47,14 @@ import ( } resources: #config.resources securityContext: privileged: true + volumeMounts: [{ + name: "tmp" + mountPath: "/tmp" + }] + }] + volumes: [{ + name: "tmp" + emptyDir: medium: "Memory" }] } } From 3700996aa471e972c2e90a5b015c628de8c0d40c Mon Sep 17 00:00:00 2001 From: kjubybot Date: Wed, 19 Mar 2025 17:45:51 +0400 Subject: [PATCH 11/13] scale up java --- k8s/timoni/runners.cue | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/k8s/timoni/runners.cue b/k8s/timoni/runners.cue index 19787d9ac..2c336b914 100644 --- a/k8s/timoni/runners.cue +++ b/k8s/timoni/runners.cue @@ -46,7 +46,7 @@ runners: { image: "codebattle/java" version: "21" lang: "java" - replicas: 0 + replicas: 1 } "js": { image: "codebattle/js" From 584702f03e6635ab227fc0ac6e1655f371ea26da Mon Sep 17 00:00:00 2001 From: kjubybot Date: Tue, 25 Mar 2025 14:05:58 +0400 Subject: [PATCH 12/13] upscale all runners --- k8s/timoni/runners.cue | 28 ++++++++++++++-------------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/k8s/timoni/runners.cue b/k8s/timoni/runners.cue index 2c336b914..c3269bad9 100644 --- a/k8s/timoni/runners.cue +++ b/k8s/timoni/runners.cue @@ -3,44 +3,44 @@ runners: { image: "codebattle/clojure" version: "1.3.190" lang: "clojure" - replicas: 0 + replicas: 1 } "cpp": { image: "codebattle/cpp" version: "20" lang: "cpp" - replicas: 1 + replicas: 7 } "csharp": { image: "codebattle/csharp" version: "8.0.201" lang: "csharp" - replicas: 0 + replicas: 1 } "dart": { image: "codebattle/dart" version: "latest" lang: "dart" - replicas: 0 + replicas: 1 } "elixir": { image: "codebattle/elixir" version: "1.18.2" lang: "elixir" - replicas: 0 + replicas: 1 } "golang": { image: "codebattle/golang" version: "1.22.1" lang: "golang" - replicas: 0 + replicas: 1 } "haskell": { image: "codebattle/haskell" version: "latest" lang: "haskell" - replicas: 0 + replicas: 1 } "java": { image: "codebattle/java" @@ -52,36 +52,36 @@ runners: { image: "codebattle/js" version: "20.11.1" lang: "js" - replicas: 0 + replicas: 1 } "kotlin": { image: "codebattle/kotlin" version: "1.9.23" lang: "kotlin" - replicas: 0 + replicas: 1 } "php": { image: "codebattle/php" version: "8.3.3" lang: "php" - replicas: 0 + replicas: 1 } "python": { image: "codebattle/python" version: "3.12.2" lang: "python" - replicas: 1 + replicas: 3 } "ruby": { image: "codebattle/ruby" version: "3.3.0" lang: "ruby" - replicas: 0 + replicas: 1 } "rust": { image: "codebattle/rust" - version: "1.85" + version: "1.76.0" lang: "rust" - replicas: 0 + replicas: 1 } } From 24fa1721b87c521b28ffc625632ffbe4f6f04f99 Mon Sep 17 00:00:00 2001 From: kjubybot Date: Tue, 25 Mar 2025 14:14:56 +0400 Subject: [PATCH 13/13] fix versions --- k8s/timoni/runners.cue | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/k8s/timoni/runners.cue b/k8s/timoni/runners.cue index c3269bad9..ddb7e3b4e 100644 --- a/k8s/timoni/runners.cue +++ b/k8s/timoni/runners.cue @@ -1,7 +1,7 @@ runners: { "clojure": { image: "codebattle/clojure" - version: "1.3.190" + version: "1.11.2.3" lang: "clojure" replicas: 1 } @@ -18,9 +18,8 @@ runners: { replicas: 1 } "dart": { - image: "codebattle/dart" - - version: "latest" + image: "codebattle/dart" + version: "3.3.1" lang: "dart" replicas: 1 } @@ -38,7 +37,7 @@ runners: { } "haskell": { image: "codebattle/haskell" - version: "latest" + version: "9.4.7" lang: "haskell" replicas: 1 }