Skip to content

Commit 384d7d5

Browse files
committed
Update config readme
Also update config comments to make it clear where features are supposed to be listed. Signed-off-by: Todd Short <tshort@redhat.com>
1 parent 6465e63 commit 384d7d5

3 files changed

Lines changed: 48 additions & 48 deletions

File tree

config/README.md

Lines changed: 46 additions & 46 deletions
Original file line numberDiff line numberDiff line change
@@ -1,77 +1,77 @@
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.
213

314
## config/overlays/basic-olm
415

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.
921

10-
## config/overlays/cert-manager
22+
This configuration is used to generate `manifests/standard.yaml`.
1123

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
24+
## config/overlays/standard-e2e
1925

20-
This configuration requires cert-manager.
26+
This provides additional configuration support for end-to-end testing, including code coverage. This configuration requires cert-manager.
2127

22-
## config/overlays/e2e
28+
This configuration is used to generate `manifests/standard-e2e.yaml`.
2329

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
30+
## config/overlays/experimental
3231

33-
This configuration requires cert-manager.
32+
This provides additional configuration used to support experimental features, including CRDs. This configuration requires cert-manager.
3433

35-
## Base Configuration
34+
This configuration is used to generate `manifests/experimental.yaml`.
3635

37-
The base configuration specifies a namespace of `olmv1-system`.
36+
## config/overlays/experimental-e2e
3837

39-
### config/base/catalogd
38+
This provides experimental configuration and support for end-to-end testing, includng code coverage. This configuration requires cert-manager.
4039

41-
This provides the base configuration of catalogd.
40+
This configuration is used to generate `manifests/experimental-e2e.yaml`.
4241

43-
### config/base/operator-controller
42+
## config/overlays/tilt-local-dev
4443

45-
This provides the base configuration of operator-controller.
44+
This provides configuration for Tilt debugging support.
4645

47-
### config/base/common
46+
# Components
4847

49-
This provides common components to both operator-controller and catalogd, i.e. namespace.
48+
Components are the kustomize configuration building blocks.
5049

51-
## Components
50+
## config/components/base
5251

53-
Each of the `kustomization.yaml` files specify a `Component`, rather than an overlay, and thus, can be used within the overlays.
52+
This directory provides multiple configurations for organizing the base configuration into standard and experimental configurations.
5453

55-
### config/components/tls/catalogd
54+
The following rules should be followed when configurating a feature:
5655

57-
This provides a basic configuration of catalogd with TLS support.
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`.
5858

59-
This component requires cert-manager.
59+
# config/components/features
6060

61-
### config/components/tls/operator-controller
61+
This directory contains contains configuration for features (experimental or otherwise).
6262

63-
This provides a basic configuration of operator-controller with TLS support for catalogd.
63+
## config/components/cert-manager
6464

65-
This component requires cert-manager.
65+
This directory provides configuration for using cert-manager with OLMv1.
6666

67-
### config/components/tls/ca
67+
## config/components/e2e
6868

69-
Provides a CA for operator-controller/catalogd operation.
69+
This directory provides configuration for end-to-end testing of OLMv1.
7070

71-
This component _does not_ specify a namespace, and _must_ be included last.
71+
# Base Configuration
7272

73-
This component requires cert-manager.
73+
The `config/base` directory contains the base kubebuilder-generated configuration, along with CRDs.
7474

75-
### config/components/coverage
75+
## Samples
7676

77-
Provides configuration for code coverage.
77+
The `config/samples` directory contains example ClusterCatalog and ClusterExtension resources.

config/components/base/common/kustomization.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,5 +6,5 @@ resources:
66
- ../../../base/operator-controller
77
- ../../../base/common
88
# components should include any GA'd features (none as of now)
9+
# they should not be listed in the standard config, as they will be excluded from the experimental manifest
910
components:
10-

config/components/base/standard/kustomization.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,4 +7,4 @@ resources:
77
# Pull in the component(s) common to standard and experimental
88
components:
99
- ../common
10-
# GA'D FEATURES ARE LISTED HERE
10+
# GA'D FEATURES ARE LISTED IN THE COMMON CONFIG, NOT HERE

0 commit comments

Comments
 (0)