feat: Add Tekton Chains regression testing for OpenShift Pipelines 1.21 & 1.22#78865
feat: Add Tekton Chains regression testing for OpenShift Pipelines 1.21 & 1.22#78865siddardh-ra wants to merge 1 commit intoopenshift:mainfrom
Conversation
…21 & 1.22 Added comprehensive CI jobs for Tekton Chains regression testing across versions 1.21 and 1.22 with multiple load scenarios and configurations. Jobs added (24 total): - Basic signing tests: 2500, 5000, 7500 (6 jobs) - HA-enabled tests: 2500, 5000, 7500 (6 jobs) - Performance-tuned (QBT) tests: 2500, 5000, 7500 (6 jobs) - HA + QBT combined tests: 2500, 5000, 7500 (6 jobs) These jobs evaluate Chains Controller metrics to identify performance regressions between OpenShift Pipelines versions. Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
WalkthroughThe PR adds 24 new downstream performance test jobs to the CI pipeline configuration for Tekton Bigbang scenarios across deployment versions 1.21 and 1.22, with varying concurrency scales (2500, 5000, 7500), HA controller configurations, and QBT API/threading tuning parameters. ChangesPerformance Test Job Expansion
Estimated code review effort🎯 2 (Simple) | ⏱️ ~15 minutes 🚥 Pre-merge checks | ✅ 12✅ Passed checks (12 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
Tip 💬 Introducing Slack Agent: The best way for teams to turn conversations into code.Slack Agent is built on CodeRabbit's deep understanding of your code, so your team can collaborate across the entire SDLC without losing context.
Built for teams:
One agent for your entire SDLC. Right inside Slack. Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
|
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: siddardh-ra The full list of commands accepted by this bot can be found here. The pull request process is described here DetailsNeeds approval from an approver in each of these files:
Approvers can indicate their approval by writing |
There was a problem hiding this comment.
🧹 Nitpick comments (2)
ci-operator/config/openshift-pipelines/performance/openshift-pipelines-performance-main.yaml (2)
1466-1478: 💤 Low valueJob name suffixes (2500/5000/7500) represent derived totals, not literal
TEST_SCENARIOSvalues.The
TEST_SCENARIOSvalues are500/20,1000/20,1500/20while the names say2500,5000,7500. The totals are computed asTEST_SCENARIOS_first_field × TEST_NAMESPACE(e.g.,500 × 5 = 2500). This matches the pre-existing 1.14/1.15 convention but is easy to misread. A brief inline comment or a doc note explaining the naming convention would help future contributors avoid confusion.Also applies to: 1492-1504, 1518-1530
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@ci-operator/config/openshift-pipelines/performance/openshift-pipelines-performance-main.yaml` around lines 1466 - 1478, Add a brief inline comment near the job entries (e.g., next to the "as: max-concurrency-downstream-1-21-2500-sign-tekton-bigbang", "TEST_SCENARIOS" and "TEST_NAMESPACE" keys or at the top of the "openshift-pipelines-max-concurrency" workflow block) explaining that the job name suffix (2500/5000/7500) represents the derived total computed as TEST_SCENARIOS_first_field × TEST_NAMESPACE (for example, "500/20" × TEST_NAMESPACE=5 → 2500), and apply the same comment to the other similar blocks referenced (the sections around the other occurrences noted in the review) so future readers understand the naming convention.
1466-1543: ⚡ Quick winAll 24 new jobs are on-demand only — confirm no scheduled trigger is needed.
Every new job is
always_run: false/optional: truewith nocronfield, meaning they only run when manually triggered. This matches the existing pattern for 1.14/1.15 signing jobs, so it's likely intentional. However, since the PR goal is to detect regressions between 1.21 and 1.22, it's worth confirming that periodic automated runs are not desired here. The existing scheduled jobs for 1.21/1.22 (lines 252–391) cover themath/ standard scenario, but not the Chains signing scenario.If periodic regression detection is intended, consider adding cron expressions similar to the
max-concurrency-downstream-pipelines1-21-*group.Also applies to: 1658-1741, 1832-1927, 2024-2125
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@ci-operator/config/openshift-pipelines/performance/openshift-pipelines-performance-main.yaml` around lines 1466 - 1543, These 24 new jobs (examples: max-concurrency-downstream-1-21-2500-sign-tekton-bigbang, max-concurrency-downstream-1-22-7500-sign-tekton-bigbang) are currently manual-only (always_run: false, optional: true, no cron); decide whether they should run periodically for regression detection and if so add a cron schedule to each job (and/or flip always_run as your CI pattern requires) using the same cron expression and scheduling conventions used by the existing max-concurrency-downstream-pipelines1-21-* scheduled group so the signing-tr-tekton-bigbang scenarios run automatically.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Nitpick comments:
In
`@ci-operator/config/openshift-pipelines/performance/openshift-pipelines-performance-main.yaml`:
- Around line 1466-1478: Add a brief inline comment near the job entries (e.g.,
next to the "as: max-concurrency-downstream-1-21-2500-sign-tekton-bigbang",
"TEST_SCENARIOS" and "TEST_NAMESPACE" keys or at the top of the
"openshift-pipelines-max-concurrency" workflow block) explaining that the job
name suffix (2500/5000/7500) represents the derived total computed as
TEST_SCENARIOS_first_field × TEST_NAMESPACE (for example, "500/20" ×
TEST_NAMESPACE=5 → 2500), and apply the same comment to the other similar blocks
referenced (the sections around the other occurrences noted in the review) so
future readers understand the naming convention.
- Around line 1466-1543: These 24 new jobs (examples:
max-concurrency-downstream-1-21-2500-sign-tekton-bigbang,
max-concurrency-downstream-1-22-7500-sign-tekton-bigbang) are currently
manual-only (always_run: false, optional: true, no cron); decide whether they
should run periodically for regression detection and if so add a cron schedule
to each job (and/or flip always_run as your CI pattern requires) using the same
cron expression and scheduling conventions used by the existing
max-concurrency-downstream-pipelines1-21-* scheduled group so the
signing-tr-tekton-bigbang scenarios run automatically.
ℹ️ Review info
⚙️ Run configuration
Configuration used: Repository YAML (base), Central YAML (inherited)
Review profile: CHILL
Plan: Enterprise
Run ID: 3b122790-57b2-4d34-801f-0c706a534f73
⛔ Files ignored due to path filters (1)
ci-operator/jobs/openshift-pipelines/performance/openshift-pipelines-performance-main-presubmits.yamlis excluded by!ci-operator/jobs/**
📒 Files selected for processing (1)
ci-operator/config/openshift-pipelines/performance/openshift-pipelines-performance-main.yaml
|
/pj-rehearse pull-ci-openshift-pipelines-performance-main-max-concurrency-downstream-1-21-2500-sign-tekton-bigbang pull-ci-openshift-pipelines-performance-main-max-concurrency-downstream-1-21-2500-sign-tekton-bigbang-ha pull-ci-openshift-pipelines-performance-main-max-concurrency-downstream-1-21-2500-sign-tkn-bigbang-ha-qbt pull-ci-openshift-pipelines-performance-main-max-concurrency-downstream-1-21-2500-sign-tkn-bigbang-qbt pull-ci-openshift-pipelines-performance-main-max-concurrency-downstream-1-22-2500-sign-tekton-bigbang pull-ci-openshift-pipelines-performance-main-max-concurrency-downstream-1-22-2500-sign-tekton-bigbang-ha pull-ci-openshift-pipelines-performance-main-max-concurrency-downstream-1-22-2500-sign-tkn-bigbang-ha-qbt pull-ci-openshift-pipelines-performance-main-max-concurrency-downstream-1-22-2500-sign-tkn-bigbang-qbt |
|
@siddardh-ra: now processing your pj-rehearse request. Please allow up to 10 minutes for jobs to trigger or cancel. |
|
/pj-rehearse pull-ci-openshift-pipelines-performance-main-max-concurrency-downstream-1-22-7500-sign-tkn-bigbang-ha-qbt |
|
@siddardh-ra: now processing your pj-rehearse request. Please allow up to 10 minutes for jobs to trigger or cancel. |
|
/ok-to-test |
|
/pj-rehearse pull-ci-openshift-pipelines-performance-main-max-concurrency-downstream-1-21-2500-sign-tekton-bigbang pull-ci-openshift-pipelines-performance-main-max-concurrency-downstream-1-21-2500-sign-tekton-bigbang-ha pull-ci-openshift-pipelines-performance-main-max-concurrency-downstream-1-21-2500-sign-tkn-bigbang-ha-qbt pull-ci-openshift-pipelines-performance-main-max-concurrency-downstream-1-21-2500-sign-tkn-bigbang-qbt pull-ci-openshift-pipelines-performance-main-max-concurrency-downstream-1-22-2500-sign-tekton-bigbang pull-ci-openshift-pipelines-performance-main-max-concurrency-downstream-1-22-2500-sign-tekton-bigbang-ha pull-ci-openshift-pipelines-performance-main-max-concurrency-downstream-1-22-2500-sign-tkn-bigbang-ha-qbt pull-ci-openshift-pipelines-performance-main-max-concurrency-downstream-1-22-2500-sign-tkn-bigbang-qbt |
|
@siddardh-ra: now processing your pj-rehearse request. Please allow up to 10 minutes for jobs to trigger or cancel. |
|
/test ? |
|
@siddardh-ra: The following commands are available to trigger required jobs: The following commands are available to trigger optional jobs: Use DetailsIn response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. |
|
/pj-rehearse pull-ci-openshift-pipelines-performance-main-max-concurrency-downstream-1-21-2500-sign-tekton-bigbang pull-ci-openshift-pipelines-performance-main-max-concurrency-downstream-1-21-2500-sign-tekton-bigbang-ha pull-ci-openshift-pipelines-performance-main-max-concurrency-downstream-1-21-2500-sign-tkn-bigbang-ha-qbt pull-ci-openshift-pipelines-performance-main-max-concurrency-downstream-1-21-2500-sign-tkn-bigbang-qbt pull-ci-openshift-pipelines-performance-main-max-concurrency-downstream-1-22-2500-sign-tekton-bigbang pull-ci-openshift-pipelines-performance-main-max-concurrency-downstream-1-22-2500-sign-tekton-bigbang-ha pull-ci-openshift-pipelines-performance-main-max-concurrency-downstream-1-22-2500-sign-tkn-bigbang-ha-qbt pull-ci-openshift-pipelines-performance-main-max-concurrency-downstream-1-22-2500-sign-tkn-bigbang-qbt |
|
@siddardh-ra: now processing your pj-rehearse request. Please allow up to 10 minutes for jobs to trigger or cancel. |
|
/pj-rehearse pull-ci-openshift-pipelines-performance-main-max-concurrency-downstream-1-21-2500-sign-tekton-bigbang pull-ci-openshift-pipelines-performance-main-max-concurrency-downstream-1-21-2500-sign-tekton-bigbang-ha pull-ci-openshift-pipelines-performance-main-max-concurrency-downstream-1-21-2500-sign-tkn-bigbang-ha-qbt pull-ci-openshift-pipelines-performance-main-max-concurrency-downstream-1-21-2500-sign-tkn-bigbang-qbt pull-ci-openshift-pipelines-performance-main-max-concurrency-downstream-1-22-2500-sign-tekton-bigbang pull-ci-openshift-pipelines-performance-main-max-concurrency-downstream-1-22-2500-sign-tekton-bigbang-ha pull-ci-openshift-pipelines-performance-main-max-concurrency-downstream-1-22-2500-sign-tkn-bigbang-ha-qbt pull-ci-openshift-pipelines-performance-main-max-concurrency-downstream-1-22-2500-sign-tkn-bigbang-qbt |
|
@siddardh-ra: now processing your pj-rehearse request. Please allow up to 10 minutes for jobs to trigger or cancel. |
|
@siddardh-ra: all tests passed! Full PR test history. Your PR dashboard. DetailsInstructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. I understand the commands that are listed here. |
Added comprehensive CI jobs for Tekton Chains regression testing across versions 1.21 and 1.22 with multiple load scenarios and configurations.
Jobs added (24 total):
These jobs evaluate Chains Controller metrics to identify performance regressions between OpenShift Pipelines versions.
Summary by CodeRabbit