provider-civo-upjet

module
v0.1.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 9, 2023 License: Apache-2.0

README

Provider Civo Upjet

provider-civo-upjet is a Crossplane provider that is built using Upjet code generation tools and exposes XRM-conformant managed resources for the Civo API.

Right now there are 3 CRDs: Network, Firewall and KubernetesCluster.

Getting Started

Install the provider by using the following command after changing the image tag to the latest release:

up ctp provider install upsidr/provider-civo-upjet:v0.1.0

Alternatively, you can use declarative installation:

cat <<EOF | kubectl apply -f -
apiVersion: pkg.crossplane.io/v1
kind: Provider
metadata:
  name: provider-civo-upjet
spec:
  package: upsidr/provider-civo-upjet:v0.1.0
EOF

Notice that in this example Provider resource is referencing ControllerConfig with debug enabled.

You can see the API reference here.

Running local provider

This was generated using the Upjet docs.

First, don't forget to fetch the build submodule:

make submodules

Install Crossplane in a kind cluster. Create your secret.yaml from the template in examples/providerconfig/.

# Create "crossplane-system" namespace if not exists
kubectl create namespace crossplane-system --dry-run=client -o yaml | kubectl apply -f -

kubectl apply -f package/crds

kubectl apply -f examples/providerconfig/secret.yaml
kubectl apply -f examples/providerconfig/providerconfig.yaml

Now run the provider locally against a Kubernetes cluster:

make run

Ready! Take a look at the examples/ directory and apply some resources.

Developing

Generate code and CRDs:

make generate

Build, push, and install:

# don't forget to review first
make reviewable test
make all

Build binary:

make build

Report a Bug

For filing bugs, suggesting improvements, or requesting new features, please open an issue.

Directories

Path Synopsis
Package apis contains Kubernetes API for the provider.
Package apis contains Kubernetes API for the provider.
civo/v1alpha1
+kubebuilder:object:generate=true +groupName=civo.upbound.io +versionName=v1alpha1
+kubebuilder:object:generate=true +groupName=civo.upbound.io +versionName=v1alpha1
v1alpha1
Package v1alpha1 contains the core resources of the civo jet provider.
Package v1alpha1 contains the core resources of the civo jet provider.
v1beta1
Package v1beta1 contains the core resources of the civo upjet provider.
Package v1beta1 contains the core resources of the civo upjet provider.
cmd
internal

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL