Skip to content

Feat/migrate store in system apiexport#574

Open
OlegErshov wants to merge 10 commits into
mainfrom
feat/migrate-store-in-system-apiexport
Open

Feat/migrate store in system apiexport#574
OlegErshov wants to merge 10 commits into
mainfrom
feat/migrate-store-in-system-apiexport

Conversation

@OlegErshov
Copy link
Copy Markdown
Contributor

@OlegErshov OlegErshov commented May 19, 2026

On-behalf-of: SAP aleh.yarshou@sap.com

[BREAKING CHANGE] Store resource has been moved from core.platform-mesh.io to system.platform-mesh.io apiexport. This PR supports this migration

Authorization models hasn't been changed as it was decided to leave them in user workspaces so they can be changed.

Migration strategy for existing environments:
Store reconciliation will be fine when ApiBindings are fine with new changes. Unfortunately kcp will not allow to re-bound already bounded resources. It means that it's not possible to fix ApiBindings without removing old ones. Removing ApiBinding leads to the removal of the all bounded in it resources. As system apiexport affects 2 workspaces :root:orgs,:root:platform-mesh-system for environment update it's required to remove core.platform-mesh.io ApiBindings from them. It leads to the removal of all organizations, accounts, stores and other resources specified in core.platform-mesh.io ApiBinding.

To continue with actual migration this issue should be resolved #587
Migration steps:

  1. Do a backup of OpenFGA, Keycloak and all resources in the system as it's described in this migration guide https://github.com/platform-mesh/helm-charts/blob/main/docs/migration-0.3/migration-guide.md
  2. Remove core.platform-mesh.io apibinidng in :root:orgs. It will remove all stores, accounts, workspaces in root:orgs
  3. Recreate all Accounts by UI
  4. Restore OpenFGA data as it's described in the guide https://github.com/platform-mesh/helm-charts/blob/main/docs/migration-0.3/migration-guide.md`

On-behalf-of: SAP aleh.yarshou@sap.com
Signed-off-by: OlegErshov <olezhka1629@gmail.com>
On-behalf-of: SAP aleh.yarshou@sap.com
Signed-off-by: OlegErshov <olezhka1629@gmail.com>
On-behalf-of: SAP aleh.yarshou@sap.com
Signed-off-by: OlegErshov <olezhka1629@gmail.com>
On-behalf-of: SAP aleh.yarshou@sap.com
Signed-off-by: OlegErshov <olezhka1629@gmail.com>
On-behalf-of: SAP aleh.yarshou@sap.com
Signed-off-by: OlegErshov <olezhka1629@gmail.com>
On-behalf-of: SAP aleh.yarshou@sap.com
Signed-off-by: OlegErshov <olezhka1629@gmail.com>
@OlegErshov OlegErshov force-pushed the feat/migrate-store-in-system-apiexport branch from f1c8a09 to 699b198 Compare May 19, 2026 15:31
Signed-off-by: OlegErshov <olezhka1629@gmail.com>

On-behalf-of: SAP aleh.yarshou@sap.com
@OlegErshov OlegErshov linked an issue May 20, 2026 that may be closed by this pull request
4 tasks
@OlegErshov OlegErshov marked this pull request as ready for review May 20, 2026 08:58
@OlegErshov OlegErshov requested review from a team as code owners May 20, 2026 08:58
@OlegErshov OlegErshov self-assigned this May 20, 2026
Copy link
Copy Markdown
Contributor

@aaronschweig aaronschweig left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is a breaking change for existing deployments, but the PR doesn't mention that. Could we add some context to the description and also some instructions regarding mitigation for existing deployments?

A few things worth documenting:

  1. Existing Store / AuthorizationModel resources under core.platform-mesh.io will stop reconciling once this is rolled out.
  2. The core.platform-mesh.io/fga-tuples finalizer on those resources could leave them stuck on delete if nothing cleans it up.
  3. How would the migration strategy look like

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

bug: It's not possible to remove an organization Hide Store resource from user workspaces

2 participants