#522 PKI Theme Framework
Closed: migrated 3 years ago by dmoluguw. Opened 11 years ago by mharmsen.

The current PKI theme packages are separated into:

  • <named>-pki-server-theme
  • <named>-pki-console-theme

All <named>-pki-server-theme themes consist of both client and server images, and are currently deployed to a common area which does not provide the flexibility for multiple themes:

  • /usr/share/pki/common-ui

I would like to propose the following changes in conjunction with the customization design located at http://pki.fedoraproject.org/wiki/Customization:

  • Separate 'server' theme code from 'client' theme code:
    • Separate the 'esc' client theme code into its own 'client' theme package (e. g. - dogtag-pki-client-theme, redhat-pki-client-theme, <custom>-pki-client-theme, etc.)
    • Add the 'pki_theme_client_dir' parameter to 'pki/base/deploy/etc/default.cfg'
  • Change the target installation area to be more flexible to multiple themes:
    • /usr/share/pki/themes
      • dogtag-pki-server-theme:
        • /usr/share/pki/themes/dogtag
          • /usr/share/pki/themes/dogtag/client
          • /usr/share/pki/themes/dogtag/server
        • redhat-pki-server-theme:
          • /usr/share/pki/themes/redhat
            • /usr/share/pki/themes/redhat/client
            • /usr/share/pki/themes/redhat/server
          • <custom>-pki-server-theme:
            • /usr/share/pki/themes/<custom>
              • /usr/share/pki/themes/<custom>/client
              • /usr/share/pki/themes/<custom>/server
  • Add respawn logic to 'pki/base/deploy/src/scriptlets/webapp_deployment.py' to account for these changes

Additionally, all <named>-pki-console-theme packages currently contain the same jar, /usr/share/java/pki/pki-console-theme.jar, which disallows the ability to have multiple console themes.

If the console is replaced by CLI and Browser functionality, this problem goes away, but otherwise, the console jar names should be able to co-exist with names unique to their theme (e. g. - dogtag-pki-console-theme.jar, redhat-pki-console-theme.jar, <custom>-pki-console-theme.jar, etc.), and unique theme-based wrapper scripts should be provided (e. g. - dogtag-pki-console, redhat-pki-console, <custom>-pki-console), and consider adding a 'pki_theme_console_jar' parameter to 'pki/base/deploy/etc/default.cfg' which specifies a complete path culminating in the name of the desired pki-console-theme jar.

Finally, the existing source code on 'master' should be re-factored to account for these theme changes with the following layout:
- pki/dogtag
- pki/dogtag/client
- pki/dogtag/console
- pki/dogtag/server
- pki/redhat
- pki/redhat/client
- pki/redhat/console
- pki/redhat/server


If this proposal is accepted in whole, or in part, its contents should either be merged into the PKI Customization design, or written up and published to the Dogtag wiki as a standalone design which is referenced from the Customization design.

Moving to FUTURE per discussion with mharmsen.

Metadata Update from @mharmsen:
- Issue assigned to edewata
- Issue set to the milestone: FUTURE

7 years ago

Dogtag PKI is moving from Pagure issues to GitHub issues. This means that existing or new
issues will be reported and tracked through Dogtag PKI's GitHub Issue tracker.

This issue has been cloned to GitHub and is available here:
https://github.com/dogtagpki/pki/issues/1092

If you want to receive further updates on the issue, please navigate to the
GitHub issue and click on Subscribe button.

Thank you for understanding, and we apologize for any inconvenience.

Metadata Update from @dmoluguw:
- Issue close_status updated to: migrated
- Issue status updated to: Closed (was: Open)

3 years ago

Login to comment on this ticket.

Metadata