provider-avi

module
v0.1.2-rc Latest Latest
Warning

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

Go to latest
Published: Jul 15, 2024 License: Apache-2.0

README

Provider Avi

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

Getting Started

Install the provider
apiVersion: pkg.crossplane.io/v1
kind: Provider
metadata:
  name: provider-avi
spec:
  package: ghcr.io/dana-team/provider-avi:<release>
  runtimeConfigRef:
    apiVersion: pkg.crossplane.io/v1beta1
    kind: DeploymentRuntimeConfig
    name: config
apiVersion: pkg.crossplane.io/v1beta1
kind: DeploymentRuntimeConfig
metadata:
  name: config
spec:
  deploymentTemplate:
    spec:
      selector:
        matchLabels:
          pkg.crossplane.io/provider: provider-avi
      template:
        spec:
          containers:
          - args:
            - --debug
            name: package-runtime

Configuration

To connect to the provider, create the following secret:

apiVersion: v1
kind: Secret
metadata:
  name: example-creds
  namespace: crossplane-system
type: Opaque
stringData:
  credentials: |
    {
      "avi_username": "<AVI-USERNAME>",
      "avi_tenant": "<AVI-TENANT>",
      "avi_password": "<AVI-PASSWORD>",
      "avi_controller": "<AVI-CONTROLLER>",
      "avi_version": "<AVI-VERSION>"
    }

Then create the ProviderConfig:

apiVersion: avi.crossplane.io/v1beta1
kind: ProviderConfig
metadata:
  name: default
spec:
  credentials:
    source: Secret
    secretRef:
      name: example-creds
      namespace: crossplane-system
      key: credentials

Resources

To Install the CRDs manually, run:

$ go install golang.org/x/tools/cmd/goimports@latest
$ make generate
$ kubectl apply -f package/crds

Directories

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

Jump to

Keyboard shortcuts

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