mirror of https://github.com/crossplane/docs.git
Remove outdated upgraded guides (#676)
* add redirects for removed KB section Signed-off-by: Pete Lumbis <pete@upbound.io> * remove outdated software guides Signed-off-by: Pete Lumbis <pete@upbound.io> * fix netlify redirect directive Signed-off-by: Pete Lumbis <pete@upbound.io> * remove old link to software pages Signed-off-by: Pete Lumbis <pete@upbound.io> --------- Signed-off-by: Pete Lumbis <pete@upbound.io>
This commit is contained in:
parent
7238882f63
commit
3fb9be9e5e
|
@ -18,9 +18,6 @@ practices, third-party integrations and Crossplane-related how-tos.
|
|||
and using Crossplane.
|
||||
* [Integrations]({{<ref "integrations" >}}) are topics using Crossplane with
|
||||
third-party tools like [Vault](https://www.vaultproject.io/).
|
||||
* [Installing and Upgrading]({{< ref "install" >}}) provides more
|
||||
information for upgrading or managing Crossplane software beyond the basic
|
||||
conditions covered in the standard documentation.
|
||||
|
||||
## Contribute an article
|
||||
Contributions to the Knowledge Base are always welcome. Knowledge Base articles
|
||||
|
|
|
@ -1,11 +0,0 @@
|
|||
---
|
||||
title: Installing and Upgrading
|
||||
weight: 30
|
||||
description: Special considerations on installing and upgrading Crossplane
|
||||
---
|
||||
|
||||
Installing and upgrading guides cover unique scenarios related to installing or
|
||||
upgrading Crossplane.
|
||||
|
||||
Install and upgrade guides include unique compatibility scenarios for upgrading
|
||||
or in depth examples for installing under specific conditions.
|
|
@ -1,162 +0,0 @@
|
|||
---
|
||||
title: Upgrading to v0.14
|
||||
weight: 210
|
||||
---
|
||||
|
||||
Crossplane made a small handful of breaking changes in v0.14. The most broadly
|
||||
impactful change was updating the `CompositeResourceDefinition` (XRD) schema to
|
||||
support defining multiple versions of a composite resource (XR) at once. This
|
||||
guide covers how to upgrade from v0.13 of Crossplane to v0.14.
|
||||
|
||||
- [Updating CompositeResourceDefinitions](#updating-compositeresourcedefinitions)
|
||||
- [Updating Packages](#updating-packages)
|
||||
|
||||
## Updating CompositeResourceDefinitions
|
||||
|
||||
In v0.14 the schema of XRD was updated to support defining multiple versions of
|
||||
an XR. This update requires manual update steps. To upgrade from v0.13 to v0.14
|
||||
you must:
|
||||
|
||||
1. Ensure you have up-to-date YAML representations of all of your XRDs.
|
||||
1. `helm upgrade` your Crossplane release.
|
||||
1. Update and apply all of your XRDs.
|
||||
|
||||
Note that Crossplane will not actively reconcile your XRs between steps 2 and 3,
|
||||
and you will see some errors in the events and logs, but your managed resources
|
||||
(and thus infrastructure) will continue to run. Follow the below steps in order
|
||||
to update your XRDs for v0.14:
|
||||
|
||||
1. Rename `spec.crdSpecTemplate` to `spec.versions`.
|
||||
1. Move `spec.versions.group` to `spec.group`.
|
||||
1. Move `spec.versions.names` to `spec.names`.
|
||||
1. Rename `spec.versions.version` to `spec.versions.name`
|
||||
1. Rename `spec.versions.validation` (if set) to `spec.versions.schema`.
|
||||
1. Rename `spec.versions.additionalPrinterColumns[].JSONPath` (if set) to
|
||||
`spec.versions.additionalPrinterColumns[].jsonPath`.
|
||||
1. Set `spec.versions.served` to `true`.
|
||||
1. Set `spec.versions.referenceable` to `true`.
|
||||
1. Make `spec.versions` a single element array.
|
||||
|
||||
For example, the below XRD:
|
||||
|
||||
```yaml
|
||||
apiVersion: apiextensions.crossplane.io/v1alpha1
|
||||
kind: CompositeResourceDefinition
|
||||
metadata:
|
||||
name: xpostgresqlinstances.database.example.org
|
||||
spec:
|
||||
claimNames:
|
||||
kind: PostgreSQLInstance
|
||||
plural: postgresqlinstances
|
||||
connectionSecretKeys:
|
||||
- username
|
||||
- password
|
||||
- endpoint
|
||||
- port
|
||||
crdSpecTemplate:
|
||||
group: database.example.org
|
||||
version: v1alpha1
|
||||
names:
|
||||
kind: XPostgreSQLInstance
|
||||
plural: xpostgresqlinstances
|
||||
validation:
|
||||
openAPIV3Schema:
|
||||
type: object
|
||||
properties:
|
||||
spec:
|
||||
type: object
|
||||
properties:
|
||||
parameters:
|
||||
type: object
|
||||
properties:
|
||||
storageGB:
|
||||
type: integer
|
||||
required:
|
||||
- storageGB
|
||||
required:
|
||||
- parameters
|
||||
```
|
||||
|
||||
Would become:
|
||||
|
||||
```yaml
|
||||
apiVersion: apiextensions.crossplane.io/v1alpha1
|
||||
kind: CompositeResourceDefinition
|
||||
metadata:
|
||||
name: xpostgresqlinstances.database.example.org
|
||||
spec:
|
||||
group: database.example.org
|
||||
names:
|
||||
kind: XPostgreSQLInstance
|
||||
plural: xpostgresqlinstances
|
||||
claimNames:
|
||||
kind: PostgreSQLInstance
|
||||
plural: postgresqlinstances
|
||||
connectionSecretKeys:
|
||||
- username
|
||||
- password
|
||||
- endpoint
|
||||
- port
|
||||
versions:
|
||||
- name: v1alpha1
|
||||
served: true
|
||||
referenceable: true
|
||||
schema:
|
||||
openAPIV3Schema:
|
||||
type: object
|
||||
properties:
|
||||
spec:
|
||||
type: object
|
||||
properties:
|
||||
parameters:
|
||||
type: object
|
||||
properties:
|
||||
storageGB:
|
||||
type: integer
|
||||
required:
|
||||
- storageGB
|
||||
required:
|
||||
- parameters
|
||||
```
|
||||
|
||||
## Updating Packages
|
||||
|
||||
A minor breaking change was made to on-disk package types
|
||||
(`meta.pkg.crossplane.io`). In v0.13, the `spec.crossplane` field was present to
|
||||
specify a compatible Crossplane version range, but it was not honored by the
|
||||
package manager when packages were installed. The field was refactored to
|
||||
`spec.crossplane.version` meaning that packages that previously specified
|
||||
`spec.crossplane` will fail to parse when building with the Crossplane CLI or
|
||||
installing into a Crossplane Kubernetes cluster. If `spec.crossplane` was not
|
||||
specified, packages compatible with Crossplane v0.13 will continue to be
|
||||
compatible in v0.14. This is true for both `Provider` and `Configuration`
|
||||
packages.
|
||||
|
||||
The following example shows how a `Configuration` package that specified
|
||||
`spec.crossplane` can be updated to specify Crossplane version constraints that
|
||||
will be honored by the package manager in v0.14:
|
||||
|
||||
```yaml
|
||||
apiVersion: meta.pkg.crossplane.io/v1alpha1
|
||||
kind: Configuration
|
||||
metadata:
|
||||
name: my-configuration
|
||||
spec:
|
||||
crossplane: ">=v0.13.0"
|
||||
```
|
||||
|
||||
Would become:
|
||||
|
||||
```yaml
|
||||
apiVersion: meta.pkg.crossplane.io/v1alpha1
|
||||
kind: Configuration
|
||||
metadata:
|
||||
name: my-configuration
|
||||
spec:
|
||||
crossplane:
|
||||
version: ">=v0.13.0"
|
||||
```
|
||||
|
||||
Please note that while `spec.dependsOn` is also a valid field in on-disk package
|
||||
types, it is not yet honored by the package manager and will be ignored at
|
||||
installation time.
|
|
@ -1,46 +0,0 @@
|
|||
---
|
||||
title: Upgrading to v1.x
|
||||
weight: 220
|
||||
---
|
||||
|
||||
Crossplane versions post v1.0 do not introduce any breaking changes, but may
|
||||
make some backward compatible changes to the core Crossplane CRDs. Helm [does
|
||||
not currently touch CRDs](https://github.com/helm/helm/issues/6581) when a chart
|
||||
is upgraded, so Crossplane has moved to [managing its own
|
||||
CRDs](https://github.com/crossplane/crossplane/pull/2160) as of v1.2.0. However,
|
||||
for versions prior to v1.2.0, you must manually apply the appropriate CRDs
|
||||
before upgrading.
|
||||
|
||||
## Upgrading to v1.0.x or v1.1.x
|
||||
|
||||
To upgrade from the currently installed version, run:
|
||||
|
||||
```console
|
||||
# Update to the latest CRDs.
|
||||
kubectl apply -k https://github.com/crossplane/crossplane//cluster?ref=<release-branch>
|
||||
|
||||
# Update to the latest stable Helm chart for the desired version
|
||||
helm --namespace crossplane-system upgrade crossplane crossplane-stable/crossplane --version <version>
|
||||
```
|
||||
|
||||
## Upgrading to v1.2.x and Subsequent Versions
|
||||
|
||||
Since `v1.2.0`, we do not include any custom resource instances in our Helm chart.
|
||||
This means the `Lock` object and `Provider`s and `Configuration`s you might have
|
||||
possibly installed via Helm values will get deleted when you upgrade to `v1.2.x`.
|
||||
The following commands will instruct Helm not to delete any instances of those
|
||||
types:
|
||||
|
||||
```console
|
||||
for name in $(kubectl get locks.pkg.crossplane.io -o name); do kubectl annotate $name 'helm.sh/resource-policy=keep'; done
|
||||
for name in $(kubectl get providers.pkg.crossplane.io -o name); do kubectl annotate $name 'helm.sh/resource-policy=keep'; done
|
||||
for name in $(kubectl get configurations.pkg.crossplane.io -o name); do kubectl annotate $name 'helm.sh/resource-policy=keep'; done
|
||||
```
|
||||
|
||||
After annotations are in place you can upgrade from the currently installed version
|
||||
by running:
|
||||
|
||||
```console
|
||||
# Update to the latest stable Helm chart for the desired version
|
||||
helm --namespace crossplane-system upgrade crossplane crossplane-stable/crossplane --version <version>
|
||||
```
|
|
@ -43,6 +43,11 @@ from = "/v1.9/getting-started/install-configure"
|
|||
to = "/latest/software/install/"
|
||||
status = 302
|
||||
|
||||
[[redirects]]
|
||||
# Redirects for deleted pages/sections
|
||||
from = "/knowledge-base/install/**"
|
||||
to = "/latest/software/"
|
||||
status = 302
|
||||
|
||||
[context.deploy-preview]
|
||||
command = "bash netlify_build.sh"
|
||||
|
|
Loading…
Reference in New Issue