Skip to content

DNM Set gc-metrics=true for control-plane chain workloads#79346

Open
mohit-sheth wants to merge 1 commit into
openshift:mainfrom
mohit-sheth:gc-multus-true
Open

DNM Set gc-metrics=true for control-plane chain workloads#79346
mohit-sheth wants to merge 1 commit into
openshift:mainfrom
mohit-sheth:gc-multus-true

Conversation

@mohit-sheth
Copy link
Copy Markdown
Member

@mohit-sheth mohit-sheth commented May 15, 2026

Enable gc-metrics collection across all steps in the openshift-qe-control-plane chain: cluster-density-v2, node-density-cni, crd-scale, node-density, and udn-density-pods.

gc-metrics enabled for control-plane chain workloads

This PR enables garbage collection metrics collection by default across all performance test steps in the openshift-qe control-plane chain. The affected workloads are:

  • cluster-density-v2: GC_METRICS environment variable changed from false to true by default
  • node-density-cni: GC_METRICS environment variable changed from false to true by default
  • crd-scale: --gc-metrics flag changed from false to true in the kube-burner invocation
  • node-density: --gc-metrics flag changed from false to true in the workload runner
  • udn-density-pods: --gc-metrics flag changed from false to true in the workload runner

Impact: Garbage collection metrics will now be collected by default during these performance tests, enabling better observability of GC behavior across control-plane workloads. This can be disabled on a per-invocation basis if needed by setting the environment variable or flag to false.

Enable gc-metrics collection across all steps in the
openshift-qe-control-plane chain: cluster-density-v2, node-density-cni,
crd-scale, node-density, and udn-density-pods.

Signed-off-by: Mohit Sheth <msheth@redhat.com>
@openshift-ci
Copy link
Copy Markdown
Contributor

openshift-ci Bot commented May 15, 2026

Skipping CI for Draft Pull Request.
If you want CI signal for your change, please convert it to an actual PR.
You can still manually trigger a test run with /test all

@openshift-ci openshift-ci Bot added the do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. label May 15, 2026
@mohit-sheth mohit-sheth marked this pull request as ready for review May 15, 2026 14:44
@openshift-ci openshift-ci Bot removed the do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. label May 15, 2026
@mohit-sheth
Copy link
Copy Markdown
Member Author

/hold

@openshift-ci openshift-ci Bot added the do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command. label May 15, 2026
@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai Bot commented May 15, 2026

Walkthrough

This PR enables garbage collection metrics collection by default across five OpenShift QE performance test steps. Environment variable defaults in YAML step definitions are toggled from "false" to "true", and shell command scripts pass --gc-metrics=true to the workload runner instead of --gc-metrics=false.

Changes

GC Metrics Enablement

Layer / File(s) Summary
GC metrics enabled in YAML step definitions
ci-operator/step-registry/openshift-qe/cluster-density-v2/openshift-qe-cluster-density-v2-ref.yaml, ci-operator/step-registry/openshift-qe/node-density-cni/openshift-qe-node-density-cni-ref.yaml
GC_METRICS environment variable defaults changed from "false" to "true". Documentation updated to reflect that metrics collection is enabled by default and can be disabled by setting the variable to false.
GC metrics enabled in shell command scripts
ci-operator/step-registry/openshift-qe/crd-scale/openshift-qe-crd-scale-commands.sh, ci-operator/step-registry/openshift-qe/node-density/openshift-qe-node-density-commands.sh, ci-operator/step-registry/openshift-qe/udn-density-pods/openshift-qe-udn-density-pods-commands.sh
EXTRA_FLAGS assignments updated to pass --gc-metrics=true to kube-burner workload invocations across three performance test variants.

🎯 2 (Simple) | ⏱️ ~8 minutes

