Skip to content

Conversation

@jeanduplessis
Copy link
Collaborator

Description of your changes

Takes the information from the discussion in #529 (comment) and creates a documentation page for guidance on managing CRD versions,.

Fixes #529

I have:

  • Read and followed Upjet's contribution process.
  • Run make reviewable to ensure this PR is ready for review.
  • Added backport release-x.y labels to auto-backport this PR if necessary.

How has this code been tested

n/a

Signed-off-by: Jean du Plessis <[email protected]>
Copy link
Member

@sergenyalcin sergenyalcin left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks, @jeanduplessis, for this doc. I left a few comments to clarify some points.

jeanduplessis added a commit that referenced this pull request Nov 11, 2025
Address review comments from PR #539:
- Clarify that Upjet does not generate default values in CRD schema
- Fix statement about CRD generation (only latest version is generated)
- Add distinction between storage version and hub version
- Document SetCRDStorageVersion and SetCRDHubVersion configuration options

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <[email protected]>
Address review comments from PR #539:
- Clarify that Upjet does not generate default values in CRD schema
- Fix statement about CRD generation (only latest version is generated)
- Add distinction between storage version and hub version
- Document SetCRDStorageVersion and SetCRDHubVersion configuration options

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <[email protected]>
Signed-off-by: Jean du Plessis <[email protected]>
@jeanduplessis
Copy link
Collaborator Author

@sergenyalcin thanksfor the review. I've made the following updates:

  1. Clarified Default Values Behavior (Lines 60-65, 74-83)
  • Added clarification that Upjet does not generate default values in the CRD schema itself, even when they exist in the Terraform provider schema
  • Explained that defaults are applied at runtime by the Terraform provider or cloud provider
  • Updated both the "Changes That Do NOT Require Version Bumps" section and the "Non-Breaking Changes" section
  1. Fixed CRD Generation Statement (Lines 157-161)
  • Corrected the inaccurate statement that "Generate CRDs for all three versions"
  • Changed to clarify that Upjet only generates the CRD for the latest version (v1beta1)
  • Explained that previous versions are marked as served API versions
  1. Added Storage Version vs Hub Version Clarification (Lines 159-167, 182-194)
  • Added a note explaining that storage version and hub version are different concepts
  • Clarified that by default both are set to r.Version
  • Documented the configuration options: SetCRDStorageVersion and SetCRDHubVersion
  • Updated the "Hub-and-Spoke Pattern" section to distinguish between the two concepts

Copy link
Member

@sergenyalcin sergenyalcin left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks @jeanduplessis LGTM!

@jeanduplessis jeanduplessis merged commit acc66b9 into main Nov 17, 2025
7 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.

Resource Version update management

3 participants