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

Tracking issue for Improving status in CAPI resources - Phase 2 #11474

Open
45 tasks
fabriziopandini opened this issue Nov 25, 2024 · 1 comment
Open
45 tasks
Assignees
Labels
kind/feature Categorizes issue or PR as related to a new feature. priority/important-soon Must be staffed and worked on either currently, or very soon, ideally in time for the next release. triage/accepted Indicates an issue or PR is ready to be actively worked on.
Milestone

Comments

@fabriziopandini
Copy link
Member

fabriziopandini commented Nov 25, 2024

This is a tracking issue for activities related to #10897
Phase 1 activities are tracked into #11105

Follow up from phase 1 (1.10)

Implementation Phase2 (1.11)

Initial notes for phase 2 of the implementation, where new field are added but not yet used by controllers

  • v1beta2 API (not strictly related to this issue)
    • Prepare main branch
    • Create v1beta2 types, make controllers/webhooks to use it
      • Update example templates
    • Change clusterctl & E2E tests & test extensions to use v1beta2
    • Consider if to step up test coverage where API version is relevant (e.g. CC, topology controller, Runtime Extension)
    • Update doc about current version
  • API changes for status
    • Introduce deprecated struct, move v1beta2 top level
    • Rename condition interfaces and method implementations (current--> deprecated, v1beta2--> current)
    • Rename condition consts (current--> deprecated, v1beta2--> current)
    • Move conditions fields as the first field in the struct
    • Add minReadySeconds to machine, remove it from KCP. MD
  • Fine tuning of print columns
  • Change contracts
    • When reading from external objects, read new fields, fallback to old ones
    • Update contract docs
  • Use new fields
    • (every controller that use conditions or counters)
    • MachineHealthCheck controller
      • Change test for ControlPlaneInitializedCondition in reconcile
      • Get MachineHealthCheckSucceededCondition in patchUnhealthyTargets
      • Drop failureReson/failureMessage test from needsRemediation
      • Change test for ControlPlaneInitializedCondition, InfrastructureReadyCondition in needsRemediation (few places)
    • KCP controller
      • Change test for MachineEtcdMemberHealthyCondition in canSafelyRemoveEtcdMember + add a test for ClusterHealthy if not already there
      • We should use the Initialized condition instead of the Available condition to calculate remoteConditionsGracePeriod
  • Condition utils
    • Rename packages for condition utils (conditions-->deprecated conditions, v1beta2conditions --> conditions)
  • Clusterctl
    • clusterctl describe (drop v1beta2 flag, introduce deprecated flag, switch default behaviour in the implementation)
  • Change metrics & dashboards to use conditions

Implementation Phase3

TBD

Backlog / unprioritized

  • Scale testing with CAPD (check for condition flakiness)
@k8s-ci-robot k8s-ci-robot added kind/feature Categorizes issue or PR as related to a new feature. needs-priority Indicates an issue lacks a `priority/foo` label and requires one. needs-triage Indicates an issue or PR lacks a `triage/foo` label and requires one. labels Nov 25, 2024
@fabriziopandini fabriziopandini added priority/important-soon Must be staffed and worked on either currently, or very soon, ideally in time for the next release. triage/accepted Indicates an issue or PR is ready to be actively worked on. labels Nov 25, 2024
@k8s-ci-robot k8s-ci-robot removed needs-priority Indicates an issue lacks a `priority/foo` label and requires one. needs-triage Indicates an issue or PR lacks a `triage/foo` label and requires one. labels Nov 25, 2024
@sbueringer sbueringer added this to the v1.10 milestone Dec 27, 2024
@sbueringer
Copy link
Member

Assigned to v1.10 for now to keep an eye on it. I think it's not clear yet in which release this will land.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
kind/feature Categorizes issue or PR as related to a new feature. priority/important-soon Must be staffed and worked on either currently, or very soon, ideally in time for the next release. triage/accepted Indicates an issue or PR is ready to be actively worked on.
Projects
None yet
Development

No branches or pull requests

4 participants