Helm chart to deploy the Orchestrator solution's required infrastructure suite on OpenShift, including OpenShift Serverless Operator and OpenShift Serverless Logic Operator, both required to configure Red Hat Developer Hub to use the Orchestrator.
| Name | Url | |
|---|---|---|
| Red Hat Developer Hub Team | https://github.com/redhat-developer/rhdh-chart |
Kubernetes: >= 1.25.0-0
helm repo add redhat-developer https://redhat-developer.github.io/rhdh-chart
helm install my-orchestrator-infra redhat-developer/redhat-developer-hub-orchestrator-infra --version 0.6.0Tip: List all releases using
helm list
Once an Helm Release has been deployed, you can test it using the helm test command:
helm test <release_name>This will run a simple Pod in the cluster to check that the required resources have been created.
You can control whether to disable this test pod or you can also customize the image it leverages.
See the test.enabled and test.image parameters in the values.yaml file.
Tip: Disabling the test pod will not prevent the
helm testcommand from passing later on. It will simply report that no test suite is available.
Below are a few examples:
Disabling the test pod
helm install <release_name> <repo> \
--set test.enabled=falseCustomizing the test pod image
helm install <release_name> <repo> \
--set test.image=<image>To uninstall/delete a Helm release named my-orchestrator-infra:
helm uninstall my-orchestrator-infraThe command removes all the Kubernetes components associated with the chart and deletes the release.
| Key | Description | Type | Default |
|---|---|---|---|
| serverlessLogicOperator.enabled | whether the operator should be deployed by the chart | bool | true |
| serverlessLogicOperator.subscription.namespace | namespace where the operator should be deployed | string | "openshift-serverless-logic" |
| serverlessLogicOperator.subscription.spec.channel | channel of an operator package to subscribe to | string | "stable" |
| serverlessLogicOperator.subscription.spec.installPlanApproval | whether the update should be installed automatically | string | "Manual" |
| serverlessLogicOperator.subscription.spec.name | name of the operator package | string | "logic-operator" |
| serverlessLogicOperator.subscription.spec.source | name of the catalog source | string | "redhat-operators" |
| serverlessLogicOperator.subscription.spec.sourceNamespace | string | "openshift-marketplace" |
|
| serverlessLogicOperator.subscription.spec.startingCSV | The initial version of the operator, must match CRDs installed by the chart | string | "logic-operator.v1.37.2" |
| serverlessOperator.enabled | whether the operator should be deployed by the chart | bool | true |
| serverlessOperator.subscription.namespace | namespace where the operator should be deployed | string | "openshift-serverless" |
| serverlessOperator.subscription.spec.channel | channel of an operator package to subscribe to | string | "stable" |
| serverlessOperator.subscription.spec.installPlanApproval | whether the update should be installed automatically | string | "Manual" |
| serverlessOperator.subscription.spec.name | name of the operator package | string | "serverless-operator" |
| serverlessOperator.subscription.spec.source | name of the catalog source | string | "redhat-operators" |
| serverlessOperator.subscription.spec.sourceNamespace | string | "openshift-marketplace" |
|
| tests.enabled | Whether to create the test pod used for testing the Release using helm test. |
bool | true |
| tests.image | Test pod image | string | "bitnami/kubectl:latest" |
The orchestrator-infra chart requires several CRDs for Knative Eventing and Knative Serving. These CRDs will be applied prior to installing the chart, ensuring that Knative CRs can be created as part of the chart's deployment process. This approach eliminates the need to wait for the OpenShift Serverless Operator's subscription to install them beforehand.
The KnativeEventing and KnativeServing CRDs are required for this chart to run. These CRDs need to be present under the crds/ directory before running helm install.
After installing the openshift-serverless subscription, more Knative CRDs will be installed on the cluster.
The versions of the CRDs present in the chart and the ones in the subscription must match. In order to verify the correct CRD, use this following command to extract the CRD:
export osl_bundle=registry.redhat.io/openshift-serverless-1/serverless-operator-bundle:1.37.2
podman container run --rm --entrypoint cat "$osl_bundle" /manifests/operator_v1beta1_knativeeventing_crd.yaml > crds/knative-eventing/knative-eventing-crd.yaml
podman container run --rm --entrypoint cat "$osl_bundle" /manifests/operator_v1beta1_knativeserving_crd.yaml > crds/knative-serving/knative-serving-crd.yamlAfter running these commands, you may need to re-add the helm.sh/hook annotations.