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
We have a simple tool to check compatibility for CL nodes. The example command will filter and sort the available tags, rollback and install the oldest version, and then begin performing automatic upgrades to verify that each subsequent version remains compatible with the previous one.
3
+
## Prerequisites
4
+
5
+
Authorize in our SDLC ECR registry first. Get the creds and run
We have a simple tool to check compatibility for CL node clusters. The example command will filter and sort the available tags, rollback and install the oldest version, and then begin performing automatic upgrades to verify that each subsequent version remains compatible with the previous one.
13
+
14
+
`buildcmd`, `envcmd`, `testcmd` can be arbitrary bash commands.
4
15
5
16
```bash
6
17
ctf compat backward \
18
+
--registry <sdlc_ecr_registry> \
19
+
--buildcmd "just cli" \
20
+
--envcmd "cl r" \
21
+
--testcmd "cl test ocr2 TestSmoke/rounds" \
22
+
--refs 2.32.0 \
23
+
--refs 2.33.0 \
24
+
--refs 2.34.0 \
25
+
--refs 2.35.0 \
26
+
--nodes 3
27
+
```
28
+
29
+
Keep in mind that `refs` should be present in regsitry you are testing against, the first (oldest) `ref` should also have a valid end-to-end test that works.
30
+
31
+
In CI we detect SemVer tags automatically, whenever a new tag appears we select last 3, rollback to the oldest and perform upgrade process.
32
+
33
+
```bash
34
+
ctf compat backward \
35
+
--registry <sdlc_ecr_registry> \
7
36
--buildcmd "just cli" \
8
37
--envcmd "cl r" \
9
38
--testcmd "cl test ocr2 TestSmoke/rounds" \
10
-
--include_tags +compat \
11
39
--nodes 3 \
12
-
--versions_back 3
40
+
--versions-back 3
13
41
```
14
42
15
-
Since some of our products have a different release and tagging strategies you should add `+compat` tags to all released versions and use this tool in CI to check compatibility on `+compat` tag.
43
+
In case you have multiple DONs in your product and names of nodes are different please use `--node-name-template custom-cl-node-%d` option
16
44
17
-
Use `ctf compat restore` to rollback to current branch (default is `develop`)
45
+
## Modelling Node Operators Cluster
46
+
47
+
It is possible to fetch versions node operators are currently running and model DON upgrade sequence locally. Logic is the same, get all the versions, rollback to the oldest one, setup product, verify, try to upgrade all the versions running the oldest test for each upgrade.
0 commit comments