You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+19-16
Original file line number
Diff line number
Diff line change
@@ -1,6 +1,10 @@
1
1
# codeflare-operator
2
2
3
-
Operator for installation and lifecycle management of CodeFlare distributed workload stack.
3
+
The CodeFlare-Operator has embedded two controllers, a [RayCluster controller](https://github.com/project-codeflare/codeflare-operator/blob/main/pkg/controllers/raycluster_controller.go) which creates resources including secrets, ingress, routes, service, serviceaccounts, clusterrolebinding resources; all needed for the RayClusters created to work as expected.
4
+
5
+
There's an [AppWrapper Controller](https://github.com/project-codeflare/appwrapper/blob/main/internal/controller/appwrapper/appwrapper_controller.go), which is a flexible and workload-agnostic mechanism to enable Kueue to manage a group of Kubernetes resources as a single logical unit and to provide an additional level of automatic fault detection and recovery.
6
+
7
+
For each controller, there are webhooks in place that can be found [here](https://github.com/project-codeflare/codeflare-operator/tree/main/pkg/controllers).
4
8
5
9
<!-- Don't delete these comments, they are used to generate Compatibility Matrix table for release automation -->
6
10
<!-- Compatibility Matrix start -->
@@ -24,6 +28,7 @@ Requirements:
24
28
# brew install gnu-sed
25
29
make install -e SED=/usr/local/bin/gsed
26
30
```
31
+
- Kind - Kind is used in the kind-e2e command in the Makefile. Follow these instructions for the kind setup <ahref="https://kind.sigs.k8s.io/docs/user/quick-start/"target="_blank">here</a>
27
32
28
33
### Testing
29
34
@@ -34,11 +39,9 @@ The e2e tests can be executed locally by running the following commands:
34
39
```bash
35
40
# Create a KinD cluster
36
41
make kind-e2e
37
-
# Install the CRDs
38
-
make install
39
42
```
40
43
41
-
[!NOTE]
44
+
> [!NOTE]
42
45
Some e2e tests cover the access to services via Ingresses, as end-users would do, which requires access to the Ingress controller load balancer by its IP.
43
46
For it to work on macOS, this requires installing [docker-mac-net-connect](https://github.com/chipmk/docker-mac-net-connect).
44
47
@@ -47,16 +50,16 @@ The e2e tests can be executed locally by running the following commands:
47
50
```bash
48
51
make setup-e2e
49
52
```
50
-
51
-
[!NOTE]
53
+
54
+
> [!NOTE]
52
55
Kueue will only activate its Ray integration if KubeRay is installed before Kueue (as done by this make target).
53
56
54
-
[!NOTE]
57
+
> [!NOTE]
55
58
In OpenShift the KubeRay operator pod gets random user assigned. This user is then used to run Ray cluster.
56
59
However the random user assigned by OpenShift doesn't have rights to store dataset downloaded as part of test execution, causing tests to fail.
57
60
To prevent this failure on OpenShift user should enforce user 1000 for KubeRay and Ray cluster by creating this SCC in KubeRay operator namespace (replace the namespace placeholder):
58
61
59
-
```yaml
62
+
```yaml
60
63
kind: SecurityContextConstraints
61
64
apiVersion: security.openshift.io/v1
62
65
metadata:
@@ -68,21 +71,21 @@ The e2e tests can be executed locally by running the following commands:
0 commit comments