Skip to content

*: proposed follow-ups after cluster deletion investigation#8422

Closed
stevekuznetsov wants to merge 3 commits intoopenshift:mainfrom
stevekuznetsov:skuznets/incident-followups
Closed

*: proposed follow-ups after cluster deletion investigation#8422
stevekuznetsov wants to merge 3 commits intoopenshift:mainfrom
stevekuznetsov:skuznets/incident-followups

Conversation

@stevekuznetsov
Copy link
Copy Markdown
Contributor

@stevekuznetsov stevekuznetsov commented May 5, 2026

control-plane-operator: signal that we're giving up on deletion

When the CPO decides to give up on deleting cloud resources, it emits a
log but otherwise does not expose this behavior through conditions,
making it hard to know that this happened.

Signed-off-by: Steve Kuznetsov stekuznetsov@microsoft.com


hypershift-operator: emit deletion progress condition

Instead of putting deletion progress into logs, where it's hard to
notice and spammy, present a user-facing condition that tracks the
phases. While doing that, improve the Namespace deletion code to be more
verbose. No top-level Namespace deletion condition seems to exist, so
cherry-pick a few we know are useful to highlight. We can always add
more later.

Signed-off-by: Steve Kuznetsov stekuznetsov@microsoft.com


*: remove low-quality logs

These log messages provide no clear information and are emitted
unconditionally, leading any log period from their controllers to be
full of them.

Signed-off-by: Steve Kuznetsov stekuznetsov@microsoft.com


Summary by CodeRabbit

  • New Features

    • Added an explicit "deleting" HostedCluster status condition and richer deletion progress updates that report each deletion phase and include namespace phase and blocker details.
  • Bug Fixes

    • Cloud resource deletion timeouts are surfaced as a distinct status to stop indefinite retries and reflect timeout state.
  • Chores

    • Removed redundant informational log messages to reduce control-plane log noise.

@openshift-merge-bot
Copy link
Copy Markdown
Contributor

Pipeline controller notification
This repo is configured to use the pipeline controller. Second-stage tests will be triggered either automatically or after lgtm label is added, depending on the repository configuration. The pipeline controller will automatically detect which contexts are required and will utilize /test Prow commands to trigger the second stage.

For optional jobs, comment /test ? to see a list of all defined jobs. To trigger manually all jobs from second stage use /pipeline required command.

This repository is configured in: LGTM mode

@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai Bot commented May 5, 2026

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

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

Review profile: CHILL

Plan: Enterprise

Run ID: a0475b33-7180-4c13-b1a2-765dd137081d

📥 Commits

Reviewing files that changed from the base of the PR and between e63a899 and debced8.

