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
|<a name="input_helm_chart"></a> [helm\_chart](#input\_helm\_chart) | Chart name from repository or local path to chart. For local charts, set the path to the chart directory. | `string` | `"materialize-operator"` | no |
108
108
|<a name="input_helm_values"></a> [helm\_values](#input\_helm\_values) | Additional Helm values to merge with defaults | `any` | `{}` | no |
109
-
|<a name="input_install_cert_manager"></a> [install\_cert\_manager](#input\_install\_cert\_manager) | Whether to install cert-manager. | `bool` | `false` | no |
109
+
|<a name="input_install_cert_manager"></a> [install\_cert\_manager](#input\_install\_cert\_manager) | Whether to install cert-manager. | `bool` | `true` | no |
110
110
|<a name="input_install_materialize_operator"></a> [install\_materialize\_operator](#input\_install\_materialize\_operator) | Whether to install the Materialize operator | `bool` | `true` | no |
111
111
|<a name="input_location"></a> [location](#input\_location) | The location where resources will be created | `string` | `"eastus2"` | no |
|<a name="input_resource_group_name"></a> [resource\_group\_name](#input\_resource\_group\_name) | The name of the resource group | `string` | n/a | yes |
120
120
|<a name="input_tags"></a> [tags](#input\_tags) | Tags to apply to all resources | `map(string)` | `{}` | no |
121
121
|<a name="input_use_local_chart"></a> [use\_local\_chart](#input\_use\_local\_chart) | Whether to use a local chart instead of one from a repository | `bool` | `false` | no |
122
-
|<a name="input_use_self_signed_cluster_issuer"></a> [use\_self\_signed\_cluster\_issuer](#input\_use\_self\_signed\_cluster\_issuer) | Whether to install and use a self-signed ClusterIssuer for TLS. Due to limitations in Terraform, this may not be enabled before the cert-manager CRDs are installed. | `bool` | `false` | no |
122
+
|<a name="input_use_self_signed_cluster_issuer"></a> [use\_self\_signed\_cluster\_issuer](#input\_use\_self\_signed\_cluster\_issuer) | Whether to install and use a self-signed ClusterIssuer for TLS. To work around limitations in Terraform, this will be treated as `false` if no materialize instances are defined. | `bool` | `true` | no |
123
123
124
124
## Outputs
125
125
@@ -155,15 +155,23 @@ Access to the web console is through the console pods on port 8080.
155
155
156
156
#### TLS support
157
157
158
-
For example purposes, optional TLS support is provided by using `cert-manager` and a self-signed `ClusterIssuer`.
158
+
TLS support is provided by using `cert-manager` and a self-signed `ClusterIssuer`.
159
159
160
160
More advanced TLS support using user-provided CAs or per-Materialize `Issuer`s are out of scope for this Terraform module. Please refer to the [cert-manager documentation](https://cert-manager.io/docs/configuration/) for detailed guidance on more advanced usage.
161
161
162
-
###### To enable installation of `cert-manager` and configuration of the self-signed `ClusterIssuer`
163
-
1. Set `install_cert_manager` to `true`.
164
-
1. Run `terraform apply`.
165
-
1. Set `use_self_signed_cluster_issuer` to `true`.
166
-
1. Run `terraform apply`.
162
+
## Upgrade Notes
167
163
168
-
Due to limitations in Terraform, it cannot plan Kubernetes resources using CRDs that do not exist yet. We need to first install `cert-manager`in the first `terraform apply`, before defining any `ClusterIssuer` or `Certificate` resources which get created in the second `terraform apply`.
164
+
#### v0.3.0
165
+
166
+
We now install `cert-manager` and configure a self-signed `ClusterIssuer` by default.
167
+
168
+
Due to limitations in Terraform, it cannot plan Kubernetes resources using CRDs that do not exist yet. We have worked around this for new users by only generating the certificate resources when creating Materialize instances that use them, which also cannot be created on the first run.
169
+
170
+
For existing users upgrading Materialize instances not previously configured for TLS:
171
+
1. Leave `install_cert_manager` at its default of `true`.
172
+
2. Set `use_self_signed_cluster_issuer` to `false`.
173
+
3. Run `terraform apply`. This will install cert-manager and its CRDs.
174
+
4. Set `use_self_signed_cluster_issuer` back to `true` (the default).
175
+
5. Update the `request_rollout` field of the Materialize instance.
176
+
6. Run `terraform apply`. This will generate the certificates and configure your Materialize instance to use them.
Copy file name to clipboardExpand all lines: docs/footer.md
+15-7Lines changed: 15 additions & 7 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -18,14 +18,22 @@ Access to the web console is through the console pods on port 8080.
18
18
19
19
#### TLS support
20
20
21
-
For example purposes, optional TLS support is provided by using `cert-manager` and a self-signed `ClusterIssuer`.
21
+
TLS support is provided by using `cert-manager` and a self-signed `ClusterIssuer`.
22
22
23
23
More advanced TLS support using user-provided CAs or per-Materialize `Issuer`s are out of scope for this Terraform module. Please refer to the [cert-manager documentation](https://cert-manager.io/docs/configuration/) for detailed guidance on more advanced usage.
24
24
25
-
###### To enable installation of `cert-manager` and configuration of the self-signed `ClusterIssuer`
26
-
1. Set `install_cert_manager` to `true`.
27
-
1. Run `terraform apply`.
28
-
1. Set `use_self_signed_cluster_issuer` to `true`.
29
-
1. Run `terraform apply`.
25
+
## Upgrade Notes
30
26
31
-
Due to limitations in Terraform, it cannot plan Kubernetes resources using CRDs that do not exist yet. We need to first install `cert-manager` in the first `terraform apply`, before defining any `ClusterIssuer` or `Certificate` resources which get created in the second `terraform apply`.
27
+
#### v0.3.0
28
+
29
+
We now install `cert-manager` and configure a self-signed `ClusterIssuer` by default.
30
+
31
+
Due to limitations in Terraform, it cannot plan Kubernetes resources using CRDs that do not exist yet. We have worked around this for new users by only generating the certificate resources when creating Materialize instances that use them, which also cannot be created on the first run.
32
+
33
+
For existing users upgrading Materialize instances not previously configured for TLS:
34
+
1. Leave `install_cert_manager` at its default of `true`.
35
+
2. Set `use_self_signed_cluster_issuer` to `false`.
36
+
3. Run `terraform apply`. This will install cert-manager and its CRDs.
37
+
4. Set `use_self_signed_cluster_issuer` back to `true` (the default).
38
+
5. Update the `request_rollout` field of the Materialize instance.
39
+
6. Run `terraform apply`. This will generate the certificates and configure your Materialize instance to use them.
description="Whether to install and use a self-signed ClusterIssuer for TLS. Due to limitations in Terraform, this may not be enabled before the cert-manager CRDs are installed."
175
+
description="Whether to install and use a self-signed ClusterIssuer for TLS. To work around limitations in Terraform, this will be treated as `false` if no materialize instances are defined."
description="Whether to install and use a self-signed ClusterIssuer for TLS. Due to limitations in Terraform, this may not be enabled before the cert-manager CRDs are installed."
152
+
description="Whether to install and use a self-signed ClusterIssuer for TLS. To work around limitations in Terraform, this will be treated as `false` if no materialize instances are defined."
0 commit comments