Index all SIG contributions to the Developer Guide

The initial purpose of this is to make sure there are no orphaned
files in the Developer Guide, so we can make a complete map of all the
content there.
This commit is contained in:
Erik L. Arneson 2020-07-10 13:00:35 -07:00
parent 60531d8573
commit 3302b378b4
3 changed files with 127 additions and 28 deletions

View File

@ -79,3 +79,101 @@ Guide](http://kubernetes.io/docs/admin/).
## Building releases
See the [kubernetes/release](https://github.com/kubernetes/release) repository for details on creating releases and related tools and helper scripts.
## SIG Developer Guide Contributions
### SIG Release
* **Cherry Picks** [cherry-picks.md](sig-release/cherry-picks.md)
How cherry picks are managed on release branches within the `kubernetes/kubernetes` repository.
* **Getting Kubernetes Builds** [getting-builds.md](sig-release/getting-builds.md)
* **Targeting enhancements, Issues and PRs to Release Milestones** [release.md](sig-release/release.md)
### SIG Instrumentation
* **Logging Conventions** [logging.md](sig-instrumentation/logging.md)
* **Event style guide** [event-style-guide.md](sig-instrumentation/event-style-guide.md)
* **Instrumenting Kubernetes** [instrumentation.md](sig-instrumentation/instrumentation.md)
* **Structured Logging migration instructions** [migration-to-structured-logging.md](sig-instrumentation/migration-to-structured-logging.md)
### SIG Storage
* **Flexvolume** [flexvolume.md](sig-storage/flexvolume.md)
Flexvolume enables users to write their own drivers and add support for their volumes in Kubernetes.
### SIG Scalability
* **Kubemark User Guide** [kubemark-guide.md](sig-scalability/kubemark-guide.md)
* **How to Set Up a Kubemark Cluster** [kubemark-setup-guide.md](sig-scalability/kubemark-setup-guide.md)
* **Profiling Kubernetes** [profiling.md](sig-scalability/profiling.md)
### SIG Scheduling
* **Understanding the Kubernetes Scheduler** [scheduler.md](sig-scheduling/scheduler.md)
* **Scheduler Algorithm in Kubernetes** [scheduler_algorithm.md](sig-scheduling/scheduler_algorithm.md)
* **Scheduler Benchmarking** [scheduler_benchmarking.md](sig-scheduling/scheduler_benchmarking.md)
### SIG Architecture
* **API Conventions** [api-conventions.md](sig-architecture/api-conventions.md)
* **Component Configuration Conventions** [component-config-conventions.md](sig-architecture/component-config-conventions.md)
* **Changing the API** [api_changes.md](sig-architecture/api_changes.md)
* **Staging Directory and Publishing** [staging.md](sig-architecture/staging.md)
* **Using Go Modules to Manage Dependencies** [vendor.md](sig-architecture/vendor.md)
This document only applies to Kubernetes development after 1.14.x. See [previous godep documentation for working with dependencies](sig-architecture/godep.md) for Kubernetes 1.14.x and earlier.
* **Using Go Modules to Manage Dependencies (for Kubernetes 1.14.x and earlier)** [godep.md](sig-architecture/godep.md)
See [current documentation for working with dependencies](sig-architecture/vendor.md) for master branch development.
### SIG Architecture
* **Conformance Testing in Kubernetes** [conformance-tests.md](sig-architecture/conformance-tests.md)
### SIG API Machinery
* **Strategic Merge Patch** [strategic-merge-patch.md](sig-api-machinery/strategic-merge-patch.md)
* **Writing Controllers** [controllers.md](sig-api-machinery/controllers.md)
* **Generation and release cycle of clientset** [generating-clientset.md](sig-api-machinery/generating-clientset.md)
### SIG Testing
* **Testing guide** [testing.md](sig-testing/testing.md)
* **Writing good e2e tests for Kubernetes** [writing-good-e2e-tests.md](sig-testing/writing-good-e2e-tests.md)
* **Writing Good Conformance Tests for Kubernetes** [writing-good-conformance-tests.md](sig-testing/writing-good-conformance-tests.md)
* **Integration Testing in Kubernetes** [integration-tests.md](sig-testing/integration-tests.md)
* **End-to-End Testing in Kubernetes** [e2e-tests.md](sig-testing/e2e-tests.md)
* **Debugging with Gubernator** [gubernator.md](sig-testing/gubernator.md)
* **Flaky tests** [flaky-tests.md](sig-testing/flaky-tests.md)
* **Build and test with Bazel** [bazel.md](sig-testing/bazel.md)
### SIG Node
* **CRI: the Container Runtime Interface** [container-runtime-interface.md](sig-node/container-runtime-interface.md)
* **Container Runtime Interface (CRI) Networking Specifications** [kubelet-cri-networking.md](sig-node/kubelet-cri-networking.md)
* **Measuring Node Performance** [node-performance-testing.md](sig-node/node-performance-testing.md)
* **Container Runtime Interface: Container Metrics** [cri-container-stats.md](sig-node/cri-container-stats.md)
* **Container Runtime Interface (CRI) Validation Testing** [cri-validation.md](sig-node/cri-validation.md)
* **Node End-To-End tests** [e2e-node-tests.md](sig-node/e2e-node-tests.md)
* **Container Runtime Interface: Testing Policy** [cri-testing-policy.md](sig-node/cri-testing-policy.md)
### SIG CLI
* **Kubectl Conventions** [kubectl-conventions.md](sig-cli/kubectl-conventions.md)

View File

@ -1,36 +1,37 @@
*This document is oriented at developers who want to change existing APIs.
# Changing the API
This document is oriented at developers who want to change existing APIs.
A set of API conventions, which applies to new APIs and to changes, can be
found at [API Conventions](api-conventions.md).
**Table of Contents**
- [So you want to change the API?](#so-you-want-to-change-the-api)
- [Operational overview](#operational-overview)
- [On compatibility](#on-compatibility)
- [Backward compatibility gotchas](#backward-compatibility-gotchas)
- [Incompatible API changes](#incompatible-api-changes)
- [Changing versioned APIs](#changing-versioned-apis)
- [Edit types.go](#edit-typesgo)
- [Edit defaults.go](#edit-defaultsgo)
- [Edit conversion.go](#edit-conversiongo)
- [Changing the internal structures](#changing-the-internal-structures)
- [Edit types.go](#edit-typesgo-1)
- [Edit validation.go](#edit-validationgo)
- [Edit version conversions](#edit-version-conversions)
- [Generate protobuf objects](#generate-protobuf-objects)
- [Edit json (un)marshaling code](#edit-json-unmarshaling-code)
- [Making a new API Version](#making-a-new-api-version)
- [Making a new API Group](#making-a-new-api-group)
- [Update the fuzzer](#update-the-fuzzer)
- [Update the semantic comparisons](#update-the-semantic-comparisons)
- [Implement your change](#implement-your-change)
- [Write end-to-end tests](#write-end-to-end-tests)
- [Examples and docs](#examples-and-docs)
- [Alpha, Beta, and Stable Versions](#alpha-beta-and-stable-versions)
- [Adding Unstable Features to Stable Versions](#adding-unstable-features-to-stable-versions)
- [Operational overview](#operational-overview)
- [On compatibility](#on-compatibility)
- [Backward compatibility gotchas](#backward-compatibility-gotchas)
- [Incompatible API changes](#incompatible-api-changes)
- [Changing versioned APIs](#changing-versioned-apis)
- [Edit types.go](#edit-typesgo)
- [Edit defaults.go](#edit-defaultsgo)
- [Edit conversion.go](#edit-conversiongo)
- [Changing the internal structures](#changing-the-internal-structures)
- [Edit types.go](#edit-typesgo-1)
- [Edit validation.go](#edit-validationgo)
- [Edit version conversions](#edit-version-conversions)
- [Generate protobuf objects](#generate-protobuf-objects)
- [Edit json (un)marshaling code](#edit-json-unmarshaling-code)
- [Making a new API Version](#making-a-new-api-version)
- [Making a new API Group](#making-a-new-api-group)
- [Update the fuzzer](#update-the-fuzzer)
- [Update the semantic comparisons](#update-the-semantic-comparisons)
- [Implement your change](#implement-your-change)
- [Write end-to-end tests](#write-end-to-end-tests)
- [Examples and docs](#examples-and-docs)
- [Alpha, Beta, and Stable Versions](#alpha-beta-and-stable-versions)
- [Adding Unstable Features to Stable Versions](#adding-unstable-features-to-stable-versions)
# So you want to change the API?
## So you want to change the API?
Before attempting a change to the API, you should familiarize yourself with a
number of existing API types and with the [API conventions](api-conventions.md).

View File

@ -1,7 +1,7 @@
# The Kubernetes Scheduler
# Understanding the Kubernetes Scheduler
The Kubernetes scheduler runs as a process alongside the other master components such as the API server.
Its interface to the API server is to watch for Pods with an empty PodSpec.NodeName,
Its interface to the API server is to watch for Pods with an empty `PodSpec.NodeName`,
and for each Pod, it posts a binding indicating where the Pod should be scheduled.
## Exploring the code