operator-sdk

module
v1.22.1 Latest Latest
Warning

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

Go to latest
Published: Jul 12, 2022 License: Apache-2.0

README

Build Status License

Documentation

Docs can be found on the Operator SDK website.

Overview

This project is a component of the Operator Framework, an open source toolkit to manage Kubernetes native applications, called Operators, in an effective, automated, and scalable way. Read more in the introduction blog post.

Operators make it easy to manage complex stateful applications on top of Kubernetes. However writing an Operator today can be difficult because of challenges such as using low level APIs, writing boilerplate, and a lack of modularity which leads to duplication.

The Operator SDK is a framework that uses the controller-runtime library to make writing operators easier by providing:

  • High level APIs and abstractions to write the operational logic more intuitively
  • Tools for scaffolding and code generation to bootstrap a new project fast
  • Extensions to cover common Operator use cases

Dependency and platform support

Go version

Release binaries will be built with the Go compiler version specified in the developer guide. A Go Operator project's Go version can be found in its go.mod file.

Kubernetes versions

Supported Kubernetes versions for your Operator project or relevant binary can be determined by following this compatibility guide.

Platforms

The set of supported platforms for all binaries and images can be found in these tables.

Community and how to get involved

How to contribute

Check out the contributor documentation.

License

Operator SDK is under Apache 2.0 license. See the LICENSE file for details.

Directories

Path Synopsis
cmd
hack
images
internal
ansible/watches
Package watches provides the structures and functions for mapping a GroupVersionKind to an Ansible playbook or role.
Package watches provides the structures and functions for mapping a GroupVersionKind to an Ansible playbook or role.
bindata/olm
Package olm generated by go-bindata.// sources: olm-manifests/0.19.1-crds.yaml olm-manifests/0.19.1-olm.yaml olm-manifests/0.20.0-crds.yaml olm-manifests/0.20.0-olm.yaml olm-manifests/0.21.2-crds.yaml olm-manifests/0.21.2-olm.yaml
Package olm generated by go-bindata.// sources: olm-manifests/0.19.1-crds.yaml olm-manifests/0.19.1-olm.yaml olm-manifests/0.20.0-crds.yaml olm-manifests/0.20.0-olm.yaml olm-manifests/0.21.2-crds.yaml olm-manifests/0.21.2-olm.yaml
generate/packagemanifest/packagemanifestfakes
Code generated by counterfeiter.
Code generated by counterfeiter.
helm/client
Package client provides helper functions for API clients used by the helm operator.
Package client provides helper functions for API clients used by the helm operator.
helm/controller
Package controller provides functions for creating and registering a Helm controller with a `controller-runtime` manager.
Package controller provides functions for creating and registering a Helm controller with a `controller-runtime` manager.
helm/internal/types
Package types contains types used by various components of the Helm operator
Package types contains types used by various components of the Helm operator
helm/release
Package release provides interfaces and default implementations for a Helm release manager, which is used by the Helm controller and reconciler to manage Helm releases in a cluster based on watched custom resources.
Package release provides interfaces and default implementations for a Helm release manager, which is used by the Helm controller and reconciler to manage Helm releases in a cluster based on watched custom resources.
olm/client
Package olm provides an API to install, uninstall, and check the status of an Operator Lifecycle Manager installation.
Package olm provides an API to install, uninstall, and check the status of an Operator Lifecycle Manager installation.
olm/installer
Package olm provides an API to install, uninstall, and check the status of an Operator Lifecycle Manager installation.
Package olm provides an API to install, uninstall, and check the status of an Operator Lifecycle Manager installation.
plugins/envtest/v1
This plugin replaces the test target of go/v2 plugins to match that of go/v3.
This plugin replaces the test target of go/v2 plugins to match that of go/v3.
plugins/helm/v1/scaffolds
Package scaffolds contains libraries for scaffolding code to use with helm-operator
Package scaffolds contains libraries for scaffolding code to use with helm-operator
release
test

Jump to

Keyboard shortcuts

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