forked from keycloak/keycloak
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
KEYCLOAK-4101: jboss-cli script to do migration of configuration
- Loading branch information
Showing
14 changed files
with
2,788 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -14,6 +14,7 @@ | |
nbactions.xml | ||
nb-configuration.xml | ||
catalog.xml | ||
nbproject | ||
|
||
# Compiled source # | ||
################### | ||
|
263 changes: 263 additions & 0 deletions
263
...ution/feature-packs/server-feature-pack/src/main/resources/content/bin/migrate-domain.cli
Large diffs are not rendered by default.
Oops, something went wrong.
145 changes: 145 additions & 0 deletions
145
...eature-packs/server-feature-pack/src/main/resources/content/bin/migrate-standalone-ha.cli
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,145 @@ | ||
embed-server --server-config=standalone-ha.xml | ||
|
||
echo *** Begin Migration *** | ||
echo | ||
|
||
# Migrate from 1.8.1 to 1.9.1 | ||
if (outcome == failed) of /subsystem=infinispan/cache-container=keycloak/replicated-cache=work/:read-resource | ||
echo Adding replicated-cache=work to keycloak cache container... | ||
/subsystem=infinispan/cache-container=keycloak/replicated-cache=work/:add(mode=SYNC) | ||
echo | ||
end-if | ||
# realmVersions cache deprecated in 2.1.0 | ||
#if (outcome == failed) of /subsystem=infinispan/cache-container=keycloak/local-cache=realmVersions/:read-resource | ||
# echo Adding local-cache=realmVersions to keycloak cache container... | ||
# /subsystem=infinispan/cache-container=keycloak/local-cache=realmVersions/:add(indexing=NONE,start=LAZY) | ||
# /subsystem=infinispan/cache-container=keycloak/local-cache=realmVersions/component=transaction/:write-attribute(name=mode,value=BATCH) | ||
# echo | ||
#end-if | ||
|
||
# Migrate from 1.9.1 to 1.9.2 | ||
if (result == NONE) of /subsystem=infinispan/cache-container=keycloak/invalidation-cache=users/component=eviction/:read-attribute(name=strategy) | ||
echo Adding eviction strategy to keycloak users cache container... | ||
/subsystem=infinispan/cache-container=keycloak/invalidation-cache=users/component=eviction/:write-attribute(name=strategy,value=LRU) | ||
/subsystem=infinispan/cache-container=keycloak/invalidation-cache=users/component=eviction/:write-attribute(name=max-entries,value=10000) | ||
echo | ||
end-if | ||
|
||
# Migrate from 1.9.2 to 2.0.0 | ||
# NO CHANGES | ||
|
||
# Migrate from 2.0.0 to 2.1.0 | ||
if (outcome == success) of /subsystem=infinispan/cache-container=keycloak/local-cache=realmVersions/:read-resource | ||
echo Removing deprecated cache 'realmVersions' | ||
/subsystem=infinispan/cache-container=keycloak/local-cache=realmVersions/:remove | ||
echo | ||
end-if | ||
|
||
# Migrate kecloak-server.json (deprecated in 2.2.0) | ||
if (result == []) of /subsystem=keycloak-server/:read-children-names(child-type=spi) | ||
echo Migrating keycloak-server.json to server cofig xml... | ||
/subsystem=keycloak-server/:migrate-json | ||
echo | ||
end-if | ||
|
||
# Find if we are using jpa or mongo | ||
if (result == mongo) of /subsystem=keycloak-server/spi=realm/:read-attribute(name=default-provider) | ||
set persistenceProvider=mongo | ||
else | ||
set persistenceProvider=jpa | ||
end-if | ||
|
||
# Migrate from 2.1.0 to 2.2.0 | ||
if (outcome == failed) of /extension=org.jboss.as.deployment-scanner/:read-resource | ||
echo Adding deployment-scanner extension... | ||
/extension=org.jboss.as.deployment-scanner/:add(module=org.jboss.as.deployment-scanner) | ||
echo | ||
end-if | ||
if (outcome == failed) of /subsystem=deployment-scanner/:read-resource | ||
echo Adding deployment-scanner... | ||
/subsystem=deployment-scanner/:add | ||
echo | ||
end-if | ||
if (outcome == failed) of /subsystem=deployment-scanner/scanner=default/:read-resource | ||
echo Adding scanner=default | ||
/subsystem=deployment-scanner/scanner=default/:add(path=deployments,relative-to=jboss.server.base.dir,runtime-failure-causes-rollback=${jboss.deployment.scanner.rollback.on.failure:false},scan-interval=5000) | ||
echo | ||
end-if | ||
if (outcome == failed) of /subsystem=infinispan/cache-container=keycloak/distributed-cache=authorization/:read-resource | ||
echo Additing distributed-cache=authorization | ||
/subsystem=infinispan/cache-container=keycloak/distributed-cache=authorization/:add(mode=SYNC,owners=1) | ||
echo | ||
end-if | ||
if (result == update) of /subsystem=keycloak-server/spi=connectionsJpa/provider=default/:map-get(name=properties,key=databaseSchema) | ||
echo Updating connectionsJpa default properties... | ||
/subsystem=keycloak-server/spi=connectionsJpa/provider=default/:map-remove(name=properties,key=databaseSchema) | ||
/subsystem=keycloak-server/spi=connectionsJpa/provider=default/:map-put(name=properties,key=initializeEmpty,value=true) | ||
/subsystem=keycloak-server/spi=connectionsJpa/provider=default/:map-put(name=properties,key=migrationStrategy,value=update) | ||
/subsystem=keycloak-server/spi=connectionsJpa/provider=default/:map-put(name=properties,key=migrationExport,value=${jboss.home.dir}/keycloak-database-update.sql) | ||
echo | ||
end-if | ||
if (outcome == failed) of /subsystem=keycloak-server/spi=userFederatedStorage/:read-resource | ||
echo Adding spi=userFederatedStorage... | ||
/subsystem=keycloak-server/spi=userFederatedStorage/:add(default-provider=$persistenceProvider) | ||
echo | ||
end-if | ||
if (outcome == failed) of /subsystem=keycloak-server/spi=jta-lookup/:read-resource | ||
echo Adding spi=jta-lookup... | ||
/subsystem=keycloak-server/spi=jta-lookup/:add(default-provider=${keycloak.jta.lookup.provider:jboss}) | ||
/subsystem=keycloak-server/spi=jta-lookup/provider=jboss/:add(enabled=true) | ||
echo | ||
end-if | ||
|
||
# Migrate from 2.2.0 to 2.2.1 | ||
# NO CHANGES | ||
|
||
# Migrate from 2.2.1 to 2.3.0 | ||
if (outcome == failed) of /subsystem=infinispan/cache-container=keycloak/local-cache=keys/:read-resource | ||
echo Adding local-cache=keys to keycloak cache container... | ||
/subsystem=infinispan/cache-container=keycloak/local-cache=keys/:add(indexing=NONE,start=LAZY) | ||
echo | ||
end-if | ||
if (result == undefined) of /subsystem=infinispan/cache-container=keycloak/local-cache=keys/component=eviction/:read-attribute(name=strategy,include-defaults=false) | ||
echo Updating eviction and expiration in local-cache=keys... | ||
/subsystem=infinispan/cache-container=keycloak/local-cache=keys/component=eviction/:write-attribute(name=strategy,value=LRU) | ||
/subsystem=infinispan/cache-container=keycloak/local-cache=keys/component=eviction/:write-attribute(name=max-entries,value=1000) | ||
/subsystem=infinispan/cache-container=keycloak/local-cache=keys/component=expiration/:write-attribute(name=max-idle,value=3600000) | ||
echo | ||
end-if | ||
if (outcome == failed) of /subsystem=keycloak-server/spi=publicKeyStorage/:read-resource | ||
echo Adding spi=publicKeyStorage... | ||
/subsystem=keycloak-server/spi=publicKeyStorage/:add | ||
/subsystem=keycloak-server/spi=publicKeyStorage/provider=infinispan/:add(properties={minTimeBetweenRequests => "10"},enabled=true) | ||
echo | ||
end-if | ||
|
||
# Migrate from 2.3.0 to 2.4.0 | ||
if (outcome == success) of /subsystem=infinispan/cache-container=keycloak/invalidation-cache=users/:read-resource | ||
echo Replacing invalidation-cache=users with local-cache=users | ||
/subsystem=infinispan/cache-container=keycloak/invalidation-cache=users/:remove | ||
/subsystem=infinispan/cache-container=keycloak/local-cache=users/:add | ||
echo | ||
end-if | ||
if (result == undefined) of /subsystem=infinispan/cache-container=keycloak/local-cache=users/component=eviction/:read-attribute(name=strategy,include-defaults=false) | ||
echo Updating eviction in local-cache=users... | ||
/subsystem=infinispan/cache-container=keycloak/local-cache=users/component=eviction/:write-attribute(name=strategy,value=LRU) | ||
/subsystem=infinispan/cache-container=keycloak/local-cache=users/component=eviction/:write-attribute(name=max-entries,value=10000) | ||
echo | ||
end-if | ||
if (outcome == success) of /subsystem=infinispan/cache-container=keycloak/invalidation-cache=realms/:read-resource | ||
echo Replacing invalidation-cache=realms with local-cache=realms | ||
/subsystem=infinispan/cache-container=keycloak/invalidation-cache=realms/:remove | ||
/subsystem=infinispan/cache-container=keycloak/local-cache=realms/:add | ||
echo | ||
end-if | ||
|
||
|
||
# Migrate from 2.4.0 to 2.5.0 | ||
if (result == NONE) of /subsystem=infinispan/cache-container=keycloak/local-cache=realms/component=eviction/:read-attribute(name=strategy) | ||
echo Adding eviction strategy to keycloak realms cache... | ||
/subsystem=infinispan/cache-container=keycloak/local-cache=realms/component=eviction/:write-attribute(name=strategy,value=LRU) | ||
/subsystem=infinispan/cache-container=keycloak/local-cache=realms/component=eviction/:write-attribute(name=max-entries,value=10000) | ||
echo | ||
end-if | ||
|
||
echo *** End Migration *** |
135 changes: 135 additions & 0 deletions
135
...n/feature-packs/server-feature-pack/src/main/resources/content/bin/migrate-standalone.cli
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,135 @@ | ||
embed-server --server-config=standalone.xml | ||
|
||
echo *** Begin Migration *** | ||
echo | ||
|
||
# Migrate from 1.8.1 to 1.9.1 | ||
if (outcome == failed) of /subsystem=infinispan/cache-container=keycloak/local-cache=work/:read-resource | ||
echo Adding local-cache=work to keycloak cache container... | ||
/subsystem=infinispan/cache-container=keycloak/local-cache=work/:add(indexing=NONE,start=LAZY) | ||
echo | ||
end-if | ||
# realmVersions cache deprecated in 2.1.0 | ||
#if (outcome == failed) of /subsystem=infinispan/cache-container=keycloak/local-cache=realmVersions/:read-resource | ||
# echo Adding local-cache=realmVersions to keycloak cache container... | ||
# /subsystem=infinispan/cache-container=keycloak/local-cache=realmVersions/:add(indexing=NONE,start=LAZY) | ||
# /subsystem=infinispan/cache-container=keycloak/local-cache=realmVersions/component=transaction/:write-attribute(name=mode,value=BATCH) | ||
# echo | ||
#end-if | ||
|
||
|
||
# Migrate from 1.9.1 to 1.9.2 | ||
if (result == NONE) of /subsystem=infinispan/cache-container=keycloak/local-cache=users/component=eviction/:read-attribute(name=strategy) | ||
echo Adding eviction strategy to keycloak users cache container... | ||
/subsystem=infinispan/cache-container=keycloak/local-cache=users/component=eviction/:write-attribute(name=strategy,value=LRU) | ||
/subsystem=infinispan/cache-container=keycloak/local-cache=users/component=eviction/:write-attribute(name=max-entries,value=10000) | ||
echo | ||
end-if | ||
|
||
# Migrate from 1.9.2 to 1.9.8 | ||
# NO CHANGES | ||
|
||
# Migrate from 1.9.8 to 2.0.0 | ||
if (outcome == failed) of /subsystem=infinispan/cache-container=keycloak/local-cache=authorization/:read-resource | ||
echo Adding local-cache=authorization to keycloak cache container... | ||
/subsystem=infinispan/cache-container=keycloak/local-cache=authorization/:add(indexing=NONE,start=LAZY) | ||
echo | ||
end-if | ||
if (result == undefined) of /subsystem=infinispan/cache-container=keycloak/local-cache=authorization/component=eviction/:read-attribute(name=strategy,include-defaults=false) | ||
echo Updating authorization cache container.. | ||
/subsystem=infinispan/cache-container=keycloak/local-cache=authorization/component=eviction/:write-attribute(name=strategy,value=LRU) | ||
/subsystem=infinispan/cache-container=keycloak/local-cache=authorization/component=eviction/:write-attribute(name=max-entries,value=100) | ||
end-if | ||
|
||
# Migrate from 2.0.0 to 2.1.0 | ||
if (outcome == success) of /subsystem=infinispan/cache-container=keycloak/local-cache=realmVersions/:read-resource | ||
echo Removing deprecated cache 'realmVersions' | ||
/subsystem=infinispan/cache-container=keycloak/local-cache=realmVersions/:remove | ||
echo | ||
end-if | ||
|
||
# Migrate kecloak-server.json (deprecated in 2.2.0) | ||
if (result == []) of /subsystem=keycloak-server/:read-children-names(child-type=spi) | ||
echo Migrating keycloak-server.json to server cofig xml... | ||
/subsystem=keycloak-server/:migrate-json | ||
echo | ||
end-if | ||
|
||
# Find if we are using jpa or mongo | ||
if (result == mongo) of /subsystem=keycloak-server/spi=realm/:read-attribute(name=default-provider) | ||
set persistenceProvider=mongo | ||
else | ||
set persistenceProvider=jpa | ||
end-if | ||
|
||
# Migrate from 2.1.0 to 2.2.0 | ||
if (outcome == failed) of /extension=org.jboss.as.deployment-scanner/:read-resource | ||
echo Adding deployment-scanner extension... | ||
/extension=org.jboss.as.deployment-scanner/:add(module=org.jboss.as.deployment-scanner) | ||
echo | ||
end-if | ||
if (outcome == failed) of /subsystem=deployment-scanner/:read-resource | ||
echo Adding deployment-scanner... | ||
/subsystem=deployment-scanner/:add | ||
echo | ||
end-if | ||
if (outcome == failed) of /subsystem=deployment-scanner/scanner=default/:read-resource | ||
echo Adding scanner=default | ||
/subsystem=deployment-scanner/scanner=default/:add(path=deployments,relative-to=jboss.server.base.dir,runtime-failure-causes-rollback=${jboss.deployment.scanner.rollback.on.failure:false},scan-interval=5000) | ||
echo | ||
end-if | ||
if (result == update) of /subsystem=keycloak-server/spi=connectionsJpa/provider=default/:map-get(name=properties,key=databaseSchema) | ||
echo Updating connectionsJpa default properties... | ||
/subsystem=keycloak-server/spi=connectionsJpa/provider=default/:map-remove(name=properties,key=databaseSchema) | ||
/subsystem=keycloak-server/spi=connectionsJpa/provider=default/:map-put(name=properties,key=initializeEmpty,value=true) | ||
/subsystem=keycloak-server/spi=connectionsJpa/provider=default/:map-put(name=properties,key=migrationStrategy,value=update) | ||
/subsystem=keycloak-server/spi=connectionsJpa/provider=default/:map-put(name=properties,key=migrationExport,value=${jboss.home.dir}/keycloak-database-update.sql) | ||
echo | ||
end-if | ||
if (outcome == failed) of /subsystem=keycloak-server/spi=userFederatedStorage/:read-resource | ||
echo Adding spi=userFederatedStorage... | ||
/subsystem=keycloak-server/spi=userFederatedStorage/:add(default-provider=$persistenceProvider) | ||
echo | ||
end-if | ||
if (outcome == failed) of /subsystem=keycloak-server/spi=jta-lookup/:read-resource | ||
echo Adding spi=jta-lookup... | ||
/subsystem=keycloak-server/spi=jta-lookup/:add(default-provider=${keycloak.jta.lookup.provider:jboss}) | ||
/subsystem=keycloak-server/spi=jta-lookup/provider=jboss/:add(enabled=true) | ||
echo | ||
end-if | ||
|
||
# Migrate from 2.2.0 to 2.2.1 | ||
# NO CHANGES | ||
|
||
# Migrate from 2.2.1 to 2.3.0 | ||
if (outcome == failed) of /subsystem=infinispan/cache-container=keycloak/local-cache=keys/:read-resource | ||
echo Adding local-cache=keys to keycloak cache container... | ||
/subsystem=infinispan/cache-container=keycloak/local-cache=keys/:add(indexing=NONE,start=LAZY) | ||
echo | ||
end-if | ||
if (result == undefined) of /subsystem=infinispan/cache-container=keycloak/local-cache=keys/component=eviction/:read-attribute(name=strategy,include-defaults=false) | ||
echo Updating eviction and expiration in local-cache=keys... | ||
/subsystem=infinispan/cache-container=keycloak/local-cache=keys/component=eviction/:write-attribute(name=strategy,value=LRU) | ||
/subsystem=infinispan/cache-container=keycloak/local-cache=keys/component=eviction/:write-attribute(name=max-entries,value=1000) | ||
/subsystem=infinispan/cache-container=keycloak/local-cache=keys/component=expiration/:write-attribute(name=max-idle,value=3600000) | ||
echo | ||
end-if | ||
if (outcome == failed) of /subsystem=keycloak-server/spi=publicKeyStorage/:read-resource | ||
echo Adding spi=publicKeyStorage... | ||
/subsystem=keycloak-server/spi=publicKeyStorage/:add | ||
/subsystem=keycloak-server/spi=publicKeyStorage/provider=infinispan/:add(properties={minTimeBetweenRequests => "10"},enabled=true) | ||
echo | ||
end-if | ||
|
||
# Migrate from 2.3.0 to 2.4.0 | ||
# NO CHANGES | ||
|
||
# Migrate from 2.4.0 to 2.5.0 | ||
if (result == NONE) of /subsystem=infinispan/cache-container=keycloak/local-cache=realms/component=eviction/:read-attribute(name=strategy) | ||
echo Adding eviction strategy to keycloak realms cache... | ||
/subsystem=infinispan/cache-container=keycloak/local-cache=realms/component=eviction/:write-attribute(name=strategy,value=LRU) | ||
/subsystem=infinispan/cache-container=keycloak/local-cache=realms/component=eviction/:write-attribute(name=max-entries,value=10000) | ||
echo | ||
end-if | ||
|
||
echo *** End Migration *** |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.