gardener-extension-provider-ionos

module
v0.0.26 Latest Latest
Warning

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

Go to latest
Published: May 23, 2022 License: Apache-2.0, MIT

README

This Gardener Extension Provider is a work in progress. Code may still break at any time. DO NOT USE IT.


Gardener Extension for IONOS Cloud provider

CI Build status Go Report Card

Project Gardener implements the automated management and operation of Kubernetes clusters as a service. Its main principle is to leverage Kubernetes concepts for all of its tasks.

Recently, most of the vendor specific logic has been developed in-tree. However, the project has grown to a size where it is very hard to extend, maintain, and test. With GEP-1 we have proposed how the architecture can be changed in a way to support external controllers that contain their very own vendor specifics. This way, we can keep Gardener core clean and independent.

This controller implements Gardener's extension contract for the IONOS cloud provider.

All ControllerRegistration resources that can be used to register this controller to Gardener can be found under releases.

Please find more information regarding the extensibility concepts and a detailed proposal here.

Supported Kubernetes versions

This extension controller supports the following Kubernetes versions:

Version Support
Kubernetes 1.23 1.23.0+
Kubernetes 1.22 1.22.0+
Kubernetes 1.21 1.21.0+
Kubernetes 1.20 1.20.0+
Kubernetes 1.19 1.19.0+
Kubernetes 1.18 1.18.0+
Kubernetes 1.17 1.17.0+
Kubernetes 1.16 1.16.0+
Kubernetes 1.15 1.15.0+

Please take a look here to see which versions are supported by Gardener in general.


How to start using or developing this extension controller locally

You can run the controller locally on your machine by executing make start.

Static code checks and tests can be executed by running VERIFY=true make all. We are using Go modules for Golang package dependency management and Ginkgo/Gomega for testing.

Feedback and Support

Feedback and contributions are always welcome. Please report bugs or suggestions as GitHub issues or join our Slack channel #gardener (please invite yourself to the Kubernetes workspace here).

Learn more!

Please find further resources about out project here:

Directories

Path Synopsis
gardener-extension-provider-ionos
Package chart enables go:generate support for generating the correct controller registration.
Package chart enables go:generate support for generating the correct controller registration.
cmd
gardener-extension-admission-ionos
Package main provides the application's entry point
Package main provides the application's entry point
gardener-extension-provider-ionos
Package main provides the application's entry point
Package main provides the application's entry point
pkg
cmd/admission
Package admission provides admission webhook configuration structures used for command execution
Package admission provides admission webhook configuration structures used for command execution
cmd/controller
Package controller provides Kubernetes controller configuration structures used for command execution
Package controller provides Kubernetes controller configuration structures used for command execution
controller/controlplane
Package controlplane contains functions used at the controlplane controller
Package controlplane contains functions used at the controlplane controller
controller/healthcheck
Package healthcheck contains functions used for cluster validation
Package healthcheck contains functions used for cluster validation
controller/infrastructure
Package infrastructure contains functions used at the infrastructure controller
Package infrastructure contains functions used at the infrastructure controller
controller/infrastructure/ensurer
Package ensurer provides functions used to ensure infrastructure changes to be applied
Package ensurer provides functions used to ensure infrastructure changes to be applied
controller/worker
Package worker contains functions used at the worker controller
Package worker contains functions used at the worker controller
ionos
Package ionos provides types and functions used for ionos interaction
Package ionos provides types and functions used for ionos interaction
ionos/apis
Package apis is the main package for ionos specific APIs
Package apis is the main package for ionos specific APIs
ionos/apis/config
Package config provides ionos.provider.extensions.config.gardener.cloud
Package config provides ionos.provider.extensions.config.gardener.cloud
ionos/apis/config/install
Package install provides functions used for registration of ionos.provider.extensions.config.gardener.cloud
Package install provides functions used for registration of ionos.provider.extensions.config.gardener.cloud
ionos/apis/config/loader
Package loader contains functions used for reading ionos.provider.extensions.config.gardener.cloud
Package loader contains functions used for reading ionos.provider.extensions.config.gardener.cloud
ionos/apis/config/v1alpha1
Package v1alpha1 provides ionos.provider.extensions.config.gardener.cloud/v1alpha1
Package v1alpha1 provides ionos.provider.extensions.config.gardener.cloud/v1alpha1
ionos/apis/controller
Package controller provides functions to access controller specifications
Package controller provides functions to access controller specifications
ionos/apis/install
Package install provides functions used for registration of ionos.provider.extensions.gardener.cloud
Package install provides functions used for registration of ionos.provider.extensions.gardener.cloud
ionos/apis/mock
Package mock provides all methods required to simulate a IONOS provider environment
Package mock provides all methods required to simulate a IONOS provider environment
ionos/apis/transcoder
Package transcoder is used for API related object transformations
Package transcoder is used for API related object transformations
ionos/apis/v1alpha1
Package v1alpha1 contains the IONOS provider API resources.
Package v1alpha1 contains the IONOS provider API resources.
ionos/apis/validation
Package validation contains functions to validate controller specifications
Package validation contains functions to validate controller specifications
webhook/controlplane
Package controlplane contains functions used to provide /controlplane
Package controlplane contains functions used to provide /controlplane

Jump to

Keyboard shortcuts

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