Skip to content

CI: Test e2e against all Tekton Pipelines LTS versions #2896

Description

@vdemeester

Problem

The CLI e2e tests currently install only the latest Tekton Pipelines release (https://infra.tekton.dev/tekton-releases/pipeline/latest/release.yaml). This means:

Proposal

Add a pipelines-lts e2e matrix job that tests against all Tekton Pipelines LTS versions, in addition to the existing k8s version matrix.

Prior art: tektoncd/chains

tektoncd/chains already does this well in .github/workflows/kind-e2e.yaml:

  # Latest pipelines × multiple k8s versions
  k8s:
    strategy:
      matrix:
        k8s-version: [v1.32.x, v1.33.x, v1.34.x]
    uses: ./.github/workflows/reusable-e2e.yaml
    with:
      k8s-version: ${{ matrix.k8s-version }}
      pipelines-release: v1.12.0

  # Multiple LTS pipelines × single k8s version
  pipelines-lts:
    strategy:
      matrix:
        pipelines-release:
          - v1.3.4   # LTS
          - v1.6.2   # LTS
          - v1.9.3   # LTS
    uses: ./.github/workflows/reusable-e2e.yaml
    with:
      k8s-version: v1.34.x
      pipelines-release: ${{ matrix.pipelines-release }}

The reusable workflow takes pipelines-release as input and installs from:
https://infra.tekton.dev/tekton-releases/pipeline/previous/${{ inputs.pipelines-release }}/release.yaml

Implementation notes

  • The CLI already supports RELEASE_YAML_PIPELINE in test/e2e-common.sh to override the install URL — the plumbing is there
  • The pipelines-lts matrix should reference pipeline releases.md for the version list
  • Consider whether pipelines-lts failures should be blocking or informational initially

/cc @tektoncd/cli-maintainers

Metadata

Metadata

Assignees

No one assigned

    Labels

    kind/featureCategorizes issue or PR as related to a new feature.
    No fields configured for Feature.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions