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
In 0.12.0 we introduced support for objects in user-provided services credentials (#2900). When we have been working on that, we wanted to avoid workloads restart on korifi upgrade in order to ensure smooth upgrade path, and came up with some legacy support code.
With the upcoming release the smooth upgrade is not going to be possible as workloads have to restart, see
Ensure that user provided services that have been created with 0.12.0 are fine
Ensure upsis created with 0.11.0 and reconciled by 0.12.0 are fine
Check the behaviour of bumping 0.11.0 straigh into the release candidate. If broken, make sure not to forget to document that 0.12.0 is a prerequisite for this release.
The text was updated successfully, but these errors were encountered:
In 0.12.0 we have extended upsi credentials secret to be represented by
arbitrary objects, not just plain maps of strings. That required certain
migration logic to migrate the secret to the new format and avoid
workloads restart during Korifi upgrade.
With the upcoming release, workload restart would be performed anyway
because of unrelated increments. Provided that 0.12.0 should have
migrated any user-provided service instances to the new credentials
format, we want to get rid of the migration code.
fixes#3520
Turns out that maybe this would not that trivial :(
Imagine the following scenario:
UPSI created with 0.11.0. The credentials secret referenced by the UPSI is in the old format
Korifi bumped to 0.12.0
As a result of the bump, the CFServiceInstance.Spec.SecretName resource still references the initial secret (in the old format)
However, as a result of the migration, its CFServiceInstance.Status.Credentials.Name is set to the migrated secret with the -migrated suffix). this migrated secret is in the new format
NOTE that the service instance spec is not changed at this point
In 0.12.0 we introduced support for objects in user-provided services credentials (#2900). When we have been working on that, we wanted to avoid workloads restart on korifi upgrade in order to ensure smooth upgrade path, and came up with some legacy support code.
With the upcoming release the smooth upgrade is not going to be possible as workloads have to restart, see
CF_INSTANCE_INDEX
env variable with downward API #3483As there is no way around that, let's make use of it and get rid of the legacy secret format support:
korifi/controllers/controllers/services/instances/upsi/controller.go
Lines 151 to 183 in f9b24a3
korifi/controllers/controllers/services/bindings/upsi/controller.go
Lines 90 to 106 in f9b24a3
The text was updated successfully, but these errors were encountered: