Skip to content

🤖 fix: stop generating aggregation CRDs in manifests#68

Merged
ThomasK33 merged 1 commit into
mainfrom
fix/reliable-demo-crd-generation
Feb 12, 2026
Merged

🤖 fix: stop generating aggregation CRDs in manifests#68
ThomasK33 merged 1 commit into
mainfrom
fix/reliable-demo-crd-generation

Conversation

@ThomasK33
Copy link
Copy Markdown
Member

Summary

Stop generating aggregation.coder.com CRDs into config/crd/bases, delete the previously generated aggregation CRD manifests, and keep demo flows fail-fast when stale APIService/CRD conflicts exist.

Background

For APIService-backed aggregated resources (codertemplates, coderworkspaces), same-group CRDs in config/crd/bases caused unreliable read/discovery behavior in demos when both mechanisms were present. We want kubectl apply -f config/crd/bases/ to remain simple and safe.

Implementation

  • Updated hack/update-manifests.sh:
    • CRD generation now runs only against ./api/v1alpha1 (operator-owned coder.com/* APIs)
    • RBAC generation remains repo-wide (./...)
  • Removed generated aggregation CRDs:
    • config/crd/bases/aggregation.coder.com_codertemplates.yaml
    • config/crd/bases/aggregation.coder.com_coderworkspaces.yaml
  • Kept a defensive guard in hack/kind-dev.sh:
    • Detects APIService v1alpha1.aggregation.coder.com + aggregation CRD coexistence
    • Fails with explicit cleanup command
  • Simplified docs back to approachable CRD command usage (kubectl apply -f config/crd/bases/) while keeping a focused troubleshooting note for stale conflict cleanup.

Validation

  • make verify-vendor
  • make test
  • make build
  • make lint
  • make docs-check
  • make manifests
  • bash -n ./hack/kind-dev.sh
  • CLUSTER_NAME=coder-k8s-smoke-20260212 ./hack/kind-dev.sh up

Risks

Low-to-moderate:

  • Behavior of generated CRDs intentionally narrows to controller-owned APIs only.
  • Any external workflow that relied on generated aggregation CRD files in config/crd/bases will need to use the APIService path instead (which is the intended model).

Generated with mux • Model: openai:gpt-5.3-codex • Thinking: xhigh • Cost: $0.00

Stop generating aggregation.coder.com CRDs into config/crd/bases and delete
previously generated aggregation CRD manifests. This makes `kubectl apply -f
config/crd/bases/` safe for demo workflows while keeping docs approachable.

Also add a fail-fast guard in hack/kind-dev.sh that detects stale
APIService+aggregation-CRD conflicts and prints the exact cleanup command.

---

_Generated with `mux` • Model: `openai:gpt-5.3-codex` • Thinking: `xhigh` • Cost: `$0.00`_

<!-- mux-attribution: model=openai:gpt-5.3-codex thinking=xhigh costs=0.00 -->
@ThomasK33
Copy link
Copy Markdown
Member Author

@codex review

Please review this change for manifest generation scope and demo reliability around APIService/CRD conflicts.

@chatgpt-codex-connector
Copy link
Copy Markdown

Codex Review: Didn't find any major issues. Already looking forward to the next diff.

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

@ThomasK33 ThomasK33 added this pull request to the merge queue Feb 12, 2026
Merged via the queue into main with commit 939c739 Feb 12, 2026
11 checks passed
@ThomasK33 ThomasK33 deleted the fix/reliable-demo-crd-generation branch February 12, 2026 16:45
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.

1 participant