⛔ Files ignored due to path filters (3)
  • docs/content/reference/aggregated-docs.md is excluded by !docs/content/reference/aggregated-docs.md
  • docs/content/reference/api.md is excluded by !docs/content/reference/api.md
  • vendor/github.com/openshift/hypershift/api/hypershift/v1beta1/hostedcluster_conditions.go is excluded by !vendor/**, !**/vendor/**
📒 Files selected for processing (19)
  • api/hypershift/v1beta1/hostedcluster_conditions.go
  • control-plane-operator/controllers/awsprivatelink/awsprivatelink_controller.go
  • control-plane-operator/controllers/gcpprivateserviceconnect/observer.go
  • control-plane-operator/hostedclusterconfigoperator/controllers/drainer/drainer.go
  • control-plane-operator/hostedclusterconfigoperator/controllers/globalps/globalps.go
  • control-plane-operator/hostedclusterconfigoperator/controllers/hcpstatus/hcpstatus.go
  • control-plane-operator/hostedclusterconfigoperator/controllers/inplaceupgrader/inplaceupgrader.go
  • control-plane-operator/hostedclusterconfigoperator/controllers/machine/machine.go
  • control-plane-operator/hostedclusterconfigoperator/controllers/node/node.go
  • control-plane-operator/hostedclusterconfigoperator/controllers/nodecount/controller.go
  • control-plane-operator/hostedclusterconfigoperator/controllers/resources/kas/admissionpolicies.go
  • control-plane-operator/hostedclusterconfigoperator/controllers/resources/registry/admissionpolicies.go
  • control-plane-operator/hostedclusterconfigoperator/controllers/resources/resources.go
  • hypershift-operator/controllers/hostedcluster/hostedcluster_controller.go
  • hypershift-operator/controllers/hostedclustersizing/hostedclustersizing_validation_controller.go
  • hypershift-operator/controllers/nodepool/nodepool_controller.go
  • hypershift-operator/controllers/platform/aws/controller.go
  • hypershift-operator/controllers/scheduler/aws/autoscaler.go
  • hypershift-operator/controllers/scheduler/azure/controller.go
💤 Files with no reviewable changes (17)
  • control-plane-operator/hostedclusterconfigoperator/controllers/resources/registry/admissionpolicies.go
  • control-plane-operator/hostedclusterconfigoperator/controllers/nodecount/controller.go
  • hypershift-operator/controllers/scheduler/azure/controller.go
  • control-plane-operator/hostedclusterconfigoperator/controllers/inplaceupgrader/inplaceupgrader.go
  • control-plane-operator/hostedclusterconfigoperator/controllers/drainer/drainer.go
  • control-plane-operator/hostedclusterconfigoperator/controllers/machine/machine.go
  • control-plane-operator/controllers/gcpprivateserviceconnect/observer.go
  • control-plane-operator/hostedclusterconfigoperator/controllers/node/node.go
  • hypershift-operator/controllers/nodepool/nodepool_controller.go
  • control-plane-operator/hostedclusterconfigoperator/controllers/hcpstatus/hcpstatus.go
  • hypershift-operator/controllers/platform/aws/controller.go
  • control-plane-operator/hostedclusterconfigoperator/controllers/globalps/globalps.go
  • control-plane-operator/hostedclusterconfigoperator/controllers/resources/resources.go
  • hypershift-operator/controllers/hostedclustersizing/hostedclustersizing_validation_controller.go
  • control-plane-operator/controllers/awsprivatelink/awsprivatelink_controller.go
  • control-plane-operator/hostedclusterconfigoperator/controllers/resources/kas/admissionpolicies.go
  • hypershift-operator/controllers/scheduler/aws/autoscaler.go
🚧 Files skipped from review as they are similar to previous changes (1)
  • api/hypershift/v1beta1/hostedcluster_conditions.go

📝 Walkthrough

Walkthrough

Introduces a new exported ConditionType HostedClusterDeleting and several deletion-phase Reason constants (including CloudResourcesDeletionTimedOutReason and DeletionCompletedReason). The HostedCluster controller ensures the HostedClusterDeleting condition exists on each reconcile, adds a local setDeletionProgress helper to update deletion-phase Reason/Message while avoiding redundant updates, and emits progress for CAPI, AWS endpoint service, GCP PSC, HostedControlPlane, and namespace phases (including detailed namespace blocking info). The HostedControlPlane controller treats deletion timeout as CloudResourcesDeletionTimedOutReason and records CloudResourcesDestroyed accordingly. Many controllers had initial "Reconciling" logs removed.

Sequence Diagram(s)

sequenceDiagram
    participant HC as HostedCluster Controller
    participant API as API Status
    participant Resources as Cloud Resources (CAPI, Endpoint, PSC, HCP)
    participant NS as Namespace (Control Plane)

    HC->>API: Ensure HostedClusterDeleting = False (AsExpectedReason)
    Note over HC,Resources: Deletion sequence starts

    HC->>Resources: Wait for CAPI deletion
    HC->>API: setDeletionProgress(DeletionWaitingForCAPIClusterDeletion, msg)

    HC->>Resources: Wait for Endpoint Service deletion
    HC->>API: setDeletionProgress(DeletionWaitingForEndpointServiceDeletion, msg)

    HC->>Resources: Wait for GCP Private Connect deletion
    HC->>API: setDeletionProgress(DeletionWaitingForPrivateConnectDeletion, msg)

    HC->>Resources: Wait for HostedControlPlane deletion
    HC->>API: setDeletionProgress(DeletionWaitingForControlPlaneDeletion, msg)

    HC->>NS: Fetch Namespace status & blocking conditions
    alt Namespace deletion blocked
        HC->>API: setDeletionProgress(DeletionWaitingForNamespaceDeletion, detailed msg)
    else Namespace deletion timed out
        HC->>API: update CloudResourcesDestroyed (CloudResourcesDeletionTimedOutReason)
    else Namespace removed
        HC->>API: setDeletionProgress(DeletionCompleted, "Deletion completed")
    end
Loading
🚥 Pre-merge checks | ✅ 12
✅ Passed checks (12 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title '*: proposed follow-ups after cluster deletion investigation' clearly summarizes the main change—a set of improvements following cluster deletion investigation that span multiple components.
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 This PR does not add or modify any Ginkgo test definitions (It, Describe, Context, When). The check is not applicable to this PR's scope.
Test Structure And Quality ✅ Passed PR does not modify any test files. The check requires reviewing Ginkgo test code, but all changes are to production code (controllers, conditions, and log removal). Not applicable.
Microshift Test Compatibility ✅ Passed This PR adds 4 new Ginkgo e2e tests. None import MicroShift-incompatible APIs - they only use hypershift v1beta1 and standard Kubernetes APIs.
Single Node Openshift (Sno) Test Compatibility ✅ Passed This PR does not add any new Ginkgo e2e tests. All changes are to controller implementations and API definitions. The SNO compatibility check is not applicable.
Topology-Aware Scheduling Compatibility ✅ Passed No scheduling constraints. Adds deletion progress conditions and removes logging. No affinity, tolerations, selectors, topology constraints, PDBs affecting OpenShift topologies.
Ote Binary Stdout Contract ✅ Passed PR does not violate OTE contract. No process-level code modified. All changes in controller reconciliation. Removes unconditional logs (improves contract), adds only const definitions (no stdout).
Ipv6 And Disconnected Network Test Compatibility ✅ Passed No Ginkgo e2e tests are added in this PR. The PR contains only API type definitions and controller/operator code changes. The custom check is not applicable.

✏️ 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


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

@openshift-ci openshift-ci Bot added area/api Indicates the PR includes changes for the API area/control-plane-operator Indicates the PR includes changes for the control plane operator - in an OCP release area/hypershift-operator Indicates the PR includes changes for the hypershift operator and API - outside an OCP release area/platform/aws PR/issue for AWS (AWSPlatform) platform area/platform/azure PR/issue for Azure (AzurePlatform) platform area/platform/gcp PR/issue for GCP (GCPPlatform) platform and removed do-not-merge/needs-area labels May 5, 2026
@openshift-ci
Copy link
Copy Markdown
Contributor

openshift-ci Bot commented May 5, 2026

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by: stevekuznetsov
Once this PR has been reviewed and has the lgtm label, please assign csrwng for approval. For more information see the Code Review Process.

The full list of commands accepted by this bot can be found 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 requested review from devguyio and enxebre May 5, 2026 12:41
When the CPO decides to give up on deleting cloud resources, it emits a
log but otherwise does not expose this behavior through conditions,
making it hard to know that this happened.

Signed-off-by: Steve Kuznetsov <stekuznetsov@microsoft.com>
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.

Actionable comments posted: 1

🤖 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.

Inline comments:
In
`@control-plane-operator/controllers/hostedcontrolplane/hostedcontrolplane_controller.go`:
- Around line 2434-2439: The log message in hostedcontrolplane_controller.go
inside the condition checking resourcesDestroyedCond (where Status ==
metav1.ConditionFalse and Reason is CloudResourcesCleanupSkippedReason or
CloudResourcesDeletionTimedOutReason) is always "Cleanup has been skipped" which
is incorrect for the timeout case; update the log in that block (the code around
resourcesDestroyedCond handling in the Reconcile function) to inspect
resourcesDestroyedCond.Reason and log a precise terminal message such as
"Cleanup has been skipped" when Reason == CloudResourcesCleanupSkippedReason and
"Cleanup timed out" (or similar) when Reason ==
CloudResourcesDeletionTimedOutReason, ensuring you still include
resourcesDestroyedCond.Message for context.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

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

Review profile: CHILL

Plan: Enterprise

Run ID: ed0cae26-f1bf-447e-b7f1-e65403530ad0

📥 Commits

Reviewing files that changed from the base of the PR and between 3fc6979 and 2a9cae1.

⛔ Files ignored due to path filters (1)
  • vendor/github.com/openshift/hypershift/api/hypershift/v1beta1/hostedcluster_conditions.go is excluded by !vendor/**, !**/vendor/**
📒 Files selected for processing (20)
  • api/hypershift/v1beta1/hostedcluster_conditions.go
  • control-plane-operator/controllers/awsprivatelink/awsprivatelink_controller.go
  • control-plane-operator/controllers/gcpprivateserviceconnect/observer.go
  • control-plane-operator/controllers/hostedcontrolplane/hostedcontrolplane_controller.go
  • control-plane-operator/hostedclusterconfigoperator/controllers/drainer/drainer.go
  • control-plane-operator/hostedclusterconfigoperator/controllers/globalps/globalps.go
  • control-plane-operator/hostedclusterconfigoperator/controllers/hcpstatus/hcpstatus.go
  • control-plane-operator/hostedclusterconfigoperator/controllers/inplaceupgrader/inplaceupgrader.go
  • control-plane-operator/hostedclusterconfigoperator/controllers/machine/machine.go
  • control-plane-operator/hostedclusterconfigoperator/controllers/node/node.go
  • control-plane-operator/hostedclusterconfigoperator/controllers/nodecount/controller.go
  • control-plane-operator/hostedclusterconfigoperator/controllers/resources/kas/admissionpolicies.go
  • control-plane-operator/hostedclusterconfigoperator/controllers/resources/registry/admissionpolicies.go
  • control-plane-operator/hostedclusterconfigoperator/controllers/resources/resources.go
  • hypershift-operator/controllers/hostedcluster/hostedcluster_controller.go
  • hypershift-operator/controllers/hostedclustersizing/hostedclustersizing_validation_controller.go
  • hypershift-operator/controllers/nodepool/nodepool_controller.go
  • hypershift-operator/controllers/platform/aws/controller.go
  • hypershift-operator/controllers/scheduler/aws/autoscaler.go
  • hypershift-operator/controllers/scheduler/azure/controller.go
💤 Files with no reviewable changes (17)
  • hypershift-operator/controllers/scheduler/azure/controller.go
  • hypershift-operator/controllers/nodepool/nodepool_controller.go
  • control-plane-operator/hostedclusterconfigoperator/controllers/machine/machine.go
  • control-plane-operator/hostedclusterconfigoperator/controllers/node/node.go
  • control-plane-operator/hostedclusterconfigoperator/controllers/drainer/drainer.go
  • control-plane-operator/hostedclusterconfigoperator/controllers/inplaceupgrader/inplaceupgrader.go
  • hypershift-operator/controllers/scheduler/aws/autoscaler.go
  • control-plane-operator/hostedclusterconfigoperator/controllers/hcpstatus/hcpstatus.go
  • control-plane-operator/hostedclusterconfigoperator/controllers/resources/registry/admissionpolicies.go
  • control-plane-operator/controllers/gcpprivateserviceconnect/observer.go
  • hypershift-operator/controllers/hostedclustersizing/hostedclustersizing_validation_controller.go
  • control-plane-operator/hostedclusterconfigoperator/controllers/resources/resources.go
  • control-plane-operator/controllers/awsprivatelink/awsprivatelink_controller.go
  • control-plane-operator/hostedclusterconfigoperator/controllers/nodecount/controller.go
  • hypershift-operator/controllers/platform/aws/controller.go
  • control-plane-operator/hostedclusterconfigoperator/controllers/resources/kas/admissionpolicies.go
  • control-plane-operator/hostedclusterconfigoperator/controllers/globalps/globalps.go

Comment on lines +2434 to 2439
// check if cleanup has been skipped or timed out
if resourcesDestroyedCond != nil && resourcesDestroyedCond.Status == metav1.ConditionFalse &&
resourcesDestroyedCond.Reason == string(hyperv1.CloudResourcesCleanupSkippedReason) {
(resourcesDestroyedCond.Reason == string(hyperv1.CloudResourcesCleanupSkippedReason) ||
resourcesDestroyedCond.Reason == string(hyperv1.CloudResourcesDeletionTimedOutReason)) {
log.Info("Cleanup has been skipped", "reason", resourcesDestroyedCond.Message)
return true, nil
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🟡 Minor | ⚡ Quick win

Make terminal-state log message accurate for timeout path.

This branch now handles both skipped and timed-out cleanup, but the log still says cleanup was skipped, which can mislead triage.

Suggested patch
-		log.Info("Cleanup has been skipped", "reason", resourcesDestroyedCond.Message)
+		log.Info("Cloud resource cleanup reached terminal state",
+			"reason", resourcesDestroyedCond.Reason,
+			"message", resourcesDestroyedCond.Message)
🤖 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
`@control-plane-operator/controllers/hostedcontrolplane/hostedcontrolplane_controller.go`
around lines 2434 - 2439, The log message in hostedcontrolplane_controller.go
inside the condition checking resourcesDestroyedCond (where Status ==
metav1.ConditionFalse and Reason is CloudResourcesCleanupSkippedReason or
CloudResourcesDeletionTimedOutReason) is always "Cleanup has been skipped" which
is incorrect for the timeout case; update the log in that block (the code around
resourcesDestroyedCond handling in the Reconcile function) to inspect
resourcesDestroyedCond.Reason and log a precise terminal message such as
"Cleanup has been skipped" when Reason == CloudResourcesCleanupSkippedReason and
"Cleanup timed out" (or similar) when Reason ==
CloudResourcesDeletionTimedOutReason, ensuring you still include
resourcesDestroyedCond.Message for context.

@stevekuznetsov stevekuznetsov force-pushed the skuznets/incident-followups branch 2 times, most recently from d0aaacb to e63a899 Compare May 5, 2026 12:47
@codecov
Copy link
Copy Markdown

codecov Bot commented May 5, 2026

Codecov Report

❌ Patch coverage is 9.30233% with 78 lines in your changes missing coverage. Please review.
✅ Project coverage is 37.37%. Comparing base (ad88854) to head (debced8).
⚠️ Report is 17 commits behind head on main.

Files with missing lines Patch % Lines
...trollers/hostedcluster/hostedcluster_controller.go 10.81% 65 Missing and 1 partial ⚠️
...ostedcontrolplane/hostedcontrolplane_controller.go 0.00% 12 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##             main    #8422      +/-   ##
==========================================
+ Coverage   37.23%   37.37%   +0.13%     
==========================================
  Files         752      751       -1     
  Lines       91829    91842      +13     
==========================================
+ Hits        34195    34324     +129     
+ Misses      54993    54882     -111     
+ Partials     2641     2636       -5     
Files with missing lines Coverage Δ
...ollers/awsprivatelink/awsprivatelink_controller.go 18.78% <ø> (-0.17%) ⬇️
...r/controllers/gcpprivateserviceconnect/observer.go 61.36% <ø> (-1.68%) ⬇️
...usterconfigoperator/controllers/drainer/drainer.go 0.00% <ø> (ø)
...terconfigoperator/controllers/globalps/globalps.go 86.64% <ø> (+0.42%) ⬆️
...rconfigoperator/controllers/hcpstatus/hcpstatus.go 0.00% <ø> (ø)
...tor/controllers/inplaceupgrader/inplaceupgrader.go 57.16% <ø> (+0.10%) ⬆️
...usterconfigoperator/controllers/machine/machine.go 67.00% <ø> (-0.17%) ⬇️
...stedclusterconfigoperator/controllers/node/node.go 38.70% <ø> (+0.41%) ⬆️
...configoperator/controllers/nodecount/controller.go 0.00% <ø> (ø)
...tor/controllers/resources/kas/admissionpolicies.go 9.25% <ø> (+0.16%) ⬆️
... and 9 more

... and 32 files with indirect coverage changes

Flag Coverage Δ
cmd-support 32.56% <ø> (+0.49%) ⬆️
cpo-hostedcontrolplane 36.45% <0.00%> (-0.05%) ⬇️
cpo-other 37.70% <ø> (-0.04%) ⬇️
hypershift-operator 47.77% <10.81%> (-0.09%) ⬇️
other 27.77% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

Instead of putting deletion progress into logs, where it's hard to
notice and spammy, present a user-facing condition that tracks the
phases. While doing that, improve the Namespace deletion code to be more
verbose. No top-level Namespace deletion condition seems to exist, so
cherry-pick a few we know are useful to highlight. We can always add
more later.

Signed-off-by: Steve Kuznetsov <stekuznetsov@microsoft.com>
These log messages provide no clear information and are emitted
unconditionally, leading any log period from their controllers to be
full of them.

Signed-off-by: Steve Kuznetsov <stekuznetsov@microsoft.com>
@stevekuznetsov stevekuznetsov force-pushed the skuznets/incident-followups branch from e63a899 to debced8 Compare May 5, 2026 13:22
@openshift-ci openshift-ci Bot added the area/documentation Indicates the PR includes changes for documentation label May 5, 2026
@openshift-ci
Copy link
Copy Markdown
Contributor

openshift-ci Bot commented May 5, 2026

@stevekuznetsov: all tests passed!

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.

@csrwng
Copy link
Copy Markdown
Contributor

csrwng commented May 5, 2026

/close

opened separate PRs for each commit:
#8426
#8427
#8428

@openshift-ci openshift-ci Bot closed this May 5, 2026
@openshift-ci
Copy link
Copy Markdown
Contributor

openshift-ci Bot commented May 5, 2026

@csrwng: Closed this PR.

Details

In response to this:

/close

opened separate PRs for each commit:
#8426
#8427
#8428

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.

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

Labels

area/api Indicates the PR includes changes for the API area/control-plane-operator Indicates the PR includes changes for the control plane operator - in an OCP release area/documentation Indicates the PR includes changes for documentation area/hypershift-operator Indicates the PR includes changes for the hypershift operator and API - outside an OCP release area/platform/aws PR/issue for AWS (AWSPlatform) platform area/platform/azure PR/issue for Azure (AzurePlatform) platform area/platform/gcp PR/issue for GCP (GCPPlatform) platform

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants