|
| 1 | +Designs |
| 2 | +======= |
| 3 | + |
| 4 | +These are design documents for changes to KubeBuilder (and |
| 5 | +cross-repository changes for related projects, like controller-runtime and |
| 6 | +controller-tools). They exist to help document the design processes that |
| 7 | +go into writing KubeBuilder, but may not be up-to-date (more below). |
| 8 | + |
| 9 | +Not all changes to KubeBuilder need a design document -- only major ones. |
| 10 | +Use your best judgement. |
| 11 | + |
| 12 | +When submitting a design document, we encourage having written |
| 13 | +a proof-of-concept, and it's perfectly acceptable to submit the |
| 14 | +proof-of-concept PR simulatenously with the design document, as the |
| 15 | +proof-of-concept process can help iron out wrinkles and can help with the |
| 16 | +`Example` section of the template. |
| 17 | + |
| 18 | +## Out-of-Date Designs |
| 19 | + |
| 20 | +**KubeBuilder documentation (the [book](https://book.kubebuilder.io) and |
| 21 | +the [GoDoc](https://godoc.org/sigs.k8s.io/controller-runtime)) should be |
| 22 | +considered the canonical, update-to-date reference and architectural |
| 23 | +documentation** for KubeBuilder. |
| 24 | + |
| 25 | +However, if you see an out-of-date design document, feel free to submit |
| 26 | +a PR marking it as such, and add an addendum linking to issues documenting |
| 27 | +why things changed. For example: |
| 28 | + |
| 29 | +```markdown |
| 30 | + |
| 31 | +# Out of Date |
| 32 | + |
| 33 | +This change is out of date. It turns out curly braces a frustrating to |
| 34 | +type, so we had to abandon functions entirely, and have users specify |
| 35 | +custom functionality using strings of Common LISP instead. See #000 for |
| 36 | +more information. |
| 37 | +``` |
0 commit comments