Skip to content

Commit 57a8cd6

Browse files
provide solution to skipRange removing bundles (#164)
1 parent a30e04e commit 57a8cd6

File tree

1 file changed

+23
-3
lines changed

1 file changed

+23
-3
lines changed

content/en/docs/Concepts/olm-architecture/operator-catalog/creating-an-update-graph.md

Lines changed: 23 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -88,10 +88,30 @@ such as `<1.0.3`.
8888

8989
**Warning:** Adding a bundle that only specifies skipRange to a given channel will wipe out all
9090
the previous content in that channel. This means directly installing past versions by editing
91-
the `startingCSV` field of the subscription is not possible when using skiprange only.
91+
the `startingCSV` field of the subscription is not possible when using skiprange only. In order
92+
for past versions to be installable by `startingCSV` while also benefitting from the `skipRange`
93+
feature, you will need to also connect past edges by setting a `replaces` field in addition to
94+
the `olm.skipRange`. For example, assuming the above update graph:
9295

93-
The above warning means that skiprange by itself is useful for teams who are not interested in
94-
supporting directly installing versions within a given range.
96+
```txt
97+
myoperator.v1.0.0 -> myoperator.v1.0.1 -> myoperator.v1.0.2
98+
```
99+
100+
In order to keep these versions installable by `startingCSV` when `myoperator.v1.0.3` is added,
101+
the CSV for `myoperator.v1.0.3` needs to have the following:
102+
103+
```yaml
104+
metadata:
105+
name: myoperator.v1.0.3
106+
annotations:
107+
olm.skipRange: ">=1.0.0 <1.0.3"
108+
spec:
109+
replaces: myoperator.v1.0.2
110+
```
111+
112+
SkipRange by itself is useful for teams who are not interested in supporting directly installing
113+
versions within a given range or for whom consumers of the operator are always on the latest
114+
version.
95115

96116
## Channel Guidelines
97117

0 commit comments

Comments
 (0)