Skip to content

docs: additional docs for migration of SSA #1962

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 2 commits into from
Jun 22, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
15 changes: 14 additions & 1 deletion docs/documentation/v4-4-migration.md
Original file line number Diff line number Diff line change
Expand Up @@ -73,4 +73,17 @@ see those
in [ConfigurationService](https://github.com/java-operator-sdk/java-operator-sdk/blob/e95f9c8a8b8a8561c9a735e60fc5d82b7758df8e/operator-framework-core/src/main/java/io/javaoperatorsdk/operator/api/config/ConfigurationService.java#L268-L289)

Note that it is possible to override the related methods/behavior on class level when extending
the `KubernetesDependentResource`.
the `KubernetesDependentResource`.

### Migration from plain Update/Create to SSA Based Patch

Migration to SSA might not be trivial based on the uses cases and the type of managed resources.
In general this is not a solved problem is Kubernetes. The Java Operator SDK Team tries to follow
the related issues, but in terms of implementation this is not something that the framework explicitly
supports. Thus, no code is added that tries to mitigate related issues. Users should thoroughly
test the migration, and even consider not to migrate in some cases (see feature flags above).

See some related issues in [kubernetes](https://github.com/kubernetes/kubernetes/issues/118725) or
[here](https://github.com/keycloak/keycloak/pull). Please create related issue in JOSDK if any.


Original file line number Diff line number Diff line change
Expand Up @@ -334,8 +334,7 @@ default ExecutorServiceManager getExecutorServiceManager() {
* Resources when set to {@code false}. The default approach how these resources are
* created/updated was change to use
* <a href="https://kubernetes.io/docs/reference/using-api/server-side-apply/">Server-Side
* Apply</a> (SSA) by default. Note that the legacy approach, and this setting, might be removed
* in the future.
* Apply</a> (SSA) by default.
*
* @since 4.4.0
*/
Expand All @@ -347,8 +346,7 @@ default boolean ssaBasedCreateUpdateForDependentResources() {
* Allows to revert to the 4.3 generic matching algorithm for Kubernetes Dependent Resources when
* set to {@code false}. Version 4.4 introduced a new generic matching algorithm for Kubernetes
* Dependent Resources which is quite complex. As a consequence, we introduced this setting to
* allow folks to revert to the previous matching algorithm if needed. Note, however, that the
* legacy algorithm, and this setting, might be removed in the future.
* allow folks to revert to the previous matching algorithm if needed.
*
* @since 4.4.0
*/
Expand Down