crossplane-provider-upcloud
is a Crossplane provider that
is built using Upjet code
generation tools and exposes XRM-conformant managed resources for the
UpCloud API.
The name of the provider in UpBound Marketplace is provider-upcloud
.
Please note that this project is currently in early alpha version, we do not recommend running it in production yet.
-
You will need a Kubernetes cluster to start using a provider. You can use any Kubernetes cluster, but for testing and development purposes, a Kind cluster is recommended:
kind create cluster -n crossplane-test
-
Next install UpCloud provider. The simplest way to do that is to just apply the following yaml:
apiVersion: pkg.crossplane.io/v1 kind: Provider metadata: name: provider-upcloud spec: package: xpkg.upbound.io/upcloud/provider-upcloud:v0.0.7
Make sure to change the version to the latest one.
-
Next, you need to create a
Secret
with your UpCloud API credentials and aProviderConfig
that will use them to provision your infrastructure. Just apply this yaml:apiVersion: v1 kind: Secret metadata: name: example-provider-creds namespace: default type: Opaque stringData: credentials: | { "username": "username", "password": "password123" } --- apiVersion: provider.upcloud.com/v1beta1 kind: ProviderConfig metadata: name: default spec: credentials: source: Secret secretRef: name: example-provider-creds namespace: default key: credentials
-
And now you can start creating your infrastructure. Check our examples to see what Managed Resources you can use and how. Have fun!
While this provider allows you to manage most of the UpCloud services, support for some is still missing. The missing list includes:
We are currently working on adding support for them, thank you for your patience!
For filing bugs, suggesting improvements, or requesting new features, please open an issue.
For development instructions see DEVELOPING.md