The Cloud Native Control Plane
This is a patch release scoped to fixing issues reported by users of Crossplane v1.15. The issues of particular note that are resolved in this release are:
Full Changelog: https://github.com/crossplane/crossplane/compare/v1.15.1...v1.15.2
This is a patch release scoped to fixing issues reported by users of Crossplane v1.14. The issues of particular note that are resolved in this release are:
Full Changelog: https://github.com/crossplane/crossplane/compare/v1.14.7...v1.14.8
Full Changelog: https://github.com/crossplane/crossplane/compare/v1.15.0...v1.15.1
Full Changelog: https://github.com/crossplane/crossplane/compare/v1.14.6...v1.14.7
Release v1.14.6 contains a few recent bug and security fixes.
Full Changelog: https://github.com/crossplane/crossplane/compare/v1.14.5...v1.14.6
The v1.15.0 release is a regular quarterly Crossplane release that is focused on expanding the capabilities of Crossplane's Composition features, enhancing the Crossplane CLI, and improving the developer experience. This release introduces key enhancements and new features that further empower platform engineers and developers to compose their infrastructure using Crossplane.
crossplane beta validate
for schema validation, crossplane beta top
for resource utilization views similar to kubectl top pods, and crossplane beta convert
for converting resources to newer formats or configurations.crossplane xpkg init
with support for specific git references and additional templates, and crossplane beta render
with new flags for including full XR details and context.crossplane beta trace
now understands Crossplane packages and can display the entire dependency graph for a given package, along with status for each entry, vastly simplifying the troubleshooting of Crossplane package installations and upgrades.xpkg.upbound.io
from index.docker.io
. After upgrading, Crossplane will start pulling packages from xpkg.upbound.io
, unless a fully qualified name is specified for a package that includes the specific registry the package resides in, or you have overridden the default registry value with the --registry
flag.
spec.package
field is set to:
crossplane-contrib/provider-aws:v0.39.0
, it will now be pulled from xpkg.upbound.io
.index.docker.io/crossplane-contrib/provider-aws:v0.39.0
, it will be pulled from index.docker.io
(because an explicit registry is specified)--set args='{"--registry=index.docker.io"}'
during the Helm upgrade.--manage
flag was dropped, this flag allowed configuring the management policies between All
and Basic
.
v1.13
we switched the default to Basic
, and now we are removing the All
option completely.All
behaviour.What's new in v1.15.0?
Alpha support for Server-Side Apply (ssa) based syncing between Composite Resources and Claims was introduced in this release and can be enabled by passing the --enable-ssa-claims
flag to Crossplane. This allows to solve a few syncing issues reported by users, but also implies some behaviour changes that users need to be aware of and provide feedback for before enabling it by default, see the related issue for more details.
Composition Functions can now request Crossplane to fetch any cluster-scoped resource Crossplane has access to for them, so before computing the "desired state", this opens up a lot of possibilities, such as reimplementing almost completely the in-tree environment
support as a Function, see crossplane-contrib/function-environment-configs.
Crossplane will now emit basic metrics related to Functions, e.g. number of requests sent, number of responses received and runs duration. See https://github.com/crossplane/crossplane/pull/5006 for example metrics.
In addition to Go, Composition Functions can now easily be written in Python too, thanks to a new SDK and template. You can read more about it in the docs.
Crossplane v1.15 introduces a few new subcommands:
crossplane beta validate
: allowing to validate a set of resources against their schemas. Being built for Crossplane, the command can automatically download schemas for Crossplane Packages (xpkgs
) and directly understands CompositeResourceDefinitions
(XRDs
).crossplane beta top
: providing quick resource utilization insight for Crossplane's pods, similar to kubectl top pods
.crossplane beta convert
with two subcommands:
pipeline-composition
: which allows to automatically convert Compositions to the Pipeline
mode, using crossplane-contrib/function-patch-and-transform
.deployment-runtime
: which allows to automatically convert a deprecated ControllerConfig
resource to the new DeploymentRuntimeConfig
.Existing subcommands were also improved:
crossplane xpkg init
now also supports printing helpful messages and init-scripts. It now support initialising from a specific git reference, --ref-name
, and also two new templates: function-template-python
and configuration-template
.crossplane beta render
was enriched with a few new flags and capabilities:
--include-full-xr
: to output the full Composite Resource (XR
), copying the spec and metadata provided as input, so that can be easily validated using crossplane beta validate
.--include-context
: to output the pipeline's Context
, for better insight in the pipeline execution.--extra-resources
: to load extra resources so that a Function in the pipeline can access themReady
condition according to the pipeline's output.crossplane beta trace
now can show the tree of resources also for Crossplane Packages (xpkgs
: Providers/Functions/Configurations), to help debugging issues with those too. For Composite Resources instead it can now show also the resource name as defined by the Composition, using -o wide
, to allow easily recognising resources with random names..spec.compositionUpdatePolicy
field by @pedjak in https://github.com/crossplane/crossplane/pull/4928
NameGenerator
for composite name generation by @pedjak in https://github.com/crossplane/crossplane/pull/5062
--manage
by @negz in https://github.com/crossplane/crossplane/pull/5260
crossplane beta validate
subcommand for offline schema validation by @ezgidemirel in https://github.com/crossplane/crossplane/pull/5197
validate
subcommand by @ezgidemirel in https://github.com/crossplane/crossplane/pull/5326
init
- add option to select branch/tag by @github-actions in https://github.com/crossplane/crossplane/pull/5392
Full Changelog: https://github.com/crossplane/crossplane/compare/v1.15.0-rc.0...v1.15.0
Crossplane version v1.15.0-rc.1
is a release candidate intended to collect input from the community and offer users an opportunity to experiment with Crossplane in non-production environments before the official release of version v1.15.0
.
[!WARNING]
This is a pre-release; do not use it in production environments!
To install Crossplane with this release:
helm repo add crossplane-stable https://charts.crossplane.io/stable --force-update
helm install crossplane --namespace crossplane-system --create-namespace crossplane-stable/crossplane --devel
To install Crossplane Cli with this release:
curl -sL https://raw.githubusercontent.com/crossplane/crossplane/v1.15.0-rc.1/install.sh | XP_VERSION=v1.15.0-rc.1 sh
The detailed release notes will be provided with the official v1.15.0
. In the meantime, you can review the commit changes made since version 1.14.0 here and see below for a short list of changes worth having a look at before upgrading/installing:
--manage
by @negz in https://github.com/crossplane/crossplane/pull/5260
This patch release includes two bug fixes:
EnvironmentConfig
selector maxMatch
is set, but the returned number of config is lower than the set value (#5127)--runtime-config
flag when installing providers/functions (#5164)Full Changelog: https://github.com/crossplane/crossplane/compare/v1.14.4...v1.14.5
This patch release includes bug fixes in various areas:
Single
mode spec.environment.environmentConfigs[*].selector
, an error will occur as per the original design. If you want it to be optional, switch to Multiple
mode and set maxMatch
accordingly (e.g., 1).spec.environment.environmentConfigs[*].selector.minMatch
which defaults to 0. It specifies the minimum number of EnvironmentConfigs
to match for Multiple
mode label selectors. If fewer matches are found than desired, an error will be produced.Full Changelog: https://github.com/crossplane/crossplane/compare/v1.14.3...v1.14.4
This patch contains two bug fixes:
crossplane beta trace
to show the connection secret for ClaimsFull Changelog: https://github.com/crossplane/crossplane/compare/v1.14.2...v1.14.3