kubernetes-client / go

Licence: Apache-2.0 license
OpenAPI based generated Go Client for Kubernetes

Programming Languages

go
31211 projects - #10 most used programming language
shell
77523 projects

Projects that are alternatives of or similar to go

Python
Official Python client library for kubernetes
Stars: ✭ 4,352 (+3147.76%)
Mutual labels:  k8s, k8s-sig-api-machinery
katana-skipper
Simple and flexible ML workflow engine
Stars: ✭ 234 (+74.63%)
Mutual labels:  k8s
ratel-doc
Kubernetes Dashboard 一键式 Kubernetes多集群资源管理平台 k8s 管理平台
Stars: ✭ 153 (+14.18%)
Mutual labels:  k8s
xx
This tool simplifies the use of common shell, docker, and kubernetes commands
Stars: ✭ 57 (-57.46%)
Mutual labels:  k8s
postgres
A PostgreSQL database used by Deis Workflow.
Stars: ✭ 37 (-72.39%)
Mutual labels:  k8s
kube-alive
Some tools to experiment with Kubernetes to observe it's real-life behavior
Stars: ✭ 32 (-76.12%)
Mutual labels:  k8s
k8scc
# K8S Crash Course
Stars: ✭ 16 (-88.06%)
Mutual labels:  k8s
sig-windows-dev-tools
This is a batteries included local development environment for Kubernetes on Windows.
Stars: ✭ 52 (-61.19%)
Mutual labels:  k8s
k8s-nuclei-templates
Nuclei templates for K8S security scanning
Stars: ✭ 85 (-36.57%)
Mutual labels:  k8s
charts
☸️ Helm Charts for YOURLS
Stars: ✭ 12 (-91.04%)
Mutual labels:  k8s
k8s-buildkite-plugin
Run any buildkite build step as a Kubernetes Job
Stars: ✭ 37 (-72.39%)
Mutual labels:  k8s
netmaker
Netmaker makes networks with WireGuard. Netmaker automates fast, secure, and distributed virtual networks.
Stars: ✭ 4,147 (+2994.78%)
Mutual labels:  k8s
ansible-role-k8s
This role render an arbitrary number of Jinja2 templates and deploys or removes them to/from Kubernetes clusters.
Stars: ✭ 26 (-80.6%)
Mutual labels:  k8s
gitops-playground
Reproducible infrastructure to showcase GitOps workflows and evaluate different GitOps Operators on Kubernetes
Stars: ✭ 77 (-42.54%)
Mutual labels:  k8s
KUR8
A visual overview of Kubernetes architecture and Prometheus metrics
Stars: ✭ 197 (+47.01%)
Mutual labels:  k8s
dcos-k8s-rust-skaffold-demo
A demo of pipelining Rust application development to Kubernetes on DC/OS with Skaffold.
Stars: ✭ 40 (-70.15%)
Mutual labels:  k8s
tondra
Continuous Development on Kubernetes environments with Skaffold
Stars: ✭ 105 (-21.64%)
Mutual labels:  k8s
aks-keyvault
Access Azure Key Vault secrets, keys and certs from AKS Pods using Secret Store CSI provider and Pod Identity.
Stars: ✭ 21 (-84.33%)
Mutual labels:  k8s
gitops-build-lib
Jenkins pipeline shared library for automating deployments via GitOps
Stars: ✭ 23 (-82.84%)
Mutual labels:  k8s
tyk-operator
Tyk Operator for Kubernetes
Stars: ✭ 88 (-34.33%)
Mutual labels:  k8s

OpenAPI based Generated Go client for Kubernetes

This repo hosts an experimental Golang client library generated using swagger-codegen and Kubernetes OpenAPI spec. Currently the client capability meets the Bronze Requirement and is supported in Alpha state, as described in Kubernetes: New Client Library Procedure. For more advanced functionality (e.g. controller and shared informer), please refer to the more mature Kubernetes Go client.

Installation

Get the source:

cd $GOPATH/src/k8s.io
git clone --recursive https://github.com/kubernetes-client/go.git client
cd client

NOTE on go get:

Currently this repo is still under experimental state and the domains haven't been set up for go get yet. Please get the library from source.

Example

Please see https://github.com/kubernetes-client/go/tree/master/examples for basic examples of using this client library.

Documentation

All APIs and Models' documentation can be found at the Generated client's README file

Compatibility

This client library follows semver, so until the major version of client gets increased, your code will continue to work with explicitly supported versions of Kubernetes clusters.

Compatibility matrix

Kubernetes 1.10 Kubernetes 1.13
client 0.1.0a1
client 0.2.0a1

Key:

  • Exactly the same features / API objects in both Go client and the Kubernetes version.
  • + Go client has features or api objects that may not be present in the Kubernetes cluster, but everything they have in common will work.
  • - The Kubernetes cluster has features the Go client library can't use (additional API objects, etc).

Generatic code

Check out https://github.com/kubernetes-client/gen into ${GEN_DIR}.

Assume that https://github.com/kubernetes-client/go is in ${GO_DIR}.

cd ${GO_DIR}/kubernetes
${GEN_DIR}/openapi/go.sh ./ ./settings

Contributing

Please see CONTRIBUTING.md for instructions on how to contribute.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].