k8s-anexia-ccm

command module
v1.5.6 Latest Latest
Warning

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

Go to latest
Published: Apr 25, 2024 License: Apache-2.0 Imports: 20 Imported by: 0

README

Code coverage

Kubernetes cloud-controller-manager for Anexia Cloud

Development quickstart

Requires a Go (>= 1.18) toolchain and make. For compiling and testing, use the make targets k8s-anexia-ccm (default target) and test. Targets for running and interactive debugging are run and debug, but you need some more setup first:

  • create API key for Anexia Engine
  • create cluster in Anexia Kubernetes Service
  • copy envrc-sample to .envrc, fill your values and run direnv allow
    • alternatively, you can export ANEXIA_TOKEN with your token and KKP_HUMAN_READABLE_NAME with your cluster's name

Interactive debugging requires delve to be installed in path.

Running (and debugging) is handled by hack/anxkube-dev-run, which first retrieves configs, command line arguments and co from the seed cluster, pauses the Cluster object and scales in-cluster CCM down to 0 - make sure you revert that when not using your cluster only for development.

Because of that magic, you need kubectl for running and debug and it has to be configured for the correct seed cluster as current context. The script also has more dependencies, but it will tell you.

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis
anx
provider/loadbalancer
Package loadbalancer wraps Anexias LBaaS service to an interface more suitable for K8s LoadBalancer usage
Package loadbalancer wraps Anexias LBaaS service to an interface more suitable for K8s LoadBalancer usage
provider/loadbalancer/reconciliation
Package reconciliation contains logic to configure resources for a single Anexia LBaaS LoadBalancer for a given set of external addresses, ports and servers.
Package reconciliation contains logic to configure resources for a single Anexia LBaaS LoadBalancer for a given set of external addresses, ports and servers.
provider/test/apimock
Package apimock is a generated GoMock package.
Package apimock is a generated GoMock package.
provider/test/legacyapimock
Package legacyapimock is a generated GoMock package.
Package legacyapimock is a generated GoMock package.

Jump to

Keyboard shortcuts

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