From 2f657bb90d26a142a69178bfcbc8288cdcdde569 Mon Sep 17 00:00:00 2001 From: Nic Cope Date: Thu, 22 Aug 2024 20:46:21 -0700 Subject: [PATCH 1/6] Delete release notes I don't think any of the maintainers are passionate about keeping these. We already didn't do them for the v1.16 release. They have a bunch of brittle links from /v1.XX dirs to /master, which right now are blocking my PR. I don't want to go update all the links so I'm just deleting them. Signed-off-by: Nic Cope --- content/master/release-notes/1.15.0.md | 31 ------ content/master/release-notes/_index.md | 9 -- content/master/release-notes/docs.md | 63 ------------ content/v1.14/release-notes/1.14.0.md | 130 ------------------------- content/v1.14/release-notes/1.14.1.md | 17 ---- content/v1.14/release-notes/1.14.2.md | 29 ------ content/v1.14/release-notes/1.14.3.md | 13 --- content/v1.14/release-notes/1.14.4.md | 25 ----- content/v1.14/release-notes/_index.md | 9 -- content/v1.14/release-notes/docs.md | 52 ---------- content/v1.15/release-notes/1.15.0.md | 31 ------ content/v1.15/release-notes/_index.md | 9 -- content/v1.15/release-notes/docs.md | 63 ------------ content/v1.16/release-notes/1.15.0.md | 31 ------ content/v1.16/release-notes/_index.md | 9 -- content/v1.16/release-notes/docs.md | 63 ------------ 16 files changed, 584 deletions(-) delete mode 100644 content/master/release-notes/1.15.0.md delete mode 100644 content/master/release-notes/_index.md delete mode 100644 content/master/release-notes/docs.md delete mode 100644 content/v1.14/release-notes/1.14.0.md delete mode 100644 content/v1.14/release-notes/1.14.1.md delete mode 100644 content/v1.14/release-notes/1.14.2.md delete mode 100644 content/v1.14/release-notes/1.14.3.md delete mode 100644 content/v1.14/release-notes/1.14.4.md delete mode 100644 content/v1.14/release-notes/_index.md delete mode 100644 content/v1.14/release-notes/docs.md delete mode 100644 content/v1.15/release-notes/1.15.0.md delete mode 100644 content/v1.15/release-notes/_index.md delete mode 100644 content/v1.15/release-notes/docs.md delete mode 100644 content/v1.16/release-notes/1.15.0.md delete mode 100644 content/v1.16/release-notes/_index.md delete mode 100644 content/v1.16/release-notes/docs.md diff --git a/content/master/release-notes/1.15.0.md b/content/master/release-notes/1.15.0.md deleted file mode 100644 index 1c04b20a0..000000000 --- a/content/master/release-notes/1.15.0.md +++ /dev/null @@ -1,31 +0,0 @@ ---- -title: v1.15.0 -released: November 15, 2023 -weight: 10 ---- - -The v1.15.0 release is a quarterly Crossplane release. - -Read the -[Crossplane announcement blog](https://blog.crossplane.io/crossplane-v1-15/). - -### πŸŽ‰ Highlights - -* The default [Crossplane package registry]({{}}) is now `xpkg.upbound.io`. -* New CLI [top]({{}}) command to view CPU - and memory usage. -* Expanding the CLI [trace]({{}}) command to - provide more details on package dependencies, types and revisions. -* Support in the [xpkg init]({{}}) command - to support a `NOTES.txt` file and initialization scripts. -* A new [migrate]({{}}) command to help - migrations from existing API kinds to future versions. - - - -### 🚨 Warnings and breaking changes -* The default package registry changed from `index.docker.io` to `xpkg.upbound.io`. -* Removed RBAC manager `--manage` flag. - - - \ No newline at end of file diff --git a/content/master/release-notes/_index.md b/content/master/release-notes/_index.md deleted file mode 100644 index 526e56744..000000000 --- a/content/master/release-notes/_index.md +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Release Notes -weight: 600 -description: "Crossplane release notes" -product: "Release Notes" -cascade: - releaseNotes: true ---- - diff --git a/content/master/release-notes/docs.md b/content/master/release-notes/docs.md deleted file mode 100644 index dd385251a..000000000 --- a/content/master/release-notes/docs.md +++ /dev/null @@ -1,63 +0,0 @@ ---- -title: Docs Changelog -weight: 999 ---- - -Changes and notable docs updates. - - - -## March 14, 2024 - -### Removed content πŸ—‘οΈ - -Removed information on installing Crossplane -[Providers]({{}}) and -[Packages]({{}}) offline using -the local package cache. Installing via the local package cache isn't intended -to be user facing and the recommended offline install method is with a private -registry. - -## February 22, 2024 - -### Updated content πŸ—οΈ - -* New [Crossplane upgrade]({{}}) documentation. -* Added notes to the [managed resources]({{}}) - page that Crossplane can't delete paused resources. -* Upgrade the AWS quickstart to use the new "no fork" Upjet provider version 1.1.0 -* Add links to the quickstart guides to the different authentication methods for - the provider. -* Expanded `crossplane beta validate` [command reference]({{}}). -* Documentation for the new [server side apply]({{}}) alpha feature. - - -### πŸ”¨ Docs fixes - - -* Fixed [an issue](https://github.com/crossplane/docs/pull/718) where mermaid - diagrams didn't display the right colors across light and dark modes. -* Added support for a "[you are here](https://github.com/crossplane/docs/pull/716)" - feature for doc page table of contents. -* Fixed the color of check marks (βœ”οΈ) in dark mode. - - -## February 15, 2024 - - - -### Updated content πŸ—οΈ - -* New content for [v1.15.0 release]({{}}). - -### Removed content πŸ—‘οΈ -* Removed end of support v1.12 documentation. Content -[archived on GitHub](https://github.com/crossplane/docs/releases/tag/v1.12-archive). - -### πŸ”¨ Docs fixes -* Fixed issues related to displaying tables in dark mode. \ No newline at end of file diff --git a/content/v1.14/release-notes/1.14.0.md b/content/v1.14/release-notes/1.14.0.md deleted file mode 100644 index bb1cfbb34..000000000 --- a/content/v1.14/release-notes/1.14.0.md +++ /dev/null @@ -1,130 +0,0 @@ ---- -title: v1.14.0 -released: November, 1, 2023 -weight: 10 ---- - -The v1.14.0 release is a quarterly Crossplane release. - -Read the -[Crossplane announcement blog](https://blog.crossplane.io/crossplane-v1-14/). - -### πŸŽ‰ Highlights - -* [Composition functions]({{< ref "../concepts/composition-functions">}}) promoted to `v1beta1`. -* A new [Provider DeploymentRuntimeConfig]({{}}) to eventually replace the deprecated `ControllerConfig`. -* New [Crossplane CLI]({{}}) for troubleshooting and package management. -* Support for ordered deletion with [Usages]({{}}). -* Alpha support for [real time composition]({{}}) - - - - -### 🚨 Warnings and breaking changes - -* Crossplane Helm images have moved from `index.docker.io` to `xpkg.upbound.io`. - Images are still published to `index.docker.io` but is moving to only publish on - `xpkg.upbound.io` in a future release. -* Changes to TLS certificates. Existing users of external secret stores need to - manually update their TLS certificates. Read [Crossplane issue #4565](https://github.com/crossplane/crossplane/pull/4656) for more information. -* Removed Vault support for External Secret Stores. Crossplane - suggests using the [ESS Plugins]({{}}) as a replacement. -* Removed the `controllerConfigRef` from the Configuration package - and package revision APIs. -* The introduction of the new [Crossplane CLI]({{}}) deprecates - the existing `kubectl crossplane` plugin. -* The `v1beta1` implementation of Composition Functions is incompatible with - existing `v1alpha1` functions. - -### πŸ’‘ New features - -What's new in v1.14.0 - -#### Crossplane CLI - -Crossplane v1.14 introduces a rebuilt [Crossplane CLI]({{}}). - -The Crossplane CLI provides features to help troubleshoot Crossplane resources, -build and publish Crossplane packages and locally test composition functions. - -Read the [CLI documentation]({{}}) for information on installing -and the full set of -supported features. - -#### Real time Compositions - -This release adds the alpha feature "real time compositions" to Crossplane. - -Real time compositions allow Kubernetes to immediately notify Crossplane of -changes to composed resources. Crossplane doesn't need to poll resources to -determine their state. - -Real time compositions dramatically speed up the time Crossplane reacts to -changes or failures of managed resources. - -The real time compositions feature is an alpha feature and isn't enabled by default. - -The [Crossplane pods]({{}}) -documentation has more information about real time compositions. - -#### Ordered resource deletion - -Crossplane introduces a new `usages` type to prevent resources from -deletion or to ensure deletion happens in the correct order. - -A `Usages` defines a dependency mapping between a resource and any dependencies. -Crossplane can't delete the parent resource until after deleting the child -resource. - -A `usage` also allow Crossplane to prevent accidental deletion of a resource. - -The `usage` feature is an alpha feature and isn't enabled by default. - -The [Usages]({{}}) documentation provides information -on enabling and configuring Usages. - -### πŸ—οΈ Notable changes - -#### Composition functions - -v1.14 promotes composition functions to `v1beta1` with a new, more scalable -architecture for running functions. - -Crossplane v1.14 includes CLI tooling, templates, SDKs, and documentation for -building functions. - -Several new functions available for the new architecture, -including -[function patch and transform](https://github.com/crossplane-contrib/function-patch-and-transform), -[function Go templating](https://github.com/crossplane-contrib/function-go-templating), -and -[function cue](https://github.com/crossplane-contrib/function-cue). - -#### Management policies enabled by default - -Managed resource "[management policies]({{}})" moved to beta and are now enabled by -default. - - -#### Object has been modified warnings - - -Crossplane changed the behavior causing the event message - - -> cannot patch object: Operation cannot be fulfilled on compositenetworks.gcp.platformref.crossplane.io "test-network-d6xjh": the object has been modified; please apply your changes to the latest version and try again` - - - -#### Adding extra objects during Crossplane install - -The Crossplane Helm chart now supports an `extraObjects: []` array to install -other Kubernetes objects during the Crossplane install. - -#### Support for pausing other Crossplane objects - -The Crossplane annotation `crossplane.io/paused` is now supported in Claims, -Composites, Configurations, Functions and Provider objects. - - - \ No newline at end of file diff --git a/content/v1.14/release-notes/1.14.1.md b/content/v1.14/release-notes/1.14.1.md deleted file mode 100644 index b97a094c8..000000000 --- a/content/v1.14/release-notes/1.14.1.md +++ /dev/null @@ -1,17 +0,0 @@ ---- -title: v1.14.1 -released: November, 14, 2023 -weight: 11 ---- - -The v1.14.1 release fixes an issue with the Crossplane CLI discovered -after the v1.14.0 release. - - -### πŸ› Bug fixes -* Resolves an issue with `crossplane xpkg` pushing a two packages, one with - `--` appended. [#4980](https://github.com/crossplane/crossplane/issues/4980) -* The Protobuf schema now automatically publishes to the -[Buf Schema registry](https://buf.build/crossplane/crossplane). - - \ No newline at end of file diff --git a/content/v1.14/release-notes/1.14.2.md b/content/v1.14/release-notes/1.14.2.md deleted file mode 100644 index 2cdba240e..000000000 --- a/content/v1.14/release-notes/1.14.2.md +++ /dev/null @@ -1,29 +0,0 @@ ---- -title: v1.14.2 -released: November, 21, 2023 -weight: 11 ---- - -The v1.14.2 fixes an issue where Crossplane incorrectly deletes a Provider -ServiceAccount when using a custom ServiceAccount name in a -DeploymentRuntimeConfig or ControllerConfig. - - -### πŸ› Bug fixes -* Resolves an issue where Crossplane deletes a ServiceAccount and may cause -"Unauthorized" errors in a Provider pod. -Issue [#5017](https://github.com/crossplane/crossplane/issues/5017). -* Improves Crossplane's handling of package deactivation when there are a -large number of objects managed by Crossplane. -PR [#5044](https://github.com/crossplane/crossplane/pull/5044). -* Corrects the use of the service name in conversion webhooks. -PR [#5108](https://github.com/crossplane/crossplane/pull/5018). - -### πŸš€ Improvements -* Prevent an unnecessary wait condition in Compositions. -[#5034](https://github.com/crossplane/crossplane/pull/5034) - -### πŸ”’ Security updates -* Updates Docker includes to resolve -[multiple CVEs](https://github.com/advisories/GHSA-jq35-85cj-fj4p). - \ No newline at end of file diff --git a/content/v1.14/release-notes/1.14.3.md b/content/v1.14/release-notes/1.14.3.md deleted file mode 100644 index d2d14ab3c..000000000 --- a/content/v1.14/release-notes/1.14.3.md +++ /dev/null @@ -1,13 +0,0 @@ ---- -title: v1.14.3 -released: November, 24, 2023 ---- - -The v1.14.3 corrects an accidental behavior change in v1.14.0 that changed -the order Crossplane applies patches when using environment patches. - - -### πŸ› Bug fixes -* Correct patch ordering. Issue [#5050](https://github.com/crossplane/crossplane/issues/5050) - - \ No newline at end of file diff --git a/content/v1.14/release-notes/1.14.4.md b/content/v1.14/release-notes/1.14.4.md deleted file mode 100644 index 0823e83b2..000000000 --- a/content/v1.14/release-notes/1.14.4.md +++ /dev/null @@ -1,25 +0,0 @@ ---- -title: v1.14.4 -released: December, 12, 2023 ---- - -Version 1.14.4 creates a **breaking change** for users of `environmentConfigs` -selectors. Before, if there are no matches by the selector in `Single` mode, -Crossplane ignores the patch. Now Crossplane issues an error. - -To use the older behavior in v1.14.4 and later use mode `Multiple`. - - -### πŸ› Bug fixes -* Sets RBAC for Crossplane to access finalizers with the -`OwnerReferencePermissionEnforcement` Kubernetes admission controller enabled. -PR [#5088](https://github.com/crossplane/crossplane/pull/5088). -* Reduces the number of events generated by `SyncPackage` and -`InstallPackageRevision`. PR [#5066](https://github.com/crossplane/crossplane/pull/5066) - -### 🚨 Behavior changes -* Changes the behavior of `environmentConfigs` -[selector policies]({{}}). -* Introduces a new `minMatch` option for `environmentConfig` selector policies. - - \ No newline at end of file diff --git a/content/v1.14/release-notes/_index.md b/content/v1.14/release-notes/_index.md deleted file mode 100644 index c1a4b201a..000000000 --- a/content/v1.14/release-notes/_index.md +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Release Notes -weight: 20 -description: "Crossplane release notes" -product: "Release Notes" -cascade: - releaseNotes: true ---- - diff --git a/content/v1.14/release-notes/docs.md b/content/v1.14/release-notes/docs.md deleted file mode 100644 index 7f77a8765..000000000 --- a/content/v1.14/release-notes/docs.md +++ /dev/null @@ -1,52 +0,0 @@ ---- -title: Docs Changelog -weight: 999 ---- - -Changes and notable docs updates. - - - -## March 14, 2024 - -### Removed content πŸ—‘οΈ - -Removed information on installing Crossplane -[Providers]({{}}) and -[Packages]({{}}) offline using -the local package cache. Installing via the local package cache isn't intended -to be user facing and the recommended offline install method is with a private -registry. - -## December 1, 2023 - -### New features πŸŽ‰ -* Added [API documentation]({{}}) for Crossplane core types. - -## November 30, 2023 - -### New features πŸŽ‰ -* Added RSS support for Crossplane release notes. - -## November 1, 2023 - -### New content πŸŽ‰ -* Created the v1.14 release documentation. -* New [CLI]({{}}) documentation. -* New [release notes]({{}}) section. -* [Usages]({{}}) Crossplane type. - -### Updated content πŸ—οΈ - -* Rewritten [packages]({{}}) section focused on Crossplane configuration packages. -* Expanded [providers]({{}}) content related to using Provider packages. -* Major updates to [Composition Functions]({{}}), moving them to `v1beta1`. - - -### Removed content πŸ—‘οΈ -* Removed end of support v1.11 documentation. Content archived on GitHub. diff --git a/content/v1.15/release-notes/1.15.0.md b/content/v1.15/release-notes/1.15.0.md deleted file mode 100644 index 1c04b20a0..000000000 --- a/content/v1.15/release-notes/1.15.0.md +++ /dev/null @@ -1,31 +0,0 @@ ---- -title: v1.15.0 -released: November 15, 2023 -weight: 10 ---- - -The v1.15.0 release is a quarterly Crossplane release. - -Read the -[Crossplane announcement blog](https://blog.crossplane.io/crossplane-v1-15/). - -### πŸŽ‰ Highlights - -* The default [Crossplane package registry]({{}}) is now `xpkg.upbound.io`. -* New CLI [top]({{}}) command to view CPU - and memory usage. -* Expanding the CLI [trace]({{}}) command to - provide more details on package dependencies, types and revisions. -* Support in the [xpkg init]({{}}) command - to support a `NOTES.txt` file and initialization scripts. -* A new [migrate]({{}}) command to help - migrations from existing API kinds to future versions. - - - -### 🚨 Warnings and breaking changes -* The default package registry changed from `index.docker.io` to `xpkg.upbound.io`. -* Removed RBAC manager `--manage` flag. - - - \ No newline at end of file diff --git a/content/v1.15/release-notes/_index.md b/content/v1.15/release-notes/_index.md deleted file mode 100644 index 526e56744..000000000 --- a/content/v1.15/release-notes/_index.md +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Release Notes -weight: 600 -description: "Crossplane release notes" -product: "Release Notes" -cascade: - releaseNotes: true ---- - diff --git a/content/v1.15/release-notes/docs.md b/content/v1.15/release-notes/docs.md deleted file mode 100644 index dd385251a..000000000 --- a/content/v1.15/release-notes/docs.md +++ /dev/null @@ -1,63 +0,0 @@ ---- -title: Docs Changelog -weight: 999 ---- - -Changes and notable docs updates. - - - -## March 14, 2024 - -### Removed content πŸ—‘οΈ - -Removed information on installing Crossplane -[Providers]({{}}) and -[Packages]({{}}) offline using -the local package cache. Installing via the local package cache isn't intended -to be user facing and the recommended offline install method is with a private -registry. - -## February 22, 2024 - -### Updated content πŸ—οΈ - -* New [Crossplane upgrade]({{}}) documentation. -* Added notes to the [managed resources]({{}}) - page that Crossplane can't delete paused resources. -* Upgrade the AWS quickstart to use the new "no fork" Upjet provider version 1.1.0 -* Add links to the quickstart guides to the different authentication methods for - the provider. -* Expanded `crossplane beta validate` [command reference]({{}}). -* Documentation for the new [server side apply]({{}}) alpha feature. - - -### πŸ”¨ Docs fixes - - -* Fixed [an issue](https://github.com/crossplane/docs/pull/718) where mermaid - diagrams didn't display the right colors across light and dark modes. -* Added support for a "[you are here](https://github.com/crossplane/docs/pull/716)" - feature for doc page table of contents. -* Fixed the color of check marks (βœ”οΈ) in dark mode. - - -## February 15, 2024 - - - -### Updated content πŸ—οΈ - -* New content for [v1.15.0 release]({{}}). - -### Removed content πŸ—‘οΈ -* Removed end of support v1.12 documentation. Content -[archived on GitHub](https://github.com/crossplane/docs/releases/tag/v1.12-archive). - -### πŸ”¨ Docs fixes -* Fixed issues related to displaying tables in dark mode. \ No newline at end of file diff --git a/content/v1.16/release-notes/1.15.0.md b/content/v1.16/release-notes/1.15.0.md deleted file mode 100644 index 1c04b20a0..000000000 --- a/content/v1.16/release-notes/1.15.0.md +++ /dev/null @@ -1,31 +0,0 @@ ---- -title: v1.15.0 -released: November 15, 2023 -weight: 10 ---- - -The v1.15.0 release is a quarterly Crossplane release. - -Read the -[Crossplane announcement blog](https://blog.crossplane.io/crossplane-v1-15/). - -### πŸŽ‰ Highlights - -* The default [Crossplane package registry]({{}}) is now `xpkg.upbound.io`. -* New CLI [top]({{}}) command to view CPU - and memory usage. -* Expanding the CLI [trace]({{}}) command to - provide more details on package dependencies, types and revisions. -* Support in the [xpkg init]({{}}) command - to support a `NOTES.txt` file and initialization scripts. -* A new [migrate]({{}}) command to help - migrations from existing API kinds to future versions. - - - -### 🚨 Warnings and breaking changes -* The default package registry changed from `index.docker.io` to `xpkg.upbound.io`. -* Removed RBAC manager `--manage` flag. - - - \ No newline at end of file diff --git a/content/v1.16/release-notes/_index.md b/content/v1.16/release-notes/_index.md deleted file mode 100644 index 526e56744..000000000 --- a/content/v1.16/release-notes/_index.md +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Release Notes -weight: 600 -description: "Crossplane release notes" -product: "Release Notes" -cascade: - releaseNotes: true ---- - diff --git a/content/v1.16/release-notes/docs.md b/content/v1.16/release-notes/docs.md deleted file mode 100644 index dd385251a..000000000 --- a/content/v1.16/release-notes/docs.md +++ /dev/null @@ -1,63 +0,0 @@ ---- -title: Docs Changelog -weight: 999 ---- - -Changes and notable docs updates. - - - -## March 14, 2024 - -### Removed content πŸ—‘οΈ - -Removed information on installing Crossplane -[Providers]({{}}) and -[Packages]({{}}) offline using -the local package cache. Installing via the local package cache isn't intended -to be user facing and the recommended offline install method is with a private -registry. - -## February 22, 2024 - -### Updated content πŸ—οΈ - -* New [Crossplane upgrade]({{}}) documentation. -* Added notes to the [managed resources]({{}}) - page that Crossplane can't delete paused resources. -* Upgrade the AWS quickstart to use the new "no fork" Upjet provider version 1.1.0 -* Add links to the quickstart guides to the different authentication methods for - the provider. -* Expanded `crossplane beta validate` [command reference]({{}}). -* Documentation for the new [server side apply]({{}}) alpha feature. - - -### πŸ”¨ Docs fixes - - -* Fixed [an issue](https://github.com/crossplane/docs/pull/718) where mermaid - diagrams didn't display the right colors across light and dark modes. -* Added support for a "[you are here](https://github.com/crossplane/docs/pull/716)" - feature for doc page table of contents. -* Fixed the color of check marks (βœ”οΈ) in dark mode. - - -## February 15, 2024 - - - -### Updated content πŸ—οΈ - -* New content for [v1.15.0 release]({{}}). - -### Removed content πŸ—‘οΈ -* Removed end of support v1.12 documentation. Content -[archived on GitHub](https://github.com/crossplane/docs/releases/tag/v1.12-archive). - -### πŸ”¨ Docs fixes -* Fixed issues related to displaying tables in dark mode. \ No newline at end of file From a90a055dbb293449096c90f002a23b0b66e2a98e Mon Sep 17 00:00:00 2001 From: Nic Cope Date: Fri, 16 Aug 2024 17:23:09 -0700 Subject: [PATCH 2/6] Deprecate native P&T, focus Composition docs on functions Signed-off-by: Nic Cope --- content/master/cli/command-reference.md | 373 ++- content/master/concepts/_index.md | 10 - .../composite-resource-definitions.md | 4 +- .../master/concepts/composite-resources.md | 29 +- .../master/concepts/composition-functions.md | 745 ------ .../master/concepts/composition-revisions.md | 60 +- content/master/concepts/compositions.md | 1690 +++++--------- content/master/concepts/connection-details.md | 366 +-- .../master/concepts/environment-configs.md | 103 +- content/master/concepts/managed-resources.md | 100 +- content/master/concepts/packages.md | 6 +- .../master/concepts/patch-and-transform.md | 1726 -------------- content/master/concepts/server-side-apply.md | 2 +- content/master/concepts/usages.md | 58 +- .../master/getting-started/introduction.md | 22 +- .../getting-started/provider-aws-part-2.md | 144 +- .../getting-started/provider-azure-part-2.md | 277 ++- .../getting-started/provider-gcp-part-2.md | 113 +- .../guides/function-patch-and-transform.md | 2076 +++++++++++++++++ .../master/guides/vault-as-secret-store.md | 68 +- .../write-a-composition-function-in-go.md | 71 +- .../write-a-composition-function-in-python.md | 81 +- content/v1.14/concepts/connection-details.md | 2 +- content/v1.15/concepts/connection-details.md | 2 +- content/v1.16/concepts/connection-details.md | 2 +- .../styles/Crossplane/crossplane-words.txt | 1 + 26 files changed, 3763 insertions(+), 4368 deletions(-) delete mode 100644 content/master/concepts/composition-functions.md delete mode 100644 content/master/concepts/patch-and-transform.md create mode 100644 content/master/guides/function-patch-and-transform.md diff --git a/content/master/cli/command-reference.md b/content/master/cli/command-reference.md index 932d5865e..6fca3d5a3 100644 --- a/content/master/cli/command-reference.md +++ b/content/master/cli/command-reference.md @@ -32,6 +32,135 @@ Client Version: v1.16.0 Server Version: v1.16.0 ``` +## render + +The `crossplane render` command previews the output of a +[composite resource]({{}}) after applying +any [composition functions]({{}}). + +{{< hint "important" >}} +The `crossplane render` requires you to use composition functions. +{{< /hint >}} + +The `crossplane render` command connects to the locally running Docker +Engine to pull and run composition functions. + +{{}} +Running `crossplane render` requires [Docker](https://www.docker.com/). +{{< /hint >}} + +Provide a composite resource, composition and composition function YAML +definition with the command to render the output locally. + +For example, +`crossplane render xr.yaml composition.yaml function.yaml` + +The output includes the original composite resource followed by the generated +managed resources. + +{{}} +```yaml +--- +apiVersion: nopexample.org/v1 +kind: XBucket +metadata: + name: test-xrender +status: + bucketRegion: us-east-2 +--- +apiVersion: s3.aws.upbound.io/v1beta1 +kind: Bucket +metadata: + annotations: + crossplane.io/composition-resource-name: my-bucket + generateName: test-xrender- + labels: + crossplane.io/composite: test-xrender + ownerReferences: + - apiVersion: nopexample.org/v1 + blockOwnerDeletion: true + controller: true + kind: XBucket + name: test-xrender + uid: "" +spec: + forProvider: + region: us-east-2 +``` +{{< /expand >}} + +### Flags + +{{< table "table table-sm table-striped">}} +| Short flag | Long flag | Description | +| ------------ | ------------- | ------------------------------ | +| | `--context-files==,=` | A comma separated list of files to load for function "contexts." | +| | `--context-values==,=` | A comma separated list of key-value pairs to load for function "contexts." | +| `-r` | `--include-function-results` | Include the "results" or events from the function. | +| `-o` | `--observed-resources=` | +Provide artificial managed resource data to the function. +| +| `-x` | `--include-full-xr` | Include a copy of the input Composite Resource spec and metadata fields in the rendered output. | +| | `--timeout=` | Amount of time to wait for a function to finish. | +{{< /table >}} + +The `crossplane render` command relies on standard +[Docker environmental variables](https://docs.docker.com/engine/reference/commandline/cli/#environment-variables) +to connect to the local Docker engine and run composition functions. + + +### Provide function context + +The `--context-files` and `--context-values` flags can provide data +to a function's `context`. +The context is JSON formatted data. + +### Include function results + +If a function produces Kubernetes events with statuses use the +`--include-function-results` to print them along with the managed resource +outputs. + +### Include the composite resource + +Composition functions can only change the `status` field of a composite +resource. By default, the `crossplane render` command only prints the +`status` field with `metadata.name`. + +Use `--include-full-xr` to print the full composite resource, +including the `spec` and `metadata` fields. + +### Mock managed resources + +Provide mocked, or artificial data representing a managed resource with +`--observed-resources`. The `crossplane render` command treats the +provided inputs as if they were resources in a Crossplane cluster. + +A function can reference and manipulate the included resource as part of +running the function. + +The `observed-resources` may be a single YAML file with multiple resources or a +directory of YAML files representing multiple resources. + +Inside the YAML file include an +{{}}apiVersion{{}}, +{{}}kind{{}}, +{{}}metadata{{}} and +{{}}spec{{}}. + +```yaml {label="apiVersion"} +apiVersion: example.org/v1alpha1 +kind: ComposedResource +metadata: + name: test-render-b + annotations: + crossplane.io/composition-resource-name: resource-b +spec: + coolerField: "I'm cooler!" +``` + +The schema of the resource isn't validated and may contain any data. + ## xpkg The `crossplane xpkg` commands create, install and update Crossplane @@ -51,7 +180,7 @@ The CLI applies the required annotations and values to meet the The `crossplane` CLI supports building [configuration]({{< ref "../concepts/packages" >}}), -[function]({{}}) and +[function]({{}}) and [provider]({{}}) package types. @@ -117,6 +246,52 @@ Use `docker pull` to download a missing image. The `--embed-runtime-image-tarball` flag includes a local OCI image tarball inside the function or provider package. +### xpkg init + +The `crossplane xpkg init` command populates the current directory with +files to build a package. + +Provide a name to use for the package and the package template to start from +with the command +`crossplane xpkg init