Skip to content

docs: document transitionFrom for smooth ClusterProfile/Profile trans… - #787

Merged
gianlucam76 merged 1 commit into
projectsveltos:mainfrom
gianlucam76:transition
Sep 11, 2026
Merged

gianlucam76 merged 1 commit into
projectsveltos:mainfrom
gianlucam76:transition

Conversation

@gianlucam76

Copy link
Copy Markdown
Member

…itions

@egrosdou01

Copy link
Copy Markdown
Contributor

Checking

@egrosdou01 egrosdou01 left a comment

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.

A few changes to make the docu more ingestible.

Comment thread docs/deployment_order/clusterprofile_ownership_transfer.md Outdated

If you simply relabel the cluster so it stops matching **A** at the same time it starts matching **B**, Sveltos's default `stopMatchingBehavior` (`WithdrawPolicies`) removes everything **A** deployed, including uninstalling the Helm release for the CNI, before **B** installs it again. That uninstall/reinstall cycle is the outage you're trying to avoid.

!!! note

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.

!!! Note

The overlap-then-cutover technique on this page still works. However, for a simpler version bump, transitionFrom provides an in-place handover. It only requires a single label change. There is no overlap window to time and no second label to introduce. It also covers raw manifests and Kustomize output, not just Helm charts.

Interested in the overlap-based approach? Keep reading. This is useful if we want the old ClusterProfile to act as a live fallback while it matches. Otherwise, check out transitionFrom for a simpler option.

Comment thread docs/deployment_order/clusterprofile_ownership_transfer.md

## The Problem

A common operational pattern is moving a cluster from one `ClusterProfile` to another that deploys mostly the same resources, just at a different version or configuration. For example: a cluster matches `sbom-scanner-v1` via the label `sbom: v1`. `sbom-scanner-v1` and `sbom-scanner-v2` deploy the same set of resources, just at different versions. The operator wants to move the cluster to `sbom-scanner-v2` by changing the cluster's label from `sbom: v1` to `sbom: v2`.

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.

A common pattern is moving a cluster from one ClusterProfile to another. This usually involves the same resources but with a different version or setup. For example, a cluster matches sbom-scanner-v1 via the label sbom: v1. sbom-scanner-v1 and sbom-scanner-v2 deploy the same set of resources, just at different versions. The operator wants to move the cluster to sbom-scanner-v2 by changing the cluster's label from sbom: v1 to sbom: v2.

Changing the label to switch from sbom-scanner-v1 to sbom-scanner-v2 will undeploy everything managed by sbom-scanner-v1. Then, it will deploy sbom-scanner-v2, including any shared resources. This happens because sbom-scanner-v1 and sbom-scanner-v2 work in separate loops. These loops are independent and unsynchronized, so there is no guarantee of order between them. As a result, sbom-scanner-v1 can finish its teardown before sbom-scanner-v2 even starts deploying. A plain label swap always undeploys-then-redeploys, even when the two profiles are nearly identical.

Comment thread docs/deployment_order/transition_from.md Outdated

With both `ClusterProfiles` created, changing a cluster's label from `sbom: v1` to `sbom: v2` in a single change is enough: `sbom-scanner-v1`'s resources stay in place until `sbom-scanner-v2` is `Provisioned` on that cluster, and any resource both profiles manage in common is updated in place rather than deleted and recreated.

## Restrictions

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.

Can you make this paragraph clearer. I am not sure what you are trying to say here.

Comment thread docs/deployment_order/transition_from.md
Comment thread docs/deployment_order/transition_from.md Outdated
@gianlucam76
gianlucam76 merged commit 46da366 into projectsveltos:main Sep 11, 2026
@gianlucam76
gianlucam76 deleted the transition branch September 11, 2026 11:59
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants