Upbound Universal Crossplane (UXP)
Upbound Universal Crossplane (UXP) is Upbound's official enterprise-grade distribution of Crossplane. It's fully compatible with upstream Crossplane, open source, capable of connecting to Upbound Cloud for real-time dashboard visibility, and maintained by Upbound. It's the easiest way for both individual community members and enterprises to build their production control planes.
Quick Start
Install the Upbound CLI.
curl -sL https://cli.upbound.io | shTo install with Homebrew:
brew install upbound/tap/upInstall UXP to a Kubernetes cluster.
# Make sure your ~/.kube/config file points to your cluster
up uxp installInstallation With Helm 3
Helm requires the use of --devel flag for versions with suffixes, like v1.2.1-up.3. But Helm repository we use is the stable repository so use of that flag is only a workaround, you will always get the latest stable version of UXP.
Create the namespace to install UXP.
kubectl create namespace upbound-systemAdd upbound-stable chart repository.
helm repo add upbound-stable https://charts.upbound.io/stable && helm repo updateInstall the latest stable version of UXP.
helm install uxp --namespace upbound-system upbound-stable/universal-crossplane --develUpgrade from upstream Crossplane
In order to upgrade from upstream Crossplane, the target UXP version has to match the Crossplane version until the -up.N suffix. For example, you can upgrade from Crossplane v1.2.1 only to a UXP version that looks like v1.2.1-up.N but not to a v1.3.0-up.N. It'd need to be upgraded to upstream Crossplane v1.3.0 and then UXP v1.3.0-up.N.
Using up CLI
# Assuming it is installed in "crossplane-system" with release name "crossplane".
up uxp upgrade -n crossplane-systemIf you'd like to upgrade to a specific version, run the following:
# Assuming it is installed in "crossplane-system" with release name "crossplane".
up uxp upgrade vX.Y.Z-up.N -n crossplane-systemUsing Helm 3
# Assuming it is installed in "crossplane-system" with release name "crossplane".
helm upgrade crossplane --namespace crossplane-system upbound-stable/universal-crossplane --develIf you'd like to upgrade to a specific version, run the following:
# Assuming it is installed in "crossplane-system" with release name "crossplane".
helm upgrade crossplane --namespace crossplane-system upbound-stable/universal-crossplane --devel --version vX.Y.Z-up.NContributing
See CONTRIBUTING.md
Releases
After each minor Crossplane release, a corresponding patched and hardened version of Universal Crossplane will be released after 2 weeks at the latest.
After the minor release of UXP, we will update that version with UXP-specific patches by incrementing -up.X suffix as well as upstream patches by incrementing the patch version to the corresponding number.
An example timeframe would be like the following:
- Crossplane
v1.5.0is released. - 2 weeks bake period.
- The latest version in
release-1.5is nowv1.5.2 - The first release of UXP for v1.5 would be
v1.5.2-up.1. - We take the latest patched version at the end of 2 weeks, not
v1.5.0-up.1for example, if there is a patch release. - Crossplane
v1.5.3is released after the initial 2 weeks bake period. - UXP
v1.5.3-up.1will be released immediately to accommodate the fix coming with the patch version.
Additional Resources
- The UXP Documentation provides additional information about UXP and resources for developers, like examples.
- The developer guide describes how to build and run UXP locally from source.
- UXP Slack is where you can go to get all of your UXP questions answered.