Hello all, When using LCM bricks the workspace th...
# gooddata-platform
l
Hello all, When using LCM bricks the workspace themes and style settings don't propagate from the master version to the new provisioned workspace and we have to apply them manually. Is this the intended behaviour? If we use import/export modules from metadata resources for project maintenance the themes and style settings are applied correctly. Thanks 🙂
1
m
Hi Luis, if you mean the custom themes, then those should be transferred but it is a bit more complicated. Unlike the metrics and dashboards, the themes are designed in a way to allow using different themes for different clients. How it works is that the theme definition and activation are two separate things. • there is a metadata object with the theme definition (colours and look & feel) • the activation of the theme for a particular workspace/client or hierarchy is done with the Hierarchical Settings ◦ the advantage of these settings is that they are hierarchical and can be overridden if needed so you can define a default theme for your whole domain and change it for a particular segment if needed or even for a particular workspace ◦ you activate the theme by putting the identifier of the metadata theme to selectedUiTheme setting on a particular level of hierarchy So to transfer the theme properly between workspaces within LCM you need to make sure: • the metadata object is transferred from development workspace ◦ this depends on the configuration of the release brick and what is being transferred from the development workspace ▪︎ in default configuration (where only the dashboards are transferred) it can happen that the theme is not trensferred ▪︎ in the transfer_all model, the theme should be transferred ▪︎ if the production_tags method is used, you need to make sure the theme has a proper tag assigned • the theme identifier is set on a proper settings level to selectedUiTheme property ◦ the simplest thing is to set it to the domain level - that means apply to all workspaces in the domain (all workspaces which physically have a theme with this identifier in them) ◦ but you should also be able to set it on segment or data product level (to apply it to all workspaces in that segment/dataproduct which have the theme in them) So can you please make sure whether the theme definition gets transferred to your master and client workspaces (i.e. try to find its identifier it in the target workspace using the
/gdc/md/{PID}/identifiers
grey page by pasting the identifier there. And if not, check which mode of release brick are you using.
🙌 1
l
Hello Michal, thanks for your help! :) Are theme objects (value) shared between domains? Do I need to create the same theme in all domains? Also, can I create a theme at a domain level or I need to created at a workspace "dummy" level and apply that value at domain value? Cheers!
m
Hi Luis, in GoodData Platform the objects are not shared between domains and they technically exist (same as dashboards or metrics) only in each workspace (not on the domain level). But the LCM bricks should be able to distribute them to the client workspaces and with the release brick even across domains. In case of themes, you can "activate" them on the domain level (=set on the domain level a theme identifier for which each workspace should be looking for). But for it to wor for a particular workspace, a theme with this identifier needs to exist in that workspace.
l
Hello 🙂
All is working as intended, thank you 🙂 The release brick brings the correct theme to the master version and also to a new workspace when using the provisioning brick. I've set up the activation of the theme at data product level (gdc/domains/{domainid}/dataproducts/{dataproductid}/segments/{segmentid}/config) and not a domain level.
👍 1