No description
Find a file
2026-04-28 15:21:06 +02:00
.gitignore first commit 2026-04-28 14:19:49 +02:00
.gitlab-ci.yml fix: prevent SIGPIPE in workload-cpu-light job 2026-04-28 15:21:06 +02:00
README.md first commit 2026-04-28 14:19:49 +02:00

CI Sizer GitLab Integration Test

This repo tests the end-to-end ci-sizer pipeline on Telekom Magenta CICD (GitLab):

  1. MutatingAdmissionWebhook intercepts runner job pods
  2. Collector sidecar is injected and monitors resource usage
  3. Metrics are pushed to the sizer receiver on job completion
  4. Sizing recommendations are generated from historical data

Setup

Prerequisites

  • ci-sizer receiver deployed and accessible
  • gitlab-webhook-edge-connect deployed to the runner K8s cluster
  • Webhook TLS certificates provisioned

CI/CD Variables (Settings → CI/CD → Variables)

Variable Description Example
SIZER_RECEIVER_URL Sizer receiver base URL https://sizer.example.com

Runner Tags Used

  • aws_run_k8s_amd64_s — small (2 CPU, 4GB)
  • aws_run_k8s_amd64_m — medium (4 CPU, 8GB)

What the Pipeline Tests

Stage Purpose Runner
validate-injection Verify collector sidecar was injected small
workload-small CPU-light text processing small
workload-medium Moderate CPU (compression) medium
workload-large Heavy CPU + memory medium
verify-metrics Query receiver for pushed metrics small

Expected Results

After several pipeline runs, the sizer receiver should show:

  • Metrics from gitlab provider
  • Resource utilization data per job
  • Sizing recommendations suggesting right-sized resources

Troubleshooting

  1. No collector sidecar: Check webhook deployment + TLS + webhook config
  2. No metrics in receiver: Check collector logs, push token, receiver connectivity
  3. Proxy issues: Ensure proxy.devops.telekom.de:3128 is accessible from runner pods