A catalog of Tekton pipelines and tasks used as
Konflux IntegrationTestScenario (ITS) pipelines for the MTA tenant.
pipelines/ # Integration test pipelines referenced by IntegrationTestScenarios
tasks/ # Reusable Tekton tasks referenced by the pipelines
README.md
mta-fbc-ui-koncur-e2e-pipeline - Full E2E testing pipeline with sequential execution:
- Deploy - MTA operator from FBC catalog to leased cluster
- DAST Scan - Security testing (disables auth)
- Koncur Tests - Hub API integration tests
- UI E2E Tests - Cypress UI tests (full tier suite)
- Finally - Cluster cleanup + Slack notification (always runs)
Execution model: Tasks run sequentially. If any task fails, subsequent tasks are skipped (not failed). Slack notification always sends with status of all tasks.
An IntegrationTestScenario references a pipeline from this repo via the Tekton
git resolver — an url + revision + pathInRepo triple:
apiVersion: appstudio.redhat.com/v1beta2
kind: IntegrationTestScenario
spec:
resolverRef:
resolver: git
resourceKind: pipeline
params:
- name: url
value: https://github.com/migtools/mta-konflux-its
- name: revision
value: main # branch name, tag, or commit SHA
- name: pathInRepo
value: pipelines/<pipeline-file>.yamlBecause files are addressed by exact pathInRepo, the folder layout above is a convention for
readability, not a resolver requirement. Pipelines in pipelines/ resolve their tasks from
tasks/ in this same repository.
Snapshots are filtered by target OCP version to conserve cluster resources. The pipeline only runs on allowed OCP versions (default: 4.20, 4.21, 4.22, 5.0).
Snapshots targeting unsupported OCP versions fail fast at the filter-ocp-version step.
Pipelines support testing different MTA versions via parameters:
- Koncur tests: Use
koncurBranchparameter (default:main, override for older versions) - UI E2E tests: Use
uiTestBranchparameter (default:main, override for older versions)
Example ITS for testing with specific branches:
apiVersion: appstudio.redhat.com/v1beta2
kind: IntegrationTestScenario
spec:
params:
- name: uiTestBranch
value: "release-0.10"
- name: koncurBranch
value: "main"
resolverRef:
resolver: git
params:
- name: revision
value: main
- name: pathInRepo
value: pipelines/mta-fbc-ui-koncur-e2e-pipeline.yaml- Cluster pooling: Uses OCPCTL for instant cluster access (no 15-30min provision wait)
- Sequential execution: DAST → Koncur → UI tests (prevents auth conflicts)
- Skip vs Fail: Failed tasks cause subsequent tasks to skip (not fail)
- Always notify: Slack notification in
finallyblock always runs - Infrastructure: UBI 9.5 base images with manual oc CLI installation