|
1 |
| -# OPERATOR-CONTROLLER CONFIG |
| 1 | +# OPERATOR-CONTROLLER CONFIGURATION |
| 2 | + |
| 3 | +The main kustomize targets are all located in the `config/overlays` directory. These are the directories that should be passed to kustomize: |
| 4 | + |
| 5 | +e.g. |
| 6 | +``` |
| 7 | +kustomize build config/overlays/standard > standard.yaml |
| 8 | +``` |
| 9 | + |
| 10 | +# Overlays |
| 11 | + |
| 12 | +All other directories are in support of of these overlays. |
2 | 13 |
|
3 | 14 | ## config/overlays/basic-olm
|
4 | 15 |
|
5 |
| -This includes basic support for an insecure OLMv1 deployment. This configuration uses: |
6 |
| -* config/base/catalogd |
7 |
| -* config/base/operator-controller |
8 |
| -* config/base/common |
| 16 | +This includes basic support for an insecure (non-TLS) OLMv1 deployment. |
| 17 | + |
| 18 | +## config/overlays/standard |
| 19 | + |
| 20 | +This includes support for a secure (i.e. with TLS) configuration of OLMv1. This configuration requires cert-manager. |
| 21 | + |
| 22 | +This configuration is used to generate `manifests/standard.yaml`. |
9 | 23 |
|
10 |
| -## config/overlays/cert-manager |
| 24 | +## config/overlays/standard-e2e |
11 | 25 |
|
12 |
| -This includes support for a secure (i.e. with TLS) configuration of OLMv1. This configuration uses: |
13 |
| -* config/base/catalogd |
14 |
| -* config/base/operator-controller |
15 |
| -* config/base/common |
16 |
| -* config/components/tls/catalogd |
17 |
| -* config/components/tls/operator-controller |
18 |
| -* config/components/tls/ca |
| 26 | +This provides additional configuration support for end-to-end testing, including code coverage. This configuration requires cert-manager. |
19 | 27 |
|
20 |
| -This configuration requires cert-manager. |
| 28 | +This configuration is used to generate `manifests/standard-e2e.yaml`. |
21 | 29 |
|
22 |
| -## config/overlays/e2e |
| 30 | +## config/overlays/experimental |
23 | 31 |
|
24 |
| -This provides additional configuration support for end-to-end testing, including code coverage. This configuration uses: |
25 |
| -* config/base/catalogd |
26 |
| -* config/base/operator-controller |
27 |
| -* config/base/common |
28 |
| -* config/components/coverage |
29 |
| -* config/components/tls/catalogd |
30 |
| -* config/components/tls/operator-controller |
31 |
| -* config/components/tls/ca |
| 32 | +This provides additional configuration used to support experimental features, including CRDs. This configuration requires cert-manager. |
32 | 33 |
|
33 |
| -This configuration requires cert-manager. |
| 34 | +This configuration is used to generate `manifests/experimental.yaml`. |
34 | 35 |
|
35 |
| -## Base Configuration |
| 36 | +## config/overlays/experimental-e2e |
36 | 37 |
|
37 |
| -The base configuration specifies a namespace of `olmv1-system`. |
| 38 | +This provides experimental configuration and support for end-to-end testing, includng code coverage. This configuration requires cert-manager. |
38 | 39 |
|
39 |
| -### config/base/catalogd |
| 40 | +This configuration is used to generate `manifests/experimental-e2e.yaml`. |
40 | 41 |
|
41 |
| -This provides the base configuration of catalogd. |
| 42 | +## config/overlays/tilt-local-dev |
42 | 43 |
|
43 |
| -### config/base/operator-controller |
| 44 | +This provides configuration for Tilt debugging support. |
44 | 45 |
|
45 |
| -This provides the base configuration of operator-controller. |
| 46 | +# Components |
46 | 47 |
|
47 |
| -### config/base/common |
| 48 | +Components are the kustomize configuration building blocks. |
48 | 49 |
|
49 |
| -This provides common components to both operator-controller and catalogd, i.e. namespace. |
| 50 | +## config/components/base |
50 | 51 |
|
51 |
| -## Components |
| 52 | +This directory provides multiple configurations for organizing the base configuration into standard and experimental configurations. |
52 | 53 |
|
53 |
| -Each of the `kustomization.yaml` files specify a `Component`, rather than an overlay, and thus, can be used within the overlays. |
| 54 | +:bangbang: *The following rules should be followed when configurating a feature:* |
54 | 55 |
|
55 |
| -### config/components/tls/catalogd |
| 56 | +* Feature components that are GA'd and should be part of the standard manifest should be listed in `config/components/base/common/kustomization.yaml`. This `commmon` kustomization file is included by *both* the **standard** and **experimental** configurations. |
| 57 | +* Feature components that are still experimental and should be part of the standard manifest should be listed only in `config/components/base/experimental/kustomization.yaml`. |
56 | 58 |
|
57 |
| -This provides a basic configuration of catalogd with TLS support. |
| 59 | +## config/components/features |
58 | 60 |
|
59 |
| -This component requires cert-manager. |
| 61 | +This directory contains contains configuration for features (experimental or otherwise). |
60 | 62 |
|
61 |
| -### config/components/tls/operator-controller |
| 63 | +:bangbang: *Feature configuration should be placed into a subdirectory here.* |
62 | 64 |
|
63 |
| -This provides a basic configuration of operator-controller with TLS support for catalogd. |
| 65 | +## config/components/cert-manager |
64 | 66 |
|
65 |
| -This component requires cert-manager. |
| 67 | +This directory provides configuration for using cert-manager with OLMv1. |
66 | 68 |
|
67 |
| -### config/components/tls/ca |
| 69 | +## config/components/e2e |
68 | 70 |
|
69 |
| -Provides a CA for operator-controller/catalogd operation. |
| 71 | +This directory provides configuration for end-to-end testing of OLMv1. |
70 | 72 |
|
71 |
| -This component _does not_ specify a namespace, and _must_ be included last. |
| 73 | +# Base Configuration |
72 | 74 |
|
73 |
| -This component requires cert-manager. |
| 75 | +The `config/base` directory contains the base kubebuilder-generated configuration, along with CRDs. |
74 | 76 |
|
75 |
| -### config/components/coverage |
| 77 | +# Samples |
76 | 78 |
|
77 |
| -Provides configuration for code coverage. |
| 79 | +The `config/samples` directory contains example ClusterCatalog and ClusterExtension resources. |
0 commit comments