Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Implement upgrade individual resources for managed topologies #5016

Closed
fabriziopandini opened this issue Jul 26, 2021 · 5 comments · Fixed by #5178
Closed

Implement upgrade individual resources for managed topologies #5016

fabriziopandini opened this issue Jul 26, 2021 · 5 comments · Fixed by #5178
Assignees
Labels
area/clusterclass Issues or PRs related to clusterclass kind/feature Categorizes issue or PR as related to a new feature.
Milestone

Comments

@fabriziopandini
Copy link
Member

Detailed Description

This is part of the activities for the implementation of the ClusterClass proposal. Anything else you would like to add:

#4998 and #4999 started the implementation the logic for computing the desired state of a managed topology, however, both issues does not include implementing support for version upgrade component by component.

This issue, which can be implemented only after the aforementioned issues are merged, address this GAP by defining the following rules; it is also assumed the changes to the control plane contract introduced by #4949 are in place:

  • when computing the desired state for the control plane object

    • if controlPlane current version < cluster.topology.version and all the machine deployments are of the same version of the control plane
      • controlPlane = cluster.topology.version
  • when computing the desired state for the machine deployments object

    • if machine deployment current version < cluster.topology.version and the control plane is upgraded (1) and previous machine deployment (2) are upgraded (3)
      • machine deployment = cluster.topology.version

(1) According to the proposed changes to the contract, this means control plane spec.version == status.version
(2) This implies to use a consistent and predictable ordering in processing machine deployments (e.g order by name)
(3) This can be determined by looking at the machine deployment status or at the underlying machines.

/kind feature

@k8s-ci-robot k8s-ci-robot added the kind/feature Categorizes issue or PR as related to a new feature. label Jul 26, 2021
@fabriziopandini
Copy link
Member Author

/milestone v0.4

@k8s-ci-robot k8s-ci-robot added this to the v0.4 milestone Jul 26, 2021
@sbueringer
Copy link
Member

/assign

@sbueringer
Copy link
Member

/area topology

@ykakarap
Copy link
Contributor

/assign

@sbueringer sbueringer removed their assignment Aug 20, 2021
@vincepri vincepri changed the title Implement upgrade component by component for managed topologies Implement upgrade individual resources for managed topologies Aug 24, 2021
@vincepri
Copy link
Member

Renamed a bit to avoid using "component", which usually refers to artifacts in the release

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/clusterclass Issues or PRs related to clusterclass kind/feature Categorizes issue or PR as related to a new feature.
Projects
None yet
Development

Successfully merging a pull request may close this issue.

6 participants