Skip to content

[WIP] Om phase 2 wire om reconciler#7569

Draft
p0lyn0mial wants to merge 10 commits into
openshift:mainfrom
p0lyn0mial:om-phase-2-wire-om-reconciler
Draft

[WIP] Om phase 2 wire om reconciler#7569
p0lyn0mial wants to merge 10 commits into
openshift:mainfrom
p0lyn0mial:om-phase-2-wire-om-reconciler

Conversation

@p0lyn0mial
Copy link
Copy Markdown
Contributor

What this PR does / why we need it:

Which issue(s) this PR fixes:

Fixes

Special notes for your reviewer:

Checklist:

  • Subject and description added to both, commit and PR.
  • Relevant issues have been referenced.
  • This change includes docs.
  • This change includes unit tests.

Adds an input resource initializer runnable for OpenShiftManager that discovers
input resources and wires informers, and registers it in the controller setup.

Notes: discovery is still a stub and we still need to register informer handlers and add filtering.
inputResourceDispatcher is a simple dispatcher that applies GVK scoped filters
and forwards matching events.

Each GVK has its own set of filters. Today these
may include name/namespace checks, and in the future label selectors.

Longer term, this dispatcher is expected to track which input resources are
associated with which operator.
prepares matchers to filter cluster(s) resources based on inputResources
refactors tests so that they use a common function for getting a RESTMapper
registers an event handler for an informer per gvk and
passed evnents to the event dispatcher
…cher.eventsCh

changes the type of the chann to event.TypedGenericEvent[string]
so that we send operator name which needs to be reconciled
instead of a full object
…atcher

it allows for constructing inputResourceDispatcher without specifying filters upfront
@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai Bot commented Jan 22, 2026

Important

Review skipped

Auto reviews are limited based on label configuration.

🚫 Review skipped — only excluded labels are configured. (1)
  • do-not-merge/work-in-progress

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.


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

@openshift-merge-robot openshift-merge-robot added the needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. label Jan 22, 2026
@openshift-merge-robot
Copy link
Copy Markdown
Contributor

PR needs rebase.

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.

@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 Jan 22, 2026
@openshift-ci
Copy link
Copy Markdown
Contributor

openshift-ci Bot commented Jan 22, 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 do-not-merge/needs-area area/control-plane-operator Indicates the PR includes changes for the control plane operator - in an OCP release labels Jan 22, 2026
@openshift-ci
Copy link
Copy Markdown
Contributor

openshift-ci Bot commented Jan 22, 2026

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by: p0lyn0mial
Once this PR has been reviewed and has the lgtm label, please assign enxebre 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

@p0lyn0mial
Copy link
Copy Markdown
Contributor Author

/assign @benluddy @bertinatto @csrwng

@openshift-bot
Copy link
Copy Markdown

Stale PRs are closed after 21d of inactivity.

If this PR is still relevant, comment to refresh it or remove the stale label.
Mark the PR as fresh by commenting /remove-lifecycle stale.

If this PR is safe to close now please do so with /close.

/lifecycle stale

@openshift-ci openshift-ci Bot added the lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. label Apr 17, 2026
@openshift-bot
Copy link
Copy Markdown

Stale PRs rot after 14d of inactivity.

Mark the PR as fresh by commenting /remove-lifecycle rotten.
Rotten PRs close after an additional 7d of inactivity.

If this PR is safe to close now please do so with /close.

/lifecycle rotten
/remove-lifecycle stale

@openshift-ci openshift-ci Bot added lifecycle/rotten Denotes an issue or PR that has aged beyond stale and will be auto-closed. and removed lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. labels May 2, 2026
@openshift-ci
Copy link
Copy Markdown
Contributor

openshift-ci Bot commented May 11, 2026

@p0lyn0mial: 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/prow/unit c836567 link true /test unit
ci/prow/e2e-azure-self-managed c836567 link true /test e2e-azure-self-managed
ci/prow/verify-workflows c836567 link true /test verify-workflows
ci/prow/security c836567 link true /test security

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.

@hypershift-jira-solve-ci
Copy link
Copy Markdown

The analysis is complete. Here is the report:

Test Failure Analysis Complete

