omni/hack/test/integration.sh
Utku Ozdemir fbf36740f2
test: add unit and e2e tests to the helm chart
Add helm unit tests (via helm-unittest) covering services, ingresses, HTTPRoutes, secrets, PrometheusRules and ServiceAccounts. Add a helm-based e2e test workflow that deploys Omni on a Talos cluster with Traefik and etcd, runs integration tests including workload proxy, and verifies the full stack end-to-end. Add a configurable TestOptions struct to the workload proxy test to allow running with smaller scale in helm e2e.

Signed-off-by: Kevin Tijssen <kevin.tijssen@siderolabs.com>
Signed-off-by: Utku Ozdemir <utku.ozdemir@siderolabs.com>
2026-02-16 13:58:56 +01:00

46 lines
996 B
Bash
Executable File

#!/usr/bin/env bash
# Copyright (c) 2026 Sidero Labs, Inc.
#
# Use of this software is governed by the Business Source License
# included in the LICENSE file.
set -eoux pipefail
TEST_CLASS="${TEST_CLASS:-none}"
echo "Checking test class: $TEST_CLASS"
case "$TEST_CLASS" in
"integration-talemu")
echo "Starting Integration Tests with talemu..."
./hack/test/integration-talemu.sh
;;
"integration-qemu")
echo "Starting Integration Tests with QEMU..."
./hack/test/integration-qemu.sh
;;
"e2e-qemu")
echo "Starting End-to-End Tests with QEMU..."
./hack/test/e2e-qemu.sh
;;
"e2e-talemu")
echo "Starting End-to-End Tests with talemu..."
./hack/test/e2e-talemu.sh
;;
"e2e-helm")
echo "Starting End-to-End Tests for Helm chart..."
./hack/test/e2e-helm.sh
;;
*)
# The catch-all (default) case if nothing matches
echo "Error: Unknown TEST_CLASS '$TEST_CLASS'. Please use integration-talemu, integration-qemu, e2e-qemu, e2e-talemu or e2e-helm."
exit 1
;;
esac