Skip to content

joonas/apiserver-builder

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

apiserver-builder

Build Status Go Report Card

Note: This project is still only a proof of concept, and is not production ready.

Apiserver Builder is a collection of libraries and tools to build native Kubernetes extensions using Kubernetes apiserver code.

Motivation

Addon apiservers are a Kubernetes extension point allowing fully featured Kubernetes APIs to be developed on the same api-machinery used to build the core Kubernetes APIS, but with the flexibility of being distributed and installed separately from the Kubernetes project. This allows APIs to be developed outside of the Kubernetes repo and installed separately as a package.

Building addon apiservers directly on the raw api-machinery libraries requires non-trivial code that must be maintained and rebased as the raw libraries change. The goal of this project is to make building apiservers in Go simple and accessible to everyone in the Kubernetes community.

apiserver-builder provides libraries, code generators, and tooling to make it possible to build and run a basic apiserver in an afternoon, while providing all of the hooks to offer the same capabilities when building from scratch.

Guides

Note: The guides are presented roughly in the order of recommended progression.

Installation guide

Download the latest release and install on your PATH.

installation guide

Tools user guide

Instructions on how to use the tools packaged with apiserver-builder to build and run a new apiserver.

tools guide

Coding and libraries user guide

Instructions for how to implement custom APIs on top of the apiserver-builder libraries.

libraries guide

Concept guides

Conceptual information on addon apiservers, such as how auth works and how they interact with the main Kubernetes API server and API aggregator.

Concepts

Additional material

Using delegated auth with minikube

Instructions on how to run an apiserver using delegated auth with a minikube cluster

Details here

About

apiserver-builder implements libraries and tools to quickly and easily build Kubernetes apiservers to support custom resource types

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Go 97.4%
  • Makefile 1.4%
  • Shell 1.2%