Skip to content

🔖 chore(release): prepare v0.19.0 #774

🔖 chore(release): prepare v0.19.0

🔖 chore(release): prepare v0.19.0 #774

Workflow file for this run

# Tier 0 — mandatory Kind smoke on every non-docs PR and push to main.
# Required check name for branch protection: kind-smoke
# See docs/development/coding-standards.md and docs/development/testing.md.
name: E2E smoke
on:
push:
branches: [main]
paths-ignore:
- "docs/**"
- "mkdocs.yml"
- "README.md"
- "CHANGELOG.md"
- "CONTRIBUTING.md"
- "LICENSE"
- ".github/ISSUE_TEMPLATE/**"
pull_request:
paths-ignore:
- "docs/**"
- "mkdocs.yml"
- "README.md"
- "CHANGELOG.md"
- "CONTRIBUTING.md"
- "LICENSE"
- ".github/ISSUE_TEMPLATE/**"
permissions:
contents: read
concurrency:
group: e2e-smoke-${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
# HY-06: never cancel in-flight runs on main (would leave CI-UNKNOWN); PR runs still supersede.
cancel-in-progress: ${{ github.ref != 'refs/heads/main' }}
jobs:
kind-smoke:
name: kind-smoke
runs-on: ubuntu-latest
timeout-minutes: 20
steps:
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
with:
persist-credentials: false
- uses: ./.github/actions/kind-e2e-setup
with:
scenario-script: hack/kind/e2e/smoke.sh
wait-timeout: 300s
# L4 for the pipeline CLI (ADR-0801, P-008). The CLI is standalone — it collects via kubeconfig
# without the operator — so it runs as its own isolated-cluster scenario rather than bolting onto
# the operator smoke. run-mode repo_root sets REPO_ROOT so the scenario can `task build:cli`.
pipeline-cli-smoke:
name: pipeline-cli-smoke
runs-on: ubuntu-latest
timeout-minutes: 20
steps:
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
with:
persist-credentials: false
- uses: ./.github/actions/kind-e2e-setup
with:
scenario-script: hack/kind/e2e/pipeline-cli-smoke.sh
run-mode: repo_root
wait-timeout: 300s
# DEMO-03 — canonical Git-only hero demo path (Forgejo in kind).
# Separate from required Tier-0 kind-smoke (branch protection lists kind-smoke only).
# Uses a noop setup so kind-e2e-setup installs kind/helm without creating kollect-e2e;
# smoke.sh owns kollect-hero (up → assert → down).
hero-demo-smoke:
name: hero-demo-smoke
runs-on: ubuntu-latest
timeout-minutes: 25
steps:
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
with:
persist-credentials: false
- name: Hero smoke contract (no kind)
run: bash hack/test/demo_03_hero_smoke_test.sh
- uses: ./.github/actions/kind-e2e-setup
with:
setup-script: hack/demo/hero/ci-noop-setup.sh
scenario-script: hack/demo/hero/smoke.sh
wait-timeout: 300s