Skip to content

Removal of monolithic update - #2060

Draft
jistr wants to merge 3 commits into
openstack-k8s-operators:mainfrom
jistr:f/monolithic-update-removal
Draft

Removal of monolithic update#2060
jistr wants to merge 3 commits into
openstack-k8s-operators:mainfrom
jistr:f/monolithic-update-removal

Conversation

@jistr

@jistr jistr commented Sep 4, 2026

Copy link
Copy Markdown
Contributor

For the upcoming release we'd like to converge our update workflow onto the "split" update with separate update-services and update-system parts. The monolithic update is being removed to slim down the support matrix.

For the upcoming release we'd like to converge our update workflow
onto the "split" update with separate `update-services` and
`update-system` parts. The monolithic `update` is being removed to
slim down the support matrix.

Assisted-by: goose+gemini
"update-services" is no longer needs to be named as the "new" service
now that the "update" service is removed.

Assisted-by: goose+gemini
@openshift-ci

openshift-ci Bot commented Sep 4, 2026

Copy link
Copy Markdown
Contributor

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

@coderabbitai

coderabbitai Bot commented Sep 4, 2026

Copy link
Copy Markdown

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Central YAML (base), Organization UI (inherited)

Review profile: CHILL

Plan: Team

Run ID: c2cc9f7a-28e9-4887-a6be-8a1b3c3c2039

📥 Commits

Reviewing files that changed from the base of the PR and between 8d3f31e and 6422b1e.

📒 Files selected for processing (6)
  • config/services/dataplane_v1beta1_openstackdataplaneservice_update.yaml
  • docs/assemblies/proc_updating-the-data-plane-ovn.adoc
  • docs/assemblies/proc_updating-the-data-plane.adoc
  • internal/controller/dataplane/openstackdataplanenodeset_controller.go
  • test/functional/dataplane/base_test.go
  • test/functional/dataplane/openstackdataplanenodeset_controller_test.go
💤 Files with no reviewable changes (2)
  • config/services/dataplane_v1beta1_openstackdataplaneservice_update.yaml
  • test/functional/dataplane/base_test.go

Included review availability: Your plan provides up to 1 included review per hour; 0 remain after this review.


📝 Summary

Summary by CodeRabbit

  • Documentation

    • Updated data plane update procedures to use the update-services service for updating containers and selected packages.
    • Clarified OVN update instructions with updated deployment file and resource names.
    • Refreshed command examples and verification output to match the current update workflow.
  • Bug Fixes

    • Aligned update handling and validation with the update-services workflow for more consistent deployment status reporting.

Walkthrough

The update flow now uses update-services consistently. Documentation and functional tests remove the former update service path. The NodeSet controller only propagates deployment versions for update-services.

Changes

Update-services flow

Layer / File(s) Summary
Align update-service names and examples
docs/assemblies/proc_updating-the-data-plane*.adoc, test/functional/dataplane/base_test.go, test/functional/dataplane/openstackdataplanenodeset_controller_test.go
Documentation and functional tests use update-services. The former update test helper and test block were removed.
Restrict deployed-version propagation
internal/controller/dataplane/openstackdataplanenodeset_controller.go
The controller copies Deployment.Status.DeployedVersion to the NodeSet only for services with type update-services.

Estimated code review effort: 2 (Simple) | ~10 minutes

Merge Risk: ⚪ Minimal · up to 6422b

This change removes the monolithic update workflow references and consistently uses update-services for the remaining split update flow. No current merge-blocking risk is identified.

Suggested reviewers: oliashish

🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Docstring coverage is scoped to functions touched by this diff. Analyzed 1 functions across 2 files. (2 skipped: 2 … Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (4 passed)
Check name Status Explanation
Description check ✅ Passed The description clearly states that the monolithic update workflow is being removed in favor of separate update-services and update-system parts.
Title check ✅ Passed The title clearly summarizes the primary change: removal of the monolithic update workflow.
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.
Full details: Docstring Coverage

Explanation

Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Docstring coverage is scoped to functions touched by this diff. Analyzed 1 functions across 2 files. (2 skipped: 2 unsupported.)

  • Fix all pre-merge checks with AI
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

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

@github-actions

github-actions Bot commented Sep 4, 2026

Copy link
Copy Markdown

OpenStackControlPlane CRD Size Report

Metric Value
CRD JSON size 338280 bytes (330KB)
Base branch size 338280 bytes
Change +0.00%
Status yellow — growing
Threshold reference
Color Range Meaning
🟢 green < 300KB Comfortable
🟡 yellow 300–400KB Growing
🟠 orange 400–750KB Concerning
🔴 red > 750KB Approaching 1.5MB etcd limit (cut in half to allow space for update)

@centosinfra-prod-github-app

Copy link
Copy Markdown

Build failed (check pipeline). Post recheck (without leading slash)
to rerun all jobs. Make sure the failure cause has been resolved before
you rerun jobs.

https://gateway-cloud-softwarefactory.apps.ocp.cloud.ci.centos.org/zuul/t/rdoproject.org/buildset/8277c5c78c204c1ea3db1194311b724e

✔️ openstack-k8s-operators-content-provider SUCCESS in 3h 57m 13s
✔️ podified-multinode-edpm-deployment-crc SUCCESS in 1h 30m 47s
✔️ cifmw-crc-podified-edpm-baremetal SUCCESS in 1h 54m 01s
openstack-operator-tempest-multinode NODE_FAILURE Node(set) request 099-0000192207 failed in 0s
✔️ openstack-operator-docs-preview SUCCESS in 3m 36s
openstack-operator-edpm-baremetal-minor-update FAILURE in 2h 32m 02s

@ciecierski

Copy link
Copy Markdown
Contributor

lgtm

@openshift-ci

openshift-ci Bot commented Sep 7, 2026

Copy link
Copy Markdown
Contributor

[APPROVALNOTIFIER] This PR is NOT APPROVED

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

@jistr

jistr commented Sep 8, 2026

Copy link
Copy Markdown
Contributor Author

The CI failure on the update job looks relevant, it looks like it's running the monolithic update, i'll first need to amend the job to run the split update before we can land this.

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

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants