Skip to content

Commit dea070a

Browse files
Outline deployment requirements (#42)
* deployment requirements added to README. Signed-off-by: Michael Valdron <[email protected]> * development requirements added. Signed-off-by: Michael Valdron <[email protected]> * ENVTEST K8S version updated. Signed-off-by: Michael Valdron <[email protected]> * matrix doc on container orchestration systems support added Signed-off-by: Michael Valdron <[email protected]> * add documentation on updating the Operator SDK and tie it to the requirements of Kubernetes Signed-off-by: Michael Valdron <[email protected]> * list of required actions for updating the Operator SDK added to CLUSTER_SUPPORT.md Signed-off-by: Michael Valdron <[email protected]> --------- Signed-off-by: Michael Valdron <[email protected]>
1 parent ac7373a commit dea070a

File tree

3 files changed

+53
-1
lines changed

3 files changed

+53
-1
lines changed

CLUSTER_SUPPORT.md

+31
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
# Supported Container Orchestration Systems
2+
3+
The devfile registry operator supports container orchestration
4+
systems based on which Operator SDK version the registry operator
5+
is using as well as the API overlap between OpenShift and
6+
Kubernetes.
7+
8+
| | OpenShift 4.12.x |
9+
|:-----------------:|:----------------:|
10+
| Kubernetes 1.25.x | X |
11+
| Kubernetes 1.26.x | X |
12+
13+
## Operator SDK
14+
15+
Current version in use by the Registry Operator is [Operator SDK v1.28.0](https://sdk.operatorframework.io/docs/upgrading-sdk-version/v1.28.0/).
16+
17+
To update the Operator SDK, refer to [Upgrade SDK Version](https://sdk.operatorframework.io/docs/upgrading-sdk-version/)
18+
and change the following
19+
1. Update the following Kubernetes API dependencies under
20+
`go.mod` to the version supported by the chosen Operator SDK
21+
version
22+
- `k8s.io/api`
23+
- `k8s.io/apimachinery`
24+
- `k8s.io/client-go`
25+
2. Update `ENVTEST_K8S_VERSION` under `Makefile` to the
26+
Kubernetes version supported by the chosen Operator SDK version
27+
3. Make any changes necessary to the source based on the updates
28+
to Kubernetes API dependencies
29+
4. Update the Operator SDK CLI to the version chosen
30+
5. Run `make bundle` to update fields to include the changes
31+
for updating Operator SDK and Kubernetes APIs

Makefile

+1-1
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ BUNDLE_METADATA_OPTS ?= $(BUNDLE_CHANNELS) $(BUNDLE_DEFAULT_CHANNEL)
1717
# Image URL to use all building/pushing image targets
1818
IMG ?= quay.io/devfile/registry-operator:next
1919
# ENVTEST_K8S_VERSION refers to the version of kubebuilder assets to be downloaded by envtest binary.
20-
ENVTEST_K8S_VERSION = 1.22
20+
ENVTEST_K8S_VERSION = 1.26
2121

2222

2323
# Get the currently used golang install path (in GOPATH/bin, unless GOBIN is set)

README.md

+21
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,27 @@ The Devfile Registry operator manages the lifecycle of the following custom reso
1010

1111
Issue tracking repo: https://github.com/devfile/api with label area/registry
1212

13+
## Requirements
14+
15+
Deployment cluster must meet one of the following criteria:
16+
17+
- OpenShift Container Platform (OCP) 4.12.x
18+
- Kubernetes 1.25.x-1.26.x
19+
20+
More on the support of container orchestration systems can be
21+
found [here](CLUSTER_SUPPORT.md).
22+
23+
Deployments made by the devfile registry operator must *never* target the default namespace due to incompatibility with
24+
security setups.
25+
26+
### Development
27+
28+
- Go 1.19.x
29+
- Docker / Podman
30+
- Operator SDK 1.28.x
31+
32+
See [Upgrade SDK Version](https://sdk.operatorframework.io/docs/upgrading-sdk-version/) for a guide on updating the Operator SDK. Ensure the Operator SDK version and the version of Kubernetes APIs match each other when updating by checking [CLUSTER_SUPPORT.md](CLUSTER_SUPPORT.md).
33+
1334
## Running the controller in a cluster
1435

1536
Install cert-manager to provision self-signed certificates for the validating webhooks which are used specifically for the `ClusterDevfileRegistriesList` and `DevfileRegistriesList` CRs. Cert manager needs to be installed in order for the controller manager to start.

0 commit comments

Comments
 (0)