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 | sh
To install with Homebrew:
brew install upbound/tap/up
Install UXP to a Kubernetes cluster.
# Make sure your ~/.kube/config file points to your cluster
up uxp install
Installation 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-system
Add upbound-stable
chart repository.
helm repo add upbound-stable https://charts.upbound.io/stable && helm repo update
Install the latest stable version of UXP.
helm install uxp --namespace upbound-system upbound-stable/universal-crossplane --devel
Upgrade 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-system
If 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-system
Using Helm 3
# Assuming it is installed in "crossplane-system" with release name "crossplane".
helm upgrade crossplane --namespace crossplane-system upbound-stable/universal-crossplane --devel
If 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.N
Contributing
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.0
is released. - 2 weeks bake period.
- The latest version in
release-1.5
is 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.1
for example, if there is a patch release. - Crossplane
v1.5.3
is released after the initial 2 weeks bake period. - UXP
v1.5.3-up.1
will 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.