Skip to content

v0.3.0

Choose a tag to compare

@github-actions github-actions released this 14 May 10:07
· 273 commits to main since this release
6584a91

What's Changed

Migration Notes

Note: changing any of these steps, especially the installation of the providers will severely mess up your setup. Be absolutely sure to check every time before doing any kubectl commands that these resources in fact have the apiGroup that you want to modify.

Full Changelog: https://github.com/SAP/crossplane-provider-cloudfoundry/commits/v0.3.0

Migration Steps:

These steps are applicable if you are using the SAP inner-source provider (version v2.2.5 or earlier) and you want to migrate the existing custom resources to use this provider:

  1. Copy manifests of the existing resources to your local machine
kubectl get Organization,Space,App,Orgmembers,Route,ServiceInstance,ServiceKey,Spacemembers,ProviderConfig,Domain -o yaml | yq 'del(.. | .status?)' > legacy-cf-resources.yaml
  1. Pause reconciliation of all resources via annotation (Synced = False)
kubectl annotate Organization,Space,App,Orgmembers,Route,ServiceInstance,ServiceKey,Spacemembers,ProviderConfig,Domain --all=true crossplane.io/paused="true"
  1. (manually) Modify the manifests on your local machine from step 1, according to resource-specific migration guide in the CRD browser. (Note: migration guides are available only internally at SAP )
  2. Install New Provider Version (Github.com v0.3.0) in your cluster.
  3. Apply the modified manifests of the new version, e.g.,
kubectl apply -f modified-legacy-cf-resources.yaml
  1. Ensure that the newly applied resources are synced.
  2. Remove the finalizers of the paused legacy resources (!!! Make sure these are your old resources !!! e.g. kubectl describe <Resource> has to include API Version: cloudfoundry.btp.orchestrate.cloud.sap/v1alpha1)
for resource in $(kubectl get Organization,Space,App,Orgmembers,Route,ServiceInstance,ServiceKey,Spacemembers,ProviderConfig,Domain -o name); do
  kubectl patch $resource --type merge -p '{"metadata":{"finalizers":[]}}'
done
  1. Delete legacy resources
kubectl delete Organization,Space,App,Orgmembers,Route,ServiceInstance,ServiceKey,Spacemembers,ProviderConfig,Domain --all
  1. Delete legacy provider version