Skip to content

fix: gate experimental gateway api resources #24

fix: gate experimental gateway api resources

fix: gate experimental gateway api resources #24

Workflow file for this run

name: E2E
on:
push:
branches: [main]
pull_request:
workflow_dispatch:
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
permissions:
contents: read
packages: read
env:
CLUSTER_NAME: e2e
GATEWAY_API_VERSION: v1.5.1
CONTROLPLANE_IMAGE: ghcr.io/nantian-gw/nantian-controlplane:ci-${{ github.sha }}
DATAPLANE_IMAGE: ghcr.io/nantian-gw/dataplane:latest
DASHBOARD_IMAGE: ghcr.io/nantian-gw/dashboard:latest
jobs:
smoke:
name: Smoke
runs-on: ubuntu-latest
timeout-minutes: 60
steps:
- uses: actions/checkout@v6
- name: Install Kind tooling
run: scripts/ci/install-kind-tools.sh
- name: Create kind cluster
run: |
kind create cluster --name "$CLUSTER_NAME" --wait 5m
kubectl wait --for=condition=ready node --all --timeout=2m
- name: Install Gateway API CRDs
run: scripts/ci/install-gateway-api-crds.sh
- name: Build current control-plane image
run: scripts/ci/build-controlplane-image.sh
- name: Load images into kind
run: scripts/ci/load-kind-images.sh
- name: Deploy Nantian Gateway
run: scripts/ci/deploy-kind-conformance.sh
- name: Record image versions
run: |
echo "=== Images under test ==="
kubectl get pods -n nantian-gw -o json | jq -r '.items[] | .spec.containers[] | " \(.name): \(.image)"'
echo "=== Image digests ==="
kubectl get pods -n nantian-gw -o json | jq -r '.items[] | .status.containerStatuses[] | " \(.name): \(.imageID)"'
- name: Run smoke test
run: CLUSTER_NAME="$CLUSTER_NAME" ./test/e2e/smoke/run.sh --no-cleanup
- name: Collect diagnostics on failure
if: failure()
run: ARTIFACT_DIR=tmp/e2e-diagnostics scripts/ci/collect-kind-diagnostics.sh
- name: Upload diagnostics
if: failure()
uses: actions/upload-artifact@v7
with:
name: e2e-diagnostics
path: tmp/e2e-diagnostics/
if-no-files-found: warn
- name: Cleanup
if: always()
run: command -v kind >/dev/null 2>&1 && kind delete cluster --name "$CLUSTER_NAME" || true