🚥 Pre-merge checks | ✅ 12
✅ Passed checks (12 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
Stable And Deterministic Test Names ✅ Passed Custom check for stable Ginkgo test names is not applicable to this PR. The PR contains only YAML configuration files and shell scripts for CI/CD pipelines, with no Ginkgo test definitions.
Test Structure And Quality ✅ Passed Check requests review of Ginkgo test code, but this PR modifies only CI configuration (YAML) and shell scripts. No Ginkgo tests exist, making the check not applicable.
Microshift Test Compatibility ✅ Passed This PR does not add new Ginkgo e2e tests. It only modifies CI operator step registry configuration and shell scripts to enable gc-metrics collection. The check is not applicable.
Single Node Openshift (Sno) Test Compatibility ✅ Passed No new Ginkgo e2e tests added. PR only modifies CI/CD workflow configs to enable gc-metrics. SNO compatibility check applies only to new tests, not applicable here.
Topology-Aware Scheduling Compatibility ✅ Passed Changes are to CI step registry files, not deployment manifests or operator code. No pod scheduling constraints introduced.
Ote Binary Stdout Contract ✅ Passed The OTE Binary Stdout Contract check does not apply. Changes only modify step-registry YAML configs and bash wrapper scripts, not Go binaries or test code that outputs JSON to openshift-tests.
Ipv6 And Disconnected Network Test Compatibility ✅ Passed PR modifies only CI infrastructure configuration files and shell scripts, not Ginkgo e2e test code. Custom check is not applicable.
Title check ✅ Passed The title clearly describes the main change: enabling gc-metrics for control-plane chain workloads, which aligns with the PR's objective to enable gc-metrics collection across five steps.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

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.

  • Generate code and open pull requests
  • Plan features and break down work
  • Investigate incidents and troubleshoot customer tickets together
  • Automate recurring tasks and respond to alerts with triggers
  • Summarize progress and report instantly

Built for teams:

  • Shared memory across your entire org—no repeating context
  • Per-thread sandboxes to safely plan and execute work
  • Governance built-in—scoped access, auditability, and budget controls

One agent for your entire SDLC. Right inside Slack.

👉 Get started


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.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@openshift-ci
Copy link
Copy Markdown
Contributor

openshift-ci Bot commented May 15, 2026

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: mohit-sheth

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Details Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@openshift-ci openshift-ci Bot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label May 15, 2026
@openshift-ci openshift-ci Bot requested review from mukrishn and vishnuchalla May 15, 2026 14:45
@mohit-sheth
Copy link
Copy Markdown
Member Author

/pj-rehearse periodic-ci-openshift-eng-ocp-qe-perfscale-ci-main-aws-4.22-nightly-x86-payload-control-plane-6nodes

@openshift-merge-bot
Copy link
Copy Markdown
Contributor

@mohit-sheth: now processing your pj-rehearse request. Please allow up to 10 minutes for jobs to trigger or cancel.

@mohit-sheth
Copy link
Copy Markdown
Member Author

/pj-rehearse periodic-ci-openshift-eng-ocp-qe-perfscale-ci-main-aws-4.22-nightly-x86-payload-control-plane-6nodes

@openshift-merge-bot
Copy link
Copy Markdown
Contributor

@mohit-sheth: now processing your pj-rehearse request. Please allow up to 10 minutes for jobs to trigger or cancel.

@openshift-merge-bot
Copy link
Copy Markdown
Contributor

[REHEARSALNOTIFIER]
@mohit-sheth: the pj-rehearse plugin accommodates running rehearsal tests for the changes in this PR. Expand 'Interacting with pj-rehearse' for usage details. The following rehearsable tests have been affected by this change:

Test name Repo Type Reason
pull-ci-openshift-cluster-network-operator-master-qe-perfscale-aws-ovn-medium-cluster-density openshift/cluster-network-operator presubmit Registry content changed
pull-ci-openshift-cluster-network-operator-master-qe-perfscale-aws-ovn-small-cluster-density openshift/cluster-network-operator presubmit Registry content changed
pull-ci-openshift-cluster-network-operator-release-5.1-qe-perfscale-aws-ovn-medium-cluster-density openshift/cluster-network-operator presubmit Registry content changed
pull-ci-openshift-cluster-network-operator-release-5.1-qe-perfscale-aws-ovn-small-cluster-density openshift/cluster-network-operator presubmit Registry content changed
pull-ci-openshift-cluster-network-operator-release-5.0-qe-perfscale-aws-ovn-medium-cluster-density openshift/cluster-network-operator presubmit Registry content changed
pull-ci-openshift-cluster-network-operator-release-5.0-qe-perfscale-aws-ovn-small-cluster-density openshift/cluster-network-operator presubmit Registry content changed
pull-ci-openshift-cluster-network-operator-release-4.23-qe-perfscale-aws-ovn-medium-cluster-density openshift/cluster-network-operator presubmit Registry content changed
pull-ci-openshift-cluster-network-operator-release-4.23-qe-perfscale-aws-ovn-small-cluster-density openshift/cluster-network-operator presubmit Registry content changed
pull-ci-openshift-cluster-network-operator-release-4.22-qe-perfscale-aws-ovn-medium-cluster-density openshift/cluster-network-operator presubmit Registry content changed
pull-ci-openshift-cluster-network-operator-release-4.22-qe-perfscale-aws-ovn-small-cluster-density openshift/cluster-network-operator presubmit Registry content changed
pull-ci-openshift-cluster-network-operator-release-4.21-qe-perfscale-aws-ovn-medium-cluster-density openshift/cluster-network-operator presubmit Registry content changed
pull-ci-openshift-cluster-network-operator-release-4.21-qe-perfscale-aws-ovn-small-cluster-density openshift/cluster-network-operator presubmit Registry content changed
pull-ci-openshift-cluster-network-operator-release-4.20-qe-perfscale-aws-ovn-medium-cluster-density openshift/cluster-network-operator presubmit Registry content changed
pull-ci-openshift-cluster-network-operator-release-4.20-qe-perfscale-aws-ovn-small-cluster-density openshift/cluster-network-operator presubmit Registry content changed
pull-ci-openshift-cluster-network-operator-release-4.19-qe-perfscale-aws-ovn-medium-cluster-density openshift/cluster-network-operator presubmit Registry content changed
pull-ci-openshift-cluster-network-operator-release-4.19-qe-perfscale-aws-ovn-small-cluster-density openshift/cluster-network-operator presubmit Registry content changed
pull-ci-openshift-cluster-network-operator-release-4.18-qe-perfscale-aws-ovn-medium-cluster-density openshift/cluster-network-operator presubmit Registry content changed
pull-ci-openshift-cluster-network-operator-release-4.18-qe-perfscale-aws-ovn-small-cluster-density openshift/cluster-network-operator presubmit Registry content changed
pull-ci-openshift-cluster-network-operator-release-4.17-qe-perfscale-aws-ovn-medium-cluster-density openshift/cluster-network-operator presubmit Registry content changed
pull-ci-openshift-cluster-network-operator-release-4.17-qe-perfscale-aws-ovn-small-cluster-density openshift/cluster-network-operator presubmit Registry content changed
pull-ci-openshift-cluster-network-operator-release-4.16-qe-perfscale-aws-ovn-medium-cluster-density openshift/cluster-network-operator presubmit Registry content changed
pull-ci-openshift-cluster-network-operator-release-4.16-qe-perfscale-aws-ovn-small-cluster-density openshift/cluster-network-operator presubmit Registry content changed
pull-ci-openshift-cluster-network-operator-release-4.15-qe-perfscale-aws-ovn-medium-cluster-density openshift/cluster-network-operator presubmit Registry content changed
pull-ci-openshift-cluster-network-operator-release-4.15-qe-perfscale-aws-ovn-small-cluster-density openshift/cluster-network-operator presubmit Registry content changed
pull-ci-openshift-cluster-network-operator-release-4.14-qe-perfscale-aws-ovn-medium-cluster-density openshift/cluster-network-operator presubmit Registry content changed

A total of 675 jobs have been affected by this change. The above listing is non-exhaustive and limited to 25 jobs.

A full list of affected jobs can be found here
Prior to this PR being merged, you will need to either run and acknowledge or opt to skip these rehearsals.

Interacting with pj-rehearse

Comment: /pj-rehearse to run up to 5 rehearsals
Comment: /pj-rehearse skip to opt-out of rehearsals
Comment: /pj-rehearse {test-name}, with each test separated by a space, to run one or more specific rehearsals
Comment: /pj-rehearse more to run up to 10 rehearsals
Comment: /pj-rehearse max to run up to 25 rehearsals
Comment: /pj-rehearse auto-ack to run up to 5 rehearsals, and add the rehearsals-ack label on success
Comment: /pj-rehearse list to get an up-to-date list of affected jobs
Comment: /pj-rehearse abort to abort all active rehearsals
Comment: /pj-rehearse network-access-allowed to allow rehearsals of tests that have the restrict_network_access field set to false. This must be executed by an openshift org member who is not the PR author

Once you are satisfied with the results of the rehearsals, comment: /pj-rehearse ack to unblock merge. When the rehearsals-ack label is present on your PR, merge will no longer be blocked by rehearsals.
If you would like the rehearsals-ack label removed, comment: /pj-rehearse reject to re-block merging.

@mohit-sheth mohit-sheth changed the title Set gc-metrics=true for control-plane chain workloads DNM Set gc-metrics=true for control-plane chain workloads May 15, 2026
Copy link
Copy Markdown
Contributor

@coderabbitai coderabbitai Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Caution

Some comments are outside the diff and can’t be posted inline due to platform limitations.

⚠️ Outside diff range comments (1)
ci-operator/step-registry/openshift-qe/cluster-density-v2/openshift-qe-cluster-density-v2-ref.yaml (1)

25-40: ⚠️ Potential issue | 🟡 Minor | ⚡ Quick win

Duplicate environment variable definition.

The GC environment variable is defined twice (lines 25-28 and 37-40). In YAML step registry definitions, duplicate environment variable names cause the second definition to override the first. While not introduced by this PR, this duplication should be resolved by removing one definition.

🤖 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/step-registry/openshift-qe/cluster-density-v2/openshift-qe-cluster-density-v2-ref.yaml`
around lines 25 - 40, Remove the duplicate GC environment variable entry and
keep a single GC definition (ensure the retained block has the correct
wording/typos fixed); specifically, delete one of the GC blocks so only one GC
remains alongside GC_METRICS and PROFILE_TYPE, preserving the intended default
"true" and the correct documentation text.
🤖 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.

Outside diff comments:
In
`@ci-operator/step-registry/openshift-qe/cluster-density-v2/openshift-qe-cluster-density-v2-ref.yaml`:
- Around line 25-40: Remove the duplicate GC environment variable entry and keep
a single GC definition (ensure the retained block has the correct wording/typos
fixed); specifically, delete one of the GC blocks so only one GC remains
alongside GC_METRICS and PROFILE_TYPE, preserving the intended default "true"
and the correct documentation text.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Repository YAML (base), Central YAML (inherited)

Review profile: CHILL

Plan: Enterprise

Run ID: 7ab1f35e-e0bb-487d-9cbf-b8a35c6142e2

📥 Commits

Reviewing files that changed from the base of the PR and between 0f686fb and d6ddaf0.

📒 Files selected for processing (5)
  • ci-operator/step-registry/openshift-qe/cluster-density-v2/openshift-qe-cluster-density-v2-ref.yaml
  • ci-operator/step-registry/openshift-qe/crd-scale/openshift-qe-crd-scale-commands.sh
  • ci-operator/step-registry/openshift-qe/node-density-cni/openshift-qe-node-density-cni-ref.yaml
  • ci-operator/step-registry/openshift-qe/node-density/openshift-qe-node-density-commands.sh
  • ci-operator/step-registry/openshift-qe/udn-density-pods/openshift-qe-udn-density-pods-commands.sh

@mohit-sheth
Copy link
Copy Markdown
Member Author

/pj-rehearse periodic-ci-openshift-eng-ocp-qe-perfscale-ci-main-aws-4.22-nightly-x86-payload-control-plane-6nodes

@openshift-merge-bot
Copy link
Copy Markdown
Contributor

@mohit-sheth: now processing your pj-rehearse request. Please allow up to 10 minutes for jobs to trigger or cancel.

@mohit-sheth
Copy link
Copy Markdown
Member Author

/pj-rehearse periodic-ci-openshift-eng-ocp-qe-perfscale-ci-main-aws-4.21-nightly-x86-payload-control-plane-6nodes

@openshift-merge-bot
Copy link
Copy Markdown
Contributor

@mohit-sheth: now processing your pj-rehearse request. Please allow up to 10 minutes for jobs to trigger or cancel.

@mohit-sheth
Copy link
Copy Markdown
Member Author

/pj-rehearse periodic-ci-openshift-eng-ocp-qe-perfscale-ci-main-aws-5.0-nightly-x86-payload-control-plane-6nodes

@openshift-merge-bot
Copy link
Copy Markdown
Contributor

@mohit-sheth: now processing your pj-rehearse request. Please allow up to 10 minutes for jobs to trigger or cancel.

@openshift-ci
Copy link
Copy Markdown
Contributor

openshift-ci Bot commented May 15, 2026

@mohit-sheth: The following tests failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name Commit Details Required Rerun command
ci/rehearse/periodic-ci-openshift-eng-ocp-qe-perfscale-ci-main-aws-4.21-nightly-x86-payload-control-plane-6nodes d6ddaf0 link unknown /pj-rehearse periodic-ci-openshift-eng-ocp-qe-perfscale-ci-main-aws-4.21-nightly-x86-payload-control-plane-6nodes
ci/rehearse/periodic-ci-openshift-eng-ocp-qe-perfscale-ci-main-aws-4.22-nightly-x86-payload-control-plane-6nodes d6ddaf0 link unknown /pj-rehearse periodic-ci-openshift-eng-ocp-qe-perfscale-ci-main-aws-4.22-nightly-x86-payload-control-plane-6nodes
ci/rehearse/periodic-ci-openshift-eng-ocp-qe-perfscale-ci-main-aws-5.0-nightly-x86-payload-control-plane-6nodes d6ddaf0 link unknown /pj-rehearse periodic-ci-openshift-eng-ocp-qe-perfscale-ci-main-aws-5.0-nightly-x86-payload-control-plane-6nodes

Full PR test history. Your PR dashboard.

Details

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. I understand the commands that are listed here.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

approved Indicates a PR has been approved by an approver from all required OWNERS files. do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant