community/contributors/devel
Michael Taufen 0f8ce103ad
Remove last-updated date line from api-conventions.md
Rationale: The line hasn't been updated since 2017, even though changes were still being made to the doc. We can already see the last-updated date from the git history, and if we just update it now folks will probably continue forgetting to do so in the future.
2019-11-25 13:52:07 -08:00
..
sig-api-machinery Update old glog references to klog 2019-10-09 17:03:36 -06:00
sig-architecture Remove last-updated date line from api-conventions.md 2019-11-25 13:52:07 -08:00
sig-cli Fix wrong link to pkg/kubectl/cmd/logs/logs.go 2019-06-05 20:55:34 +05:30
sig-instrumentation Update instrumentation.md 2019-09-09 14:27:42 +02:00
sig-node Merge pull request #3674 from mattjmcnaughton/mattjmcnaughton/update-cri-documentation 2019-08-06 08:21:56 -07:00
sig-release Merge pull request #4186 from tpepper/prt-cherry-pick-review 2019-10-22 03:35:21 -07:00
sig-scalability add a guide to set up kubemark cluster 2019-07-16 12:05:21 +08:00
sig-scheduling Update scheduler.md 2019-09-14 13:36:27 +08:00
sig-storage devel: add OWNERS files for sig sub-directories 2019-02-04 20:53:07 +05:30
sig-testing Contributor Testing Guide: Update punctuation and grammar 2019-10-16 13:22:27 -07:00
OWNERS remove grodrigues3 from OWNERS files 2019-08-02 11:46:38 -07:00
README.md Update old glog references to klog 2019-10-09 17:03:36 -06:00
automation.md Jenkins is no more 2019-04-23 22:52:05 +01:00
development.md fix go version mapping in development.md 2019-11-08 15:27:10 -08:00
running-locally.md removed autogenerated munge analytics from files 2017-11-03 16:55:51 -07:00
vagrant.md Adding deprecation note for vagrant support 2018-11-19 00:28:03 -08:00

README.md

Table of Contents

The developer guide is for anyone wanting to either write code which directly accesses the Kubernetes API, or to contribute directly to the Kubernetes project. It assumes some familiarity with concepts in the User Guide and the Cluster Admin Guide.

The process of developing and contributing code to the Kubernetes project

Setting up your dev environment, coding, and debugging

  • Development Guide (development.md): Setting up your development environment.

  • Testing (testing.md): How to run unit, integration, and end-to-end tests in your development sandbox.

  • Conformance Testing (conformance-tests.md) What is conformance testing and how to create/manage them.

  • Hunting flaky tests (flaky-tests.md): We have a goal of 99.9% flake free tests. Here's how to run your tests many times.

  • Logging Conventions (logging.md): klog levels.

  • Profiling Kubernetes (profiling.md): How to plug in go pprof profiler to Kubernetes.

  • Instrumenting Kubernetes with a new metric (instrumentation.md): How to add a new metrics to the Kubernetes code base.

  • Coding Conventions (coding-conventions.md): Coding style advice for contributors.

  • Document Conventions (The Kubernetes documentation) Document style advice for contributors.

  • Running a cluster locally (running-locally.md): A fast and lightweight local cluster deployment for development.

Developing against the Kubernetes API

  • The REST API documentation explains the REST API exposed by apiserver.

  • Annotations (Annotations): are for attaching arbitrary non-identifying metadata to objects. Programs that automate Kubernetes objects may use annotations to store small amounts of their state.

  • API Conventions (api-conventions.md): Defining the verbs and resources used in the Kubernetes API.

  • API Client Libraries (Client Libraries): A list of existing client libraries, both supported and user-contributed.

Writing plugins

  • Authentication (Authentication): The current and planned states of authentication tokens.

  • Authorization Plugins (Authorization): Authorization applies to all HTTP requests on the main apiserver port. This doc explains the available authorization implementations.

  • Admission Control Plugins (admission_control)

Building releases

See the kubernetes/release repository for details on creating releases and related tools and helper scripts.