Skip to content

Commit 9e7784a

Browse files
authored
✨ configurable issuerRef for fleetconfig-controller certs; tidy lingering multicluster refs (#18)
* feat: make issuerRef configurable; tidy lingering multicluster refs * ci: disable chart increment check as it's handled separately * chore: add Ahmad & Artur to approvers --------- Signed-off-by: Tyler Gillson <[email protected]>
1 parent e324dc1 commit 9e7784a

File tree

7 files changed

+115
-101
lines changed

7 files changed

+115
-101
lines changed

.github/workflows/test.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -122,7 +122,7 @@ jobs:
122122
123123
- name: Run chart-testing (lint)
124124
if: steps.list-changed.outputs.changed == 'true'
125-
run: ct lint --chart-dirs ${{ inputs.repo }}/charts
125+
run: ct lint --chart-dirs ${{ inputs.repo }}/charts --check-version-increment=false
126126

127127
- name: Format cluster name
128128
id: format-cluster-name

fleetconfig-controller/OWNERS

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,4 @@
11
approvers:
2-
- TylerGillson
3-
4-
reviewers:
52
- ahmad-ibra
63
- arturshadnik
4+
- TylerGillson

fleetconfig-controller/charts/fleetconfig-controller/README.md

Lines changed: 16 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -30,12 +30,12 @@ Available Spoke Feature Gates:
3030
- **RawFeedbackJsonString** (ALPHA - default=false) - Enables raw feedback JSON string support
3131
- **V1beta1CSRAPICompatibility** (ALPHA - default=false) - Enables v1beta1 CSR API compatibility
3232
### Registration Authentication Configuration
33-
Registration authentication configuration for multicluster setup. authentication can be configured by uncommenting `multicluster.registrationAuth`
33+
Registration authentication configuration for FleetConfig setup. authentication can be configured by uncommenting `fleetConfig.registrationAuth`
3434
Optional Configuration for the Registration Authentication. If not provided, will default to using certificate signing requests (CSR).
35-
For EKS multicluster configurations, set the driver to "awsirsa" to use AWS IAM Roles for Service Accounts.
35+
For EKS FleetConfigs, set the driver to "awsirsa" to use AWS IAM Roles for Service Accounts.
3636
Available fields:
37-
- **driver**: The authentication driver to use (default: "csr"). Set to "awsirsa" for EKS multicluster.
38-
- **hubClusterARN**: The ARN of the hub cluster (required for EKS multicluster).
37+
- **driver**: The authentication driver to use (default: "csr"). Set to "awsirsa" for EKS FleetConfigs.
38+
- **hubClusterARN**: The ARN of the hub cluster (required for EKS FleetConfigs).
3939
- **autoApprovedARNPatterns**: Optional list of spoke cluster ARN patterns that the hub will auto approve.
4040
### Hub Cluster Manager Feature Gates
4141
Feature gates for the Hub's Cluster Manager. Do not disable the feature gates that are enabled by default.
@@ -83,7 +83,6 @@ Refer to the [Multicluster Controlplane configuration](https://github.com/open-c
8383
| `fleetConfig.hub.kubeconfig.inCluster` | If set, the kubeconfig will be read from the cluster. Only applicable for same-cluster operations. | `true` |
8484
| `fleetConfig.spokes[0].name` | Name of the spoke cluster. | `hub-as-spoke` |
8585
| `fleetConfig.spokes[0].createNamespace` | If true, create open-cluster-management namespace and agent namespace (open-cluster-management-agent for Default mode, <klusterlet-name> for Hosted mode), otherwise use existing one. Do not edit this name if you are using the default hub-as-spoke mode. | `true` |
86-
| `fleetConfig.spokes[0].createNamespace` | If true, create open-cluster-management namespace and agent namespace (open-cluster-management-agent for Default mode, | `true` |
8786
| `fleetConfig.spokes[0].syncLabels` | If true, sync the labels from klusterlet to all agent resources. | `false` |
8887
| `fleetConfig.spokes[0].kubeconfig.context` | The context to use in the kubeconfig file. Leave empty to use the current context. | `""` |
8988
| `fleetConfig.spokes[0].kubeconfig.inCluster` | If set, the kubeconfig will be read from the cluster. Only applicable for same-cluster operations. | `true` |
@@ -122,10 +121,18 @@ Refer to the [Multicluster Controlplane configuration](https://github.com/open-c
122121

123122
### cert-manager
124123

125-
| Name | Description | Value |
126-
| ------------------------------- | ----------------------------------------- | ------ |
127-
| `cert-manager.enabled` | Whether to install cert-manager. | `true` |
128-
| `clusterIssuer.spec.selfSigned` | Default self-signed issuer configuration. | `{}` |
124+
| Name | Description | Value |
125+
| ---------------------- | -------------------------------- | ------ |
126+
| `cert-manager.enabled` | Whether to install cert-manager. | `true` |
127+
128+
### certificates
129+
130+
| Name | Description | Value |
131+
| -------------------------------------------- | ------------------------------------------- | ------------------------ |
132+
| `certificates.clusterIssuer.spec.selfSigned` | Use a self-signed ClusterIssuer by default. | `{}` |
133+
| `certificates.clusterIssuer.enabled` | Enable the creation of a ClusterIssuer. | `true` |
134+
| `certificates.issuerRef.kind` | Kind of the certificate issuer to use. | `ClusterIssuer` |
135+
| `certificates.issuerRef.name` | Name of the certificate issuer to use. | `fleetconfig-controller` |
129136

130137
### webhook parameters
131138

fleetconfig-controller/charts/fleetconfig-controller/templates/admission-webhooks/serving-cert.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,8 +15,8 @@ spec:
1515
- '{{ include "chart.fullname" . }}-webhook.{{ .Release.Namespace }}.svc.{{
1616
.Values.kubernetesClusterDomain }}'
1717
issuerRef:
18-
kind: ClusterIssuer
19-
name: fleetconfig-controller
18+
kind: {{ .Values.certificates.issuerRef.kind }}
19+
name: {{ .Values.certificates.issuerRef.name }}
2020
revisionHistoryLimit: {{ .Values.admissionWebhooks.certManager.revisionHistoryLimit }}
2121
secretName: {{ template "chart.fullname" . }}-admission
2222
{{- end }}
Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,10 @@
1+
{{- if .Values.certificates.clusterIssuer.enabled -}}
12
apiVersion: cert-manager.io/v1
23
kind: ClusterIssuer
34
metadata:
45
name: fleetconfig-controller
56
annotations:
67
helm.sh/hook: pre-install,pre-upgrade
78
spec:
8-
{{ .Values.clusterIssuer.spec | toYaml | indent 2 }}
9+
{{ .Values.certificates.clusterIssuer.spec | toYaml | indent 2 }}
10+
{{- end -}}

0 commit comments

Comments
 (0)