Job Information

  • Prow Job: pull-ci-openshift-hypershift-main-security
  • Build ID: 2053894841112203264
  • Job Type: presubmit
  • Target: security
  • PR: [WIP] Om phase 2 wire om reconciler #7569 (c836567ec9e109125816b9bc57a5a653f56c5fa0)
  • Base: main (f16ca0d22941d58a170aaa4b1471b1456017c7c8)
  • State: failure
  • Duration: ~28 seconds (17:47:44Z → 17:48:12Z)
  • Cluster: build01

Test Failure Analysis

Error

CONFLICT (add/add): Merge conflict in control-plane-operator/controllers/openshiftmanager/input_resource_initializer.go
CONFLICT (add/add): Merge conflict in control-plane-operator/controllers/openshiftmanager/input_resource_initializer_test.go
CONFLICT (content): Merge conflict in control-plane-operator/controllers/openshiftmanager/openshiftmanager_controller.go
CONFLICT (content): Merge conflict in go.mod
CONFLICT (content): Merge conflict in go.sum
CONFLICT (content): Merge conflict in vendor/modules.txt
Automatic merge failed; fix conflicts and then commit the result.
# Error: exit status 1

Summary

The security CI job failed immediately during the source code clone/merge phase, before any security scanning could execute. Prow attempted to merge PR #7569 branch (c836567ec9e109125816b9bc57a5a653f56c5fa0) into the main base branch (f16ca0d22941d58a170aaa4b1471b1456017c7c8), but git encountered merge conflicts in 6 files. The job aborted with exit status 1 after only 28 seconds. This is not a product bug or a security scan failure — the PR branch is out of date with main and has conflicting changes in the openshiftmanager controller package and dependency files.

Root Cause

The PR branch for #7569 ("[WIP] Om phase 2 wire om reconciler") has diverged from the main branch and cannot be automatically merged. The conflicts are in two categories:

  1. Source code conflicts (add/add and content): Both the PR and main have modified files in the control-plane-operator/controllers/openshiftmanager/ package. Specifically:

    • input_resource_initializer.goadd/add conflict: both branches added this file independently with different content
    • input_resource_initializer_test.goadd/add conflict: same issue, both branches created this test file
    • openshiftmanager_controller.gocontent conflict: both branches modified this existing file in incompatible ways
  2. Dependency conflicts: go.mod, go.sum, and vendor/modules.txt all have content conflicts, indicating the PR and main have introduced different or overlapping dependency changes.

The base branch HEAD is at commit f16ca0d22 ("Merge pull request #8478 from bryan-cox/update-agents-on-webhook"), meaning recent merges to main (likely PR #8478 or related PRs) touched the same openshiftmanager package that PR #7569 modifies. Since the PR is marked [WIP], it likely hasn't been rebased recently.

No CI steps, security scans, or tests were executed — the failure is entirely in the pre-test git merge phase.

Recommendations
  1. Rebase the PR branch onto current main: Run git fetch origin && git rebase origin/main on the PR branch and resolve all 6 merge conflicts manually.
  2. Resolve source conflicts in openshiftmanager package: Pay particular attention to the input_resource_initializer.go and input_resource_initializer_test.go files — these are add/add conflicts, meaning main now has its own versions of these files (likely from PR NO-JIRA: Document CEL over webhooks policy for AI agents #8478 or similar). The PR author needs to integrate their changes with whatever was merged.
  3. Re-vendor dependencies: After resolving go.mod conflicts, run go mod tidy && go mod vendor to regenerate go.sum and vendor/modules.txt cleanly.
  4. Force-push the rebased branch to trigger a new CI run.
  5. Since this is a [WIP] PR, consider periodically rebasing against main to avoid accumulating large merge conflicts.
Evidence
Evidence Detail
Failure phase Git clone/merge (pre-test) — no CI steps executed
Job duration ~28 seconds (entire run was just the failed merge attempt)
Conflicting files 6 files across source code and dependencies
Conflict type (source) add/add in input_resource_initializer.go, input_resource_initializer_test.go; content in openshiftmanager_controller.go
Conflict type (deps) content in go.mod, go.sum, vendor/modules.txt
PR HEAD c836567ec9e109125816b9bc57a5a653f56c5fa0
Base HEAD f16ca0d22941d58a170aaa4b1471b1456017c7c8 (Merge PR #8478 update-agents-on-webhook)
Final SHA Empty (merge never completed)
finished.json {"passed": false, "result": "FAILURE"}

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

Labels

area/control-plane-operator Indicates the PR includes changes for the control plane operator - in an OCP release do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. lifecycle/rotten Denotes an issue or PR that has aged beyond stale and will be auto-closed. needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants