Skip to content

Commit 6a34a87

Browse files
committed
docs: add upgrade information
1 parent 5e0c0af commit 6a34a87

File tree

1 file changed

+27
-0
lines changed

1 file changed

+27
-0
lines changed

README.md

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -44,6 +44,33 @@ about the non-trivial yet common problems needed to be solved for every operator
4444
You can (will) find detailed documentation [here](docs/DOCS.md).
4545
Note that these docs are currently in progress.
4646

47+
> :warning: 1.7.0 Upgrade
48+
> The 1.7.0 upgrade comes with big changes due to the update to the 5.0.0 version of the fabric8
49+
> Kubernetes client. While this should improve the user experience quite nicely, there are a couple
50+
> of things to be aware of when upgrading from a previous version as detailed below.
51+
52+
##### Overview of the 1.7.0 changes
53+
54+
- `Doneable` classes have been removed along with all the involved complexity
55+
- `Controller` annotation has been simplified: the `crdName` field has been removed as that value is
56+
computed from the associated custom resource implementation
57+
- Custom Resource implementation classes now need to be annotated with `Group` and `Version`
58+
annotations so that they can be identified properly. Optionally, they can also be annotated with
59+
`Kind` (if the name of the implementation class doesn't match the desired kind) and `Plural` if
60+
the plural version cannot be automatically computed (or the default computed version doesn't match
61+
your expectations).
62+
- The `CustomResource` class that needs to be extended is now parameterized with spec and status
63+
types, so you can have an empty default implementation that does what you'd expect. If you don't
64+
need a status, using `Void` for the associated type should work.
65+
- Custom Resources that are namespace-scoped need to implement the `Namespaced` interface so that
66+
the client can generate the proper URLs.
67+
68+
Many of these changes might not be immediately apparent but will result in `404` errors when
69+
connecting to the cluster. Please check that the Custom Resource implementations are properly
70+
annotated and that the value corresponds to your CRD manifest. If the namespace appear to be missing
71+
in your request URL, don't forget that namespace-scoped Custom Resources need to implement
72+
the `Namescaped` interface.
73+
4774
#### Usage
4875

4976
We have several sample Operators under the [samples](samples) directory:

0 commit comments

Comments
 (0)