Skip to content

Commit 89f4cd8

Browse files
authored
Merge pull request #4058 from camilamacedo86/update-docs-support
📖 Update docs support
2 parents 94d8fce + 745ea7e commit 89f4cd8

File tree

2 files changed

+53
-9
lines changed

2 files changed

+53
-9
lines changed

README.md

Lines changed: 29 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -119,15 +119,38 @@ Contributions are greatly appreciated. The maintainers actively manage the issue
119119
The project follows the typical GitHub pull request model. See [CONTRIBUTING.md](CONTRIBUTING.md) for more details.
120120
Before starting any work, please either comment on an existing issue, or file a new one.
121121

122-
## Supportability
122+
## Operating Systems Supported
123123

124-
Currently, Kubebuilder officially supports OSX and Linux platforms.
125-
So, if you are using a Windows OS you may find issues. Contributions towards
126-
supporting Windows are welcome.
124+
Currently, Kubebuilder officially supports macOS and Linux platforms. If you are using a Windows OS, you may encounter issues.
125+
Contributions towards supporting Windows are welcome.
127126

128-
### Apple Silicon
127+
## Versions Compatibility and Supportability
129128

130-
Apple Silicon (`darwin/arm64`) support begins with the `go/v4` plugin.
129+
Projects created by Kubebuilder contain a `Makefile` that installs tools at versions defined during project creation. The main tools included are:
130+
131+
- [kustomize](https://github.com/kubernetes-sigs/kustomize)
132+
- [controller-gen](https://github.com/kubernetes-sigs/controller-tools)
133+
- [setup-envtest](https://github.com/kubernetes-sigs/controller-runtime/tree/main/tools/setup-envtest)
134+
135+
Additionally, these projects include a `go.mod` file specifying dependency versions.
136+
Kubebuilder relies on [controller-runtime](https://github.com/kubernetes-sigs/controller-runtime) and its Go and Kubernetes dependencies.
137+
Therefore, the versions defined in the `Makefile` and `go.mod` files are the ones that have been tested, supported, and recommended.
138+
139+
Each minor version of Kubebuilder is tested with a specific minor version of client-go.
140+
While a Kubebuilder minor version *may* be compatible with other client-go minor versions,
141+
or other tools this compatibility is not guaranteed, supported, or tested.
142+
143+
The minimum Go version required by Kubebuilder is determined by the highest minimum
144+
Go version required by its dependencies. This is usually aligned with the minimum
145+
Go version required by the corresponding `k8s.io/*` dependencies.
146+
147+
Compatible `k8s.io/*` versions, client-go versions, and minimum Go versions can be found in the `go.mod`
148+
file scaffolded for each project for each [tag release](https://github.com/kubernetes-sigs/kubebuilder/tags).
149+
150+
**Example:** For the `4.1.1` release, the minimum Go version compatibility is `1.22`.
151+
You can refer to the samples in the testdata directory of the tag released [v4.1.1](https://github.com/kubernetes-sigs/kubebuilder/tree/v4.1.1/testdata),
152+
such as the [go.mod](https://github.com/kubernetes-sigs/kubebuilder/blob/v4.1.1/testdata/project-v4/go.mod#L3) file for `project-v4`. You can also check the tools versions supported and
153+
tested for this release by examining the [Makefile](https://github.com/kubernetes-sigs/kubebuilder/blob/v4.1.1/testdata/project-v4/Makefile#L160-L165).
131154

132155
## Community Meetings
133156

docs/book/src/quick-start.md

Lines changed: 24 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -15,13 +15,34 @@ This Quick Start guide will cover:
1515
- Access to a Kubernetes v1.11.3+ cluster.
1616

1717
<aside class="note">
18-
<h1>Versions and Supportability</h1>
18+
<h1>Versions Compatibility and Supportability</h1>
19+
20+
Projects created by Kubebuilder contain a `Makefile` that installs tools at versions defined during project creation.
21+
The main tools included are:
1922

20-
Projects created by Kubebuilder contain a Makefile that will install tools at versions defined at creation time. Those tools are:
2123
- [kustomize](https://github.com/kubernetes-sigs/kustomize)
2224
- [controller-gen](https://github.com/kubernetes-sigs/controller-tools)
25+
- [setup-envtest](https://github.com/kubernetes-sigs/controller-runtime/tree/main/tools/setup-envtest)
26+
27+
Additionally, these projects include a `go.mod` file specifying dependency versions.
28+
Kubebuilder relies on [controller-runtime](https://github.com/kubernetes-sigs/controller-runtime) and its Go and Kubernetes dependencies.
29+
Therefore, the versions defined in the `Makefile` and `go.mod` files are the ones that have been tested, supported, and recommended.
30+
31+
Each minor version of Kubebuilder is tested with a specific minor version of client-go.
32+
While a Kubebuilder minor version *may* be compatible with other client-go minor versions,
33+
or other tools this compatibility is not guaranteed, supported, or tested.
34+
35+
The minimum Go version required by Kubebuilder is determined by the highest minimum
36+
Go version required by its dependencies. This is usually aligned with the minimum
37+
Go version required by the corresponding `k8s.io/*` dependencies.
38+
39+
Compatible `k8s.io/*` versions, client-go versions, and minimum Go versions can be found in the `go.mod`
40+
file scaffolded for each project for each [tag release](https://github.com/kubernetes-sigs/kubebuilder/tags).
2341

24-
The versions which are defined in the `Makefile` and `go.mod` files are the versions tested and therefore is recommended to use the specified versions.
42+
**Example:** For the `4.1.1` release, the minimum Go version compatibility is `1.22`.
43+
You can refer to the samples in the testdata directory of the tag released [v4.1.1](https://github.com/kubernetes-sigs/kubebuilder/tree/v4.1.1/testdata),
44+
such as the [go.mod](https://github.com/kubernetes-sigs/kubebuilder/blob/v4.1.1/testdata/project-v4/go.mod#L3) file for `project-v4`. You can also check the tools versions supported and
45+
tested for this release by examining the [Makefile](https://github.com/kubernetes-sigs/kubebuilder/blob/v4.1.1/testdata/project-v4/Makefile#L160-L165).
2546

2647
</aside>
2748

0 commit comments

Comments
 (0)