Skip to content

docs: clarify writeConnectionSecretToRef removal is XR-only, not MR-level#1069

Open
ytsarev wants to merge 1 commit intocrossplane:masterfrom
ytsarev:xr-no-mr-connectionv2
Open

docs: clarify writeConnectionSecretToRef removal is XR-only, not MR-level#1069
ytsarev wants to merge 1 commit intocrossplane:masterfrom
ytsarev:xr-no-mr-connectionv2

Conversation

@ytsarev
Copy link
Member

@ytsarev ytsarev commented Mar 5, 2026

A common source of confusion when upgrading to v2 is assuming that the removal of native XR connection details also affects managed resources. This is not the case — writeConnectionSecretToRef on MRs is unchanged.

Add a tip callout to the upgrade guide's "Composite resource connection details" section and expand the note in the connection details composition guide to explicitly state that only the XR-level aggregation was removed, while MR-level usage continues to work as before. Applied across all v2.x versions and master.

@ytsarev ytsarev requested a review from jbw976 March 5, 2026 11:08
@netlify
Copy link

netlify bot commented Mar 5, 2026

Deploy Preview for crossplane ready!

Name Link
🔨 Latest commit 4cf27d8
🔍 Latest deploy log https://app.netlify.com/projects/crossplane/deploys/69a9b3bb56bb5e0008c71fba
😎 Deploy Preview https://deploy-preview-1069--crossplane.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.
Lighthouse
Lighthouse
1 paths audited
Performance: 90 (🔴 down 6 from production)
Accessibility: 90 (🔴 down 2 from production)
Best Practices: 92 (no change from production)
SEO: 100 (no change from production)
PWA: 70 (no change from production)
View the detailed breakdown and full score reports

To edit notification comments on pull requests, go to your Netlify project configuration.

@ytsarev ytsarev force-pushed the xr-no-mr-connectionv2 branch 2 times, most recently from cf1f19f to 1f17e86 Compare March 5, 2026 11:14
Copy link
Member

@jbw976 jbw976 left a comment

Choose a reason for hiding this comment

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

Nice, thank you @ytsarev for taking the initiative to clarify this for Crossplane users @ytsarev! I have a couple wording suggestions here to keep the message very focused - let me know what you think 🙇

another place we should probably add a brief mention to as well is https://docs.crossplane.io/v2.2/whats-new/#backward-compatibility. e.g.:

Composite resources no longer have native connection details support. You can recreate this feature by composing your own connection details Secret as described in the connection details composition guide. Connection details for managed resources (MRs) aren't affected.

I'm hoping Vale is okay with "aren't affected" since I'm suggesting we use that in a few places 🙏

Comment on lines +20 to +22
for XRs. **Crossplane v2 removed native XR connection details**, but `writeConnectionSecretToRef`
on managed resources (MRs) still works as before. The function pipeline now controls
XR level aggregation; compose the `Secret` explicitly for full control.
Copy link
Member

Choose a reason for hiding this comment

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

I think we could make the wording a bit more focused on the core idea that MRs are not affected. what do you think of this wording?

Suggested change
for XRs. **Crossplane v2 removed native XR connection details**, but `writeConnectionSecretToRef`
on managed resources (MRs) still works as before. The function pipeline now controls
XR level aggregation; compose the `Secret` explicitly for full control.
for XRs. Crossplane v2 removes this feature **for XRs only**. Managed Resources (MRs) aren't affected by this change and still support connection details via their `writeConnectionSecretToRef` field.

**Removed**: composite resources no longer have native connection details support.

{{<hint "tip">}}
**This only affects XRs, not managed resources.**
Copy link
Member

Choose a reason for hiding this comment

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

Suggested change
**This only affects XRs, not managed resources.**
**This only affects XRs, managed resources aren't affected.**

Comment on lines +102 to +103
`writeConnectionSecretToRef` on managed resources (MRs) still works as
before. Use it directly on `spec.writeConnectionSecretToRef` in any MR spec.
Copy link
Member

Choose a reason for hiding this comment

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

Suggested change
`writeConnectionSecretToRef` on managed resources (MRs) still works as
before. Use it directly on `spec.writeConnectionSecretToRef` in any MR spec.
Managed resources (MRs) still support the `writeConnectionSecretToRef` field on any MR spec.

Comment on lines +105 to +107
Only the _XR level_ built-in connection details aggregation changed. Crossplane
v2 gives your composition function full control instead: you decide what goes in
the secret, where it's created, and when.
Copy link
Member

Choose a reason for hiding this comment

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

i'm thinking we can drop this actually and just focus this tip box on MRs being unaffected. The message of creating a secret yourself is sort of covered by the first sentence after this box.

…evel

A common source of confusion when upgrading to v2 is assuming that the
removal of native XR connection details also affects managed resources.
This is not the case — writeConnectionSecretToRef on MRs is unchanged.

Add a tip callout to the upgrade guide's "Composite resource connection
details" section and expand the note in the connection details composition
guide to explicitly state that only the XR-level aggregation was removed,
while MR-level usage continues to work as before. Applied across all v2.x
versions and master.

Signed-off-by: Yury Tsarev <yury@upbound.io>
@ytsarev ytsarev force-pushed the xr-no-mr-connectionv2 branch from 1f17e86 to 4cf27d8 Compare March 5, 2026 16:47
@ytsarev ytsarev requested a review from jbw976 March 5, 2026 16:50
@ytsarev
Copy link
Member Author

ytsarev commented Mar 5, 2026

@jbw976 thanks a lot for the review! I addressed all suggestions, looks like Vale is happy too. Please take another look!

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