community/contributors/devel
bin liu 261cb0fd08 Change k8s-merge-robot to k8s-ci-robot 2018-03-15 06:48:54 +08:00
..
gubernator-images imported docs/devel as a subtree 2016-11-30 14:43:43 -05:00
release Update OWNERS 2017-12-18 16:11:27 -05:00
OWNERS Make tabs in OWNERS files into 2 spaces. 2017-08-15 16:33:18 -07:00
README.md Merge pull request #1842 from castrojo/add-toc 2018-02-22 17:22:43 -08:00
adding-an-APIGroup.md removed autogenerated munge analytics from files 2017-11-03 16:55:51 -07:00
api-conventions.md fix a bad punctuation 2018-01-25 19:26:20 +08:00
api_changes.md Add the requirement that GA/stable APIs must have conformance tests, if/as appropriate. 2018-02-15 14:30:15 -08:00
arch-roadmap-1.png Added architectural layers diagram, placeholder for Summary section. 2017-11-16 16:46:04 -08:00
architectural-roadmap.md Use git.k8s.io for links 2017-12-21 18:34:08 -08:00
automation.md Use git.k8s.io for links 2017-12-21 18:34:08 -08:00
bazel.md Use git.k8s.io for links 2017-12-21 18:34:08 -08:00
cherry-picks.md Fixing links 2018-02-19 21:21:58 -08:00
client-libraries.md removed autogenerated munge analytics from files 2017-11-03 16:55:51 -07:00
coding-conventions.md move coding-conventions.md to guide 2018-01-25 17:29:22 -08:00
collab.md removed unnecessary link from guide README, also removed duplicate text from linked file 2018-01-16 13:33:18 -08:00
component-config-conventions.md Fix various spelling mistakes 2018-03-04 14:46:53 -08:00
container-runtime-interface.md Update container-runtime-interface.md 2018-03-02 09:36:10 +08:00
controllers.md Use git.k8s.io for links 2017-12-21 18:34:08 -08:00
cri-container-stats.md Use git.k8s.io for links 2017-12-21 18:34:08 -08:00
cri-testing-policy.md Address comments 2018-02-08 11:36:21 -08:00
cri-validation.md Add docs for CRI validation test suites 2017-06-22 15:31:01 +08:00
development.md moved Github workflow and diagram to contributors/guide folder and referenced from both development.md and guide README 2018-01-02 14:14:06 -08:00
e2e-node-tests.md Use git.k8s.io for links 2017-12-21 18:34:08 -08:00
e2e-tests.md purge all the -v in e2e.go 2018-03-06 21:08:38 -08:00
event-style-guide.md Add Event style guide for Events v2 2018-01-23 11:35:32 +00:00
faster_reviews.md Release Notes: Title added; minor cleanup. Faster reviews tombstone added. Minor cleanup in pull-requests.md 2018-02-22 14:42:13 -08:00
flaky-tests.md removed autogenerated munge analytics from files 2017-11-03 16:55:51 -07:00
flexvolume.md Use git.k8s.io for links 2017-12-21 18:34:08 -08:00
generating-clientset.md Use git.k8s.io for links 2017-12-21 18:34:08 -08:00
getting-builds.md removed autogenerated munge analytics from files 2017-11-03 16:55:51 -07:00
go-code.md remove contributors/devel/go-code.md 2018-01-25 17:29:22 -08:00
godep.md Add section on reviewing/approving godeps 2018-02-15 16:57:40 -08:00
gubernator.md Change k8s-merge-robot to k8s-ci-robot 2018-03-15 06:48:54 +08:00
help-wanted.md Added contributors/devel/help-wanted.md 2017-12-20 11:47:23 -08:00
how-to-doc.md Fix italic style 2018-01-08 17:02:37 +03:00
instrumentation.md removed autogenerated munge analytics from files 2017-11-03 16:55:51 -07:00
issues.md Fix a broken link for a file moved to guide from devel 2018-02-15 12:03:18 -05:00
kubectl-conventions.md Use git.k8s.io for links 2017-12-21 18:34:08 -08:00
kubelet-cri-networking.md remove UNVERSIONED_WARNING (#382) 2017-02-17 14:50:10 -06:00
kubemark-guide.md doc: fix some typo 2018-02-04 22:41:56 +08:00
logging.md removed autogenerated munge analytics from files 2017-11-03 16:55:51 -07:00
mesos-style.md removed autogenerated munge analytics from files 2017-11-03 16:55:51 -07:00
node-performance-testing.md Use git.k8s.io for links 2017-12-21 18:34:08 -08:00
on-call-federation-build-cop.md Use git.k8s.io for links 2017-12-21 18:34:08 -08:00
owners.md Move owners file to the contributor guide 2018-02-08 10:24:39 -05:00
pr_workflow.dia imported docs/devel as a subtree 2016-11-30 14:43:43 -05:00
pr_workflow.png imported docs/devel as a subtree 2016-11-30 14:43:43 -05:00
profiling.md Add tips for profiling tests 2018-01-02 17:18:08 -08:00
pull-requests.md contrib guide: move pull-requests.md from devel/ to guide/ 2018-02-19 21:20:17 -08:00
running-locally.md removed autogenerated munge analytics from files 2017-11-03 16:55:51 -07:00
scalability-good-practices.md Move scalability good practices to the contributor guide 2018-02-08 14:15:18 -05:00
scheduler.md Fix typo 2018-02-01 09:15:04 -06:00
scheduler_algorithm.md Update scheduler code locations. 2018-01-03 18:43:38 -08:00
security-release-process.md Tombstone security-release-process.md, point to sig-release 2017-12-22 09:53:04 -05:00
staging.md doc: fix some typo 2018-02-04 22:41:56 +08:00
strategic-merge-patch.md smp: OpenAPI annotations are now allowed 2017-12-26 16:04:31 +05:30
testing.md move coding-conventions.md to guide 2018-01-25 17:29:22 -08:00
update-release-docs.md removed autogenerated munge analytics from files 2017-11-03 16:55:51 -07:00
updating-docs-for-feature-changes.md removed autogenerated munge analytics from files 2017-11-03 16:55:51 -07:00
vagrant.md Use git.k8s.io for links 2017-12-21 18:34:08 -08:00
welcome-to-kubernetes-new-developer-guide.md Correct the URL 2017-12-14 15:44:42 -05:00
writing-a-getting-started-guide.md removed autogenerated munge analytics from files 2017-11-03 16:55:51 -07:00
writing-good-e2e-tests.md Use git.k8s.io for links 2017-12-21 18:34:08 -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

  • Contributor Guide (Please start here) to learn about how to contribute to Kubernetes

  • GitHub Issues (issues.md): How incoming issues are triaged.

  • Pull Request Process (/contributors/guide/pull-requests.md): When and why pull requests are closed.

  • Getting Recent Builds (getting-builds.md): How to get recent builds including the latest builds that pass CI.

  • Automated Tools (automation.md): Descriptions of the automation that is running on our github repository.

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.

  • 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): Glog 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 (how-to-doc.md) 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.md): 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.