Skip to content

Commit 486ad6f

Browse files
committed
split out dockerhub and snapshots steps
1 parent 579c312 commit 486ad6f

File tree

1 file changed

+48
-42
lines changed

1 file changed

+48
-42
lines changed

docs/vendor/helm-native-v2-using.md

Lines changed: 48 additions & 42 deletions
Original file line numberDiff line numberDiff line change
@@ -78,7 +78,54 @@ To configure a release to support installations with HelmChart v2:
7878
```
7979
For more information about declaring the SDK as a dependency, see [Install the SDK as a Subchart](/vendor/replicated-sdk-installing#install-the-sdk-as-a-subchart) in _Install the Replicated SDK_.
8080

81-
1. For any of your application images that could be rate limited by Docker Hub, do the following to avoid errors caused by reaching the rate limit:
81+
1. If you need to support KOTS existing cluster or kURL installations, complete the [Additional Steps for KOTS Existing Cluster or kURL Installations](#kots-steps) below.
82+
83+
1. Promote the release a channel that your team uses for testing, and install the release in a development environment to test your changes.
84+
85+
## Additional Steps for KOTS Existing Cluster or kURL Installations {#kots-steps}
86+
87+
To support KOTS existing cluster or kURL installations with HelmChart v2, complete these additional steps:
88+
89+
1. For each HelmChart v2 resource in the release, configure the [optionalValues](/reference/custom-resource-helmchart-v2#optionalvalues) key to add the `kots.io/backup: velero` and `kots.io/app-slug: APP_SLUG` labels to all resources that you want to be included in backups with Replicated snapshots. These labels are required to support the use of snapshots. In the `optionalValues` key, use a `when` statement that evaluates to true only when the customer has the [`isSnapshotSupported`](/vendor/licenses-using-builtin-fields#admin-console-feature-options) field enabled for their license.
90+
91+
:::note
92+
The Replicated [snapshots](snapshots-overview) feature for backup and restore is supported only for KOTS existing cluster and kURL installations. Snapshots are not supported for installations with Embedded Cluster. For more information about disaster recovery for Embedded Cluster installations, see [Disaster Recovery for Embedded Cluster](/vendor/embedded-disaster-recovery.mdx).
93+
:::
94+
95+
**Example**:
96+
97+
```yaml
98+
# kots.io/v1beta2 HelmChart custom resource
99+
100+
apiVersion: kots.io/v1beta2
101+
kind: HelmChart
102+
metadata:
103+
name: samplechart
104+
spec:
105+
...
106+
optionalValues:
107+
# Add backup labels only when the license supports snapshots.
108+
# Use the LicenseFieldValue template function to check if
109+
# the isSnapshotSupported license field is enabled
110+
- when: "repl{{ LicenseFieldValue `isSnapshotSupported` }}"
111+
recursiveMerge: true
112+
values:
113+
mariadb:
114+
commonLabels:
115+
kots.io/backup: velero
116+
# Use the LicenseFieldValue template function and the
117+
# built-in appSlug license field value to inject your
118+
# unique app slug
119+
kots.io/app-slug: repl{{ LicenseFieldValue "appSlug" }}
120+
podLabels:
121+
kots.io/backup: velero
122+
kots.io/app-slug: repl{{ LicenseFieldValue "appSlug" }}
123+
```
124+
For more information about the KOTS LicenseFieldValue template function, see [LicenseFieldValue](/reference/template-functions-license).
125+
126+
For more information about the `isSnapshotSupported` and `appSlug` built-in license fields, see the [Admin Console Feature Options](/vendor/licenses-using-builtin-fields#admin-console-feature-options) table in _Built-In License Fields_.
127+
128+
1. (KOTS Existing Cluster Only) For any of your application images that could be rate limited by Docker Hub, do the following to avoid errors caused by reaching the rate limit:
82129

83130
<details>
84131
<summary>What is Docker Hub rate limiting?</summary>
@@ -149,47 +196,6 @@ To configure a release to support installations with HelmChart v2:
149196
{{- end }}
150197
```
151198

152-
1. (KOTS Existing Cluster and kURL Installations Only) If you support KOTS existing cluster or kURL installations, for each HelmChart v2 resource in the release, configure the [optionalValues](/reference/custom-resource-helmchart-v2#optionalvalues) key to add the `kots.io/backup: velero` and `kots.io/app-slug: APP_SLUG` labels to all resources that you want to be included in backups with Replicated snapshots. These labels are required to support the use of snapshots. In the `optionalValues` key, use a `when` statement that evaluates to true only when the customer has the [`isSnapshotSupported`](/vendor/licenses-using-builtin-fields#admin-console-feature-options) field enabled for their license.
153-
154-
:::note
155-
The Replicated [snapshots](snapshots-overview) feature for backup and restore is supported only for KOTS existing cluster and kURL installations. Snapshots are not supported for installations with Embedded Cluster. For more information about disaster recovery for Embedded Cluster installations, see [Disaster Recovery for Embedded Cluster](/vendor/embedded-disaster-recovery.mdx).
156-
:::
157-
158-
**Example**:
159-
160-
```yaml
161-
# kots.io/v1beta2 HelmChart custom resource
162-
163-
apiVersion: kots.io/v1beta2
164-
kind: HelmChart
165-
metadata:
166-
name: samplechart
167-
spec:
168-
...
169-
optionalValues:
170-
# Add backup labels only when the license supports snapshots.
171-
# Use the LicenseFieldValue template function to check if
172-
# the isSnapshotSupported license field is enabled
173-
- when: "repl{{ LicenseFieldValue `isSnapshotSupported` }}"
174-
recursiveMerge: true
175-
values:
176-
mariadb:
177-
commonLabels:
178-
kots.io/backup: velero
179-
# Use the LicenseFieldValue template function and the
180-
# built-in appSlug license field value to inject your
181-
# unique app slug
182-
kots.io/app-slug: repl{{ LicenseFieldValue "appSlug" }}
183-
podLabels:
184-
kots.io/backup: velero
185-
kots.io/app-slug: repl{{ LicenseFieldValue "appSlug" }}
186-
```
187-
For more information about the KOTS LicenseFieldValue template function, see [LicenseFieldValue](/reference/template-functions-license).
188-
189-
For more information about the `isSnapshotSupported` and `appSlug` built-in license fields, see the [Admin Console Feature Options](/vendor/licenses-using-builtin-fields#admin-console-feature-options) table in _Built-In License Fields_.
190-
191-
1. Promote the release a channel that your team uses for testing, and install the release in a development environment to test your changes.
192-
193199
## Next Step: Migrate Existing Installations to HelmChart v2
194200

195201
Existing installations can be migrated to use the KOTS HelmChart v2 method, without having to reinstall the application.

0 commit comments

Comments
 (0)