45 lines
1.7 KiB
YAML
45 lines
1.7 KiB
YAML
# Standalone e2e test pipeline — catches regressions (cert renewal, OSD flap,
|
|
# observability gap, OIDC config drift, RGW outage) on a schedule.
|
|
#
|
|
# Triggers:
|
|
# - cron : scoped to the named daily/weekly crons below. This used to be
|
|
# a bare `event: cron` (run on EVERY cron of this repo), which
|
|
# was harmless at daily/weekly cadence but not with hourly
|
|
# crons, so piggybacking must be opt-in.
|
|
# A new cron that SHOULD also run e2e gets its name added here.
|
|
# - deploy : `woodpecker-cli pipeline deploy konairius/homelab <n> e2e`, where
|
|
# <n> is an existing pipeline to promote.
|
|
|
|
when:
|
|
- event: cron
|
|
cron: daily-security-scan
|
|
- event: cron
|
|
cron: update-audit
|
|
- event: cron
|
|
cron: weekly-update
|
|
- event: deployment
|
|
evaluate: 'CI_PIPELINE_DEPLOY_TARGET == "e2e"'
|
|
|
|
steps:
|
|
- name: model-selection-tests
|
|
# Offline unit tests for the CI model-selection gate (valid-model.sh) and the
|
|
# fetch-models.sh response mapping. No cluster, no secrets, no network — the
|
|
# ci-claude image just provides sh + jq. Keeps the flag-injection regression
|
|
# test from rotting (it exercises the exact injection shapes).
|
|
image: gitea.renner.uno/gitea_admin/ci-claude:2.1.306
|
|
commands:
|
|
- sh scripts/ci/test-model-selection.sh
|
|
|
|
- name: e2e-test
|
|
image: gitea.renner.uno/gitea_admin/ci-k8s:2026-09-08
|
|
environment:
|
|
SOPS_AGE_KEY:
|
|
from_secret: sops_age_key
|
|
S3_ACCESS_KEY_ID:
|
|
from_secret: hetzner_s3_access_key
|
|
S3_SECRET_ACCESS_KEY:
|
|
from_secret: hetzner_s3_secret_key
|
|
commands:
|
|
- bash scripts/ci/fetch-kubeconfig.sh
|
|
- bash kubernetes/e2e-test.sh
|