Hi Sebastian, thanks for the summary! On 12/10/18 8:21 AM, Sebastian Krah wrote: > Patrick, Kanika and I had a follow up discussion about how to implement > branding in Ceph Dashboard > > Conclusion: > We decided to create a folder name "vendor" in the ceph-dashboards root > directory, where we can place all modified templates. The name of the > modified template must be the same as the name of the original one. This is > crucial, because we would execute a script during our build process which > would either replace the original template with the branded one or change > the path to the modified template inside the TypeScript file. If the vendor > folder is empty, the script wouldn't do anything. > The advantage of this approach is that we will be able to avoid merge > conflicts when the upstream template is changed. A disadvantage is that if a > component is changed upstream we might forget to add those changes to the > modified downstream template. This could result in missing new > functionalities or, even worse, in errors (e.g. when variable names > changes). > > The script could also replace whole components and add or remove logic from > upstream, if this would be necessary in the future. > > I'll continue working on this and add such a script to our building routine. Quick update about this topic: during today's standup we discussed the actual implementation and concluded that it would be a better approach to place the modified templates into their respective directories, using a special file name extension to mark them. This way, there is no need to have a mapping/configuration file but would rather use the plain existence of such a customized file as the trigger for replacing the original during the UI build process. Lenz -- SUSE Linux GmbH - Maxfeldstr. 5 - 90409 Nuernberg (Germany) GF:Felix Imendörffer,Jane Smithard,Graham Norton,HRB 21284 (AG Nürnberg)
Attachment:
signature.asc
Description: OpenPGP digital signature