36368d40c9
(cherry picked from commit 6d88d6f7162baa002490bfb1492360b7beed4fc2) (cherry picked from commit 696f14f8171a6bb6dbf65ab4d5b75fe1f9fc4587)
86 lines
4.4 KiB
Text
86 lines
4.4 KiB
Text
[[_migrate_themes]]
|
|
|
|
== Theme migration
|
|
|
|
If you have created any custom themes they must be migrated to the new server. Any changes to the built-in themes might
|
|
need to be reflected in your custom themes, depending on which aspects you have customized.
|
|
|
|
You must copy your custom themes from the old server `themes` directory to the new server `themes` directory.
|
|
After that you need to review the changes below and consider if the changes need to be applied to your custom theme.
|
|
|
|
In summary:
|
|
|
|
* If you have customized any of the changed templates listed below you need to compare the template from the base theme
|
|
to see if there are changes you need to apply.
|
|
* If you have customized any of the styles and are extending the {project_name} themes you need to review the changes to
|
|
the styles. If you are extending the base theme you can skip this step.
|
|
* If you have customized messages you might need to change the key or value or to add additional messages.
|
|
|
|
ifeval::[{project_product}==true]
|
|
Each step is described in more detail below the list of changes.
|
|
|
|
include::rhsso/migrate_themes-changes-73.adoc[leveloffset=0]
|
|
include::rhsso/migrate_themes-changes-72.adoc[leveloffset=0]
|
|
include::rhsso/migrate_themes-changes-71.adoc[leveloffset=0]
|
|
endif::[]
|
|
|
|
=== Migrating templates
|
|
|
|
If you have customized any of the templates you need to carefully review the changes that have been made to the templates
|
|
to decide if you need to apply these changes to your customized templates. Most likely you will need to apply the same
|
|
changes to your customized templates. If you have not customized any of the listed templates you can skip this section.
|
|
|
|
A best practice is to use a diff tool to compare the templates to see what changes you might need to make to your
|
|
customized template. If you have only made minor changes it is simpler to compare the updated template to your
|
|
customized template. However, if you have made many changes it might be easier to compare the new template to your
|
|
customized old template, as this will show you what changes you need to make.
|
|
|
|
The following screenshot compares the info.ftl template from the Login theme and an example custom theme:
|
|
|
|
.Comparison of the updated version of a Login theme template with an example custom Login theme template
|
|
image:images/theme-migration-meld-info-1.png[]
|
|
|
|
From this comparison it is easy to identify that the first change (`Hello world!!`) was a customization, while the
|
|
second change (`if pageRedirectUri`) is a change to the base theme. By copying the second change to your custom template,
|
|
you have successfully updated your customized template.
|
|
|
|
For the alternative approach the following screenshot compares the info.ftl template from the old installation with
|
|
the updated info.ftl template from the new installation:
|
|
|
|
.Comparison of the Login theme template from the old installation with the updated version of the Login theme template
|
|
image:images/theme-migration-meld-info-2.png[]
|
|
|
|
From this comparison it is easy to identify what has been changed in the base template. You will then manually have to
|
|
make the same changes to your modified template. Since this approach is not as simple as the first approach, only use
|
|
this approach if the first one is not feasible.
|
|
|
|
=== Migrating messages
|
|
|
|
If you have added support for another language, you need to apply all the changes listed above. If you have not added
|
|
support for another language, you might not need to change anything; you only have to make changes if you have changed
|
|
an affected message in your theme.
|
|
|
|
For added values, review the value of the message in the base theme to determine if you need to customize that message.
|
|
|
|
For renamed keys, rename the key in your custom theme.
|
|
|
|
For changed values, check the value in the base theme to determine if you need to make changes to your custom theme.
|
|
|
|
=== Migrating styles
|
|
|
|
If you are inheriting styles from the keycloak or rh-sso themes you might need to update your custom styles to reflect
|
|
changes made to the styles from the built-in themes.
|
|
|
|
A best practice is to use a diff tool to compare the changes to stylesheets between the old server installation and the
|
|
new server installation.
|
|
|
|
For example, using the diff command:
|
|
|
|
[source,bash,subs=+attributes]
|
|
----
|
|
$ diff {project_dirref}_OLD/themes/keycloak/login/resources/css/login.css \
|
|
{project_dirref}_NEW/themes/keycloak/login/resources/css/login.css
|
|
----
|
|
|
|
Review the changes and determine if they affect your custom styling.
|
|
|