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
Copy file name to clipboardExpand all lines: docs/enterprise/updating-app-manager.mdx
+42-1Lines changed: 42 additions & 1 deletion
Original file line number
Diff line number
Diff line change
@@ -9,6 +9,8 @@ import ViewAirGapBundle from "../partials/install/_airgap-bundle-view-contents.m
9
9
10
10
This topic describes how to perform updates in existing cluster installations with Replicated KOTS. It includes information about how to update applications and the version of KOTS running in the cluster.
11
11
12
+
It also includes information about how the Admin Console determines version precendence. See [How the Admin Console Determines Version Precendence](/enterprise/updating-app-manager#how-the-admin-console-determines-version-precedence).
13
+
12
14
## Update an Application
13
15
14
16
You can perform an application update using the KOTS Admin Console or the KOTS CLI. You can also set up automatic updates. See [Configure Automatic Updates](/enterprise/updating-apps).
@@ -141,4 +143,43 @@ To update KOTS in an existing air gap cluster:
141
143
*`RO_PASSWORD` with the password associated with the username.
142
144
*`NAMESPACE` with the namespace on your cluster where KOTS is installed.
143
145
144
-
For help information, run `kubectl kots admin-console upgrade -h`.
146
+
For help information, run `kubectl kots admin-console upgrade -h`.
147
+
148
+
## How the Admin Console Determines Version Precedence
149
+
150
+
The Admin Console uses version precedence to determine which versions are available for upgrade. Version precedence also determines the order in which versions are displayed on the **Version history** page, as shown in the example below:
151
+
152
+

153
+
[View a larger version of this image](/images/new-version-available.png)
154
+
155
+
The Admin Console uses the following logic to determine version precendence:
156
+
157
+
* For channels _without_ semantic versioning (SemVer) enabled, the Admin Console sequences releases by their promotion dates and times. For example, if you promote a release with version label abc at 10:00am, and then promote a release with version label xyz at 10:15am, then version xyz has higher precedence (abc < xyz).
158
+
159
+
* For channels _with_ SemVer enabled, the Admin Console sequences releases by their semantic version. For information about how precedence is determined in SemVer, see [11.
160
+
Precedence refers to how versions are compared to each other when ordered](https://semver.org/#spec-item-11) in the Semantic Versioning 2.0.0 documentation.
161
+
162
+
The following shows an example of version precendence in SemVer when pre-release fields are used:
163
+
164
+
- 2.13.0
165
+
- 2.12.1
166
+
- 2.12.0
167
+
- 2.12.0-2
168
+
- 2.12.0-1
169
+
- 2.11.0
170
+
171
+
:::note
172
+
Build metadata in the semantic version string is ignored when determining version precedence. For example, the Admin Console interprets 2.12.0, 2.12.0+1, and 2.12.0+2 as the same version. Instead of using build metadata in your semantic version labels, Replicated recommends that you increment the patch version. Or, use pre-release identifiers. For example, 1.0.0-alpha or 1.0.0-1.
173
+
:::
174
+
175
+
* For channels with SemVer enabled where there are one or more releases that do _not_ use SemVer, the Admin Console determines precedence based on the semantic version when possible. The release(s) with non-semantic versions stay in the order of their promotion dates.
176
+
177
+
For example, assume that you promote these releases in the following order to a channel without SemVer enabled:
178
+
179
+
- 1.0.0 promoted at 10:00 AM
180
+
- abc promoted at 10:15 AM
181
+
- 0.1.0 promoted at 10:30 AM
182
+
- xyz promoted at 10:45 AM
183
+
- 2.0.0 promoted at 11:00 AM
184
+
185
+
Then, you enable SemVer on that channel. The Admin Console assigns precedence as follows: 0.1.0 < 1.0.0 < abc < xyz < 2.0.0.
Copy file name to clipboardExpand all lines: docs/vendor/releases-about.mdx
+7-45Lines changed: 7 additions & 45 deletions
Original file line number
Diff line number
Diff line change
@@ -96,7 +96,7 @@ As shown in the screenshot above, the release has the following properties:
96
96
97
97
***Version label**: The version label for the release. Version labels have the following requirements:
98
98
99
-
* If semantic versioning is enabled for the channel, you must use a valid semantic version. For more information, see [Semantic Versioning](#semantic-versioning).
99
+
* If semantic versioning is enabled for the channel, you must use a valid semantic version. For more information, see [About Using Semantic Versioning](#semantic-versioning).
100
100
101
101
<VersionLabelReqsHelm/>
102
102
@@ -120,7 +120,7 @@ Using SemVer for your releases is recommended because it makes versioning more p
120
120
121
121
You can enable and disable SemVer for releases on each channel in the channel settings. When you enable SemVer on a channel, the Vendor Portal checks all releases promoted to that channel to verify that the version label is valid SemVer. For more information about how to enable SemVer on a channel, see [Enable Semantic Versioning](/vendor/releases-creating-channels#enable-semantic-versioning) in _Create and Edit Channels_.
122
122
123
-
For information about the Admin Console determines precendence for releases that use SemVer, see [How the Admin Console Assigns Instance Sequence](#instance-sequence-how) below.
123
+
When SemVer is enabled, the Admin Console uses the version labels that you assign to releases to determine release precedence. This is important because precedence controls which versions are available to customers for upgrade. It also determines how versions are ordered on the Admin Console **Version history** page. For more information, see [How the Admin Console Determines Version Precedence](/enterprise/updating-app-manager#how-the-admin-console-determines-version-precedence) in _Performing Updates in Existing Clusters_.
124
124
125
125
## Release and Instance Sequencing
126
126
@@ -150,7 +150,11 @@ The channel sequence is also used in certain URLs. For example, a release with a
150
150
151
151
### Admin Console Instance Sequence
152
152
153
-
When a new version is available for upgrade (including when KOTS checks for upstream updates, when the user syncs their license, or when the user makes a config change) the KOTS Admin Console assigns a unique instance sequence number to that version.
153
+
When a new version is available for upgrade (including when KOTS checks for upstream updates, when the user syncs their license, or when the user makes a config change) the KOTS Admin Console assigns a unique instance sequence number to that version. The instance sequence number starts at 0 and increments for each identifier that is returned when a new version is available.
154
+
155
+
The purpose of the instance sequence number is to help the user track all new versions across upstream updates, config changes, and license syncs. Without the instance sequence number, this could be challegning as the version label does not change when the user makes config changes or syncs their license.
156
+
157
+
The instance sequence number does _not_ reflect version precedence. The Admin Console determines version precedence based on either the release's version label (if semantic versioning is enabled) or based on the date and time the release was promoted (if semantic versioning is disabled). This is important because precedence controls which versions are available to customers for upgrade. It also determines how versions are ordered on the Admin Console **Version history** page. For more information, see [How the Admin Console Determines Version Precedence](/enterprise/updating-app-manager#how-the-admin-console-determines-version-precedence) in _Performing Updates in Existing Clusters_.
154
158
155
159
The instance sequence in the Admin Console is unrelated to the release sequence in the Vendor Portal. Instance sequences are only tracked by KOTS instances, and the Vendor Portal has no knowledge of these numbers. It is also likely that the instance sequence number is different than the Vendor Portal release sequence.
156
160
@@ -160,48 +164,6 @@ The following shows instance sequence numbers on the Admin Console dashboard:
160
164
161
165
[View a larger version of this image](/images/instance-sequences.png)
162
166
163
-
#### How the Admin Console Assigns Instance Sequence {#instance-sequence-how}
164
-
165
-
The instance sequence in the Admin Console starts at 0 and increments for each identifier that is returned when a new version is available.
166
-
167
-
The Admin Console assigns instance sequence numbers using the following logic, depending on how semantic versioning is used:
168
-
169
-
* For channels _without_ semantic versioning (SemVer) enabled, the Admin Console sequences releases by their promotion dates.
170
-
171
-
* For channels _with_ SemVer enabled, the Admin Console sequences releases by their semantic version. For information about how precedence is determined in SemVer, see [11.
172
-
Precedence refers to how versions are compared to each other when ordered](https://semver.org/#spec-item-11) in the Semantic Versioning 2.0.0 documentation.
173
-
174
-
The following shows an example of how the Admin Console sequences releases that use SemVer:
175
-
176
-
- 2.13.0
177
-
- 2.12.1
178
-
- 2.12.0
179
-
- 2.12.0-2
180
-
- 2.12.0-1
181
-
- 2.11.0
182
-
183
-
:::note
184
-
Build metadata in the semantic version string is ignored when determining version precedence. For example, the Admin Console interprets 2.12.0, 2.12.0+1, and 2.12.0+2 as the same version. Instead of using build metadata in your semantic version labels, Replicated recommends that you increment the patch version. Or, use pre-release identifiers. For example, 1.0.0-alpha or 1.0.0-1.
185
-
:::
186
-
187
-
* For channels with SemVer enabled where there is at least one release that does _not_ use SemVer, the Admin Console sequences the releases with semantic versioning by their version label. The release(s) with non-semantic versioning stay in the order of their promotion dates.
188
-
189
-
For example, assume that you promote these releases in the following order to a channel:
190
-
191
-
- 1.0.0
192
-
- abc
193
-
- 0.1.0
194
-
- xyz
195
-
- 2.0.0
196
-
197
-
Then, you enable SemVer on that channel. The Admin Console sequences the version history for the channel as follows:
198
-
199
-
- 0.1.0
200
-
- 1.0.0
201
-
- abc
202
-
- xyz
203
-
- 2.0.0
204
-
205
167
## Vendor Portal Pages
206
168
207
169
This section provides information about the channels and releases pages in the Vendor Portal.
0 commit comments