Skip to content

feat(helm)!: separate Cache resources from controller releases - #138

Merged
jmclong (jmclong) merged 1 commit into
mainfrom
feature/standalone-cache-resources
Oct 28, 2026
Merged

jmclong (jmclong) merged 1 commit into
mainfrom
feature/standalone-cache-resources

Conversation

@jmclong

@jmclong jmclong (jmclong) commented Oct 26, 2026 •

Copy link
Copy Markdown
Contributor

Summary

  • Stop creating Cache resources from the controller chart and provide standalone static, dynamic, and Minikube manifests.
  • Apply test fixtures after controller installation, with bounded admission retries and optional static server-count overrides.
  • Block controller uninstall while any Cache resources remain. Explicit force mode deletes Caches cluster-wide and can clear remaining terminating Cache finalizers after the configured timeout.
  • Update CI cleanup, focused Helm regression tests, deployment documentation, and the public quickstart.

Upgrade impact

cache.enabled=true is rejected. Migrate any existing chart-owned Cache before upgrading; removing the old template can otherwise delete that resource. Apply Cache configuration separately from the controller release.

Force cleanup is cluster-wide, not limited to Caches created by the release. Removing finalizers can bypass unfinished cleanup and leave child resources behind.

Validation

  • Controller go fmt, go vet, go build, and focused TestHelm tests passed.
  • Changed E2E files were formatted and vetted, and the E2E package compiled without running cluster tests. These checks used an external temporary modfile because existing test-module dependency metadata needs updating. Repository dependency files are unchanged.
  • Helm publication/lint/rendering, Cache fixture and quickstart schema validation, helper rejection paths/local static patching, shell checks, pipeline YAML/embedded-shell checks, and workflow zizmor checks passed.
  • Local and OCI controller-install Make dry-runs passed.
  • Offline disclosure and secret scans found no findings in changed files.
  • Live Kubernetes rollout and uninstall behavior was not tested.

Integration follow-up

This is an independent port, not stacked on bundled prerequisites (#137). Before combining the two, remove chart-managed Cache creation from the bundled-prerequisite CI paths, apply standalone fixtures only after prerequisite rollout succeeds, and reconcile overlapping deployment/docs changes. Preserve prerequisite/global-image regression coverage when resolving the modified/deleted Helm test file.

The independent ext4 compatibility fix is tracked in #136.

Provide standalone Cache fixtures, explicit pipeline application, and guarded controller uninstall.

BREAKING CHANGE: cache.enabled=true is no longer supported. Migrate chart-owned Cache resources before upgrading and apply Cache manifests separately.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 4e7adc4d-b2ae-4e92-9e76-2d857187198d
@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines:
There may be pipelines that require an authorized user to comment /azp run to run.

@jmclong

Copy link
Copy Markdown
Contributor Author

/azp run dacs-pullrequest

@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines:
Successfully started running 1 pipeline(s).

@jmclong
jmclong (jmclong) merged commit bfd6c13 into main Oct 28, 2026
62 checks passed
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