Skip to content

Taints Propagation Proposal implementation #12908

@chrischdi

Description

@chrischdi

This issue is for tracking progress of implementation for the taints propagation proposal:

We plan to split the implementation across Cluster API v1.12 and v1.13, which is considered safe because the changes will be feature-gated.

1.12:

1.13

  • CABPK: implement merging behavior

    • discuss desired behavior: add to kubeadm config (which results in adding as --register-with-taints for kubelet / re-registration issue) or not
  • ControlPlane contract:

    • Implement ControlPlane contract changes
    • Implement KCP changes to fulfill the contract
    • Implement test coverage
    • Check the repository for the handling of the NodeDrainTimeoutSeconds field (prior art in-place propagation to Machine) and if same was applied for the Taints field.
  • topology:

    • Implement Cluster related API changes
    • Implement ClusterClass related API changes
    • Implement topology controller changes / field propagation
    • Check the repository for the handling of the NodeDrainTimeoutSeconds field (prior art in-place propagation to Machine) and if same was applied for the Taints field.
  • Migrate e2e test coverage for taints from non-topology to topology

    • probably suites to ClusterClass rollout
  • Migrate tracking annotation names to contain a internal prefix (for labels, annotations and taints tracking)

Additional work:

  • Cluster autoscaler to be aware of the taints field
  • MachinePool: implement MachinePool controller changes
    • Note: maybe should be tracked in MachinePool graduation tracking issue (edited)

Metadata

Metadata

Assignees

Labels

area/apiIssues or PRs related to the APIskind/featureCategorizes issue or PR as related to a new feature.priority/important-soonMust be staffed and worked on either currently, or very soon, ideally in time for the next release.triage/acceptedIndicates an issue or PR is ready to be actively worked on.

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions