Skip to content

fix(aks): stable far-future force-upgrade expiry to stop perpetual dry-run diff#339

Open
stevenolen wants to merge 1 commit into
mainfrom
aks-stable-until
Open

fix(aks): stable far-future force-upgrade expiry to stop perpetual dry-run diff#339
stevenolen wants to merge 1 commit into
mainfrom
aks-stable-until

Conversation

@stevenolen

Copy link
Copy Markdown
Contributor

What

AKS clusters with force_maintenance enabled showed a perpetual dry-run diff on upgradeSettings.overrideSettings.until. The value was time.Now().Add(24h), recomputed on every run, so it never matched state and the step never converged.

Change

  • Set until to a fixed far-future constant (2035-01-01T00:00:00Z) so the value is stable and converges after one apply.
  • The override remains permanently armed: ForceUpgrade is still true, so PodDisruptionBudgets never block a maintenance upgrade.
  • Remove the now-unused time import.

Testing

  • just cli, just check-go, just test-lib, just format all pass.
  • Dry-run against a live AKS workload confirms until now renders as the fixed constant (one-time reconcile) with no other change to the step.

Follow-up

  • Validate at apply time that AKS accepts an until this far in the future (confirm there is no max-window clamp/rejection on the override expiry). If clamped, a nearer but still-stable date can be used.

…l diff

The AKS force-upgrade override set upgradeSettings.overrideSettings.until
to time.Now().Add(24h), a value recomputed on every run. Pulumi therefore
saw a diff on that field on every preview/apply for clusters with
force_maintenance enabled, so the step never converged.

Replace the now-relative value with a fixed far-future constant
(2035-01-01T00:00:00Z). The override stays permanently armed (ForceUpgrade
still true, so PodDisruptionBudgets never block a maintenance upgrade) but
the input is now stable and converges. Drop the now-unused time import.
@stevenolen stevenolen marked this pull request as ready for review July 8, 2026 20:18
@stevenolen stevenolen requested a review from a team as a code owner July 8, 2026 20:18
@stevenolen stevenolen added this pull request to the merge queue Jul 8, 2026
@github-merge-queue github-merge-queue Bot removed this pull request from the merge queue due to failed status checks Jul 8, 2026
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