ood-ansible icon indicating copy to clipboard operation
ood-ansible copied to clipboard

Extend support for additional `ondemand.d` configuration parameters

Open mikej888 opened this issue 11 months ago • 6 comments

Environment:

  • Ubuntu 22.04
  • Python 3.11.5
  • Ansible 8.0.0
  • osc.open_ondemand 3.1.4

Extend templates/ondemand.yml.j2 to support all parameters defined in ondemand.d/*.yml files

For example, for the following (which I needed in a playbook I was writing):

dashboard_header_img_logo
disable_dashboard_logo
dashboard_logo
dashboard_logo_height
dashboard_title
nav_categories
navbar_type

I currently use a local template:

{% if dashboard_header_img_logo is defined %}
dashboard_header_img_logo: {{ dashboard_header_img_logo }}
{% endif %}
{% if disable_dashboard_logo is defined %}
disable_dashboard_logo: {{ disable_dashboard_logo | bool | lower}}
{% endif %}
{% if dashboard_logo is defined %}
dashboard_logo: {{ dashboard_logo }}
{% endif %}
{% if dashboard_logo_height is defined %}
dashboard_logo_height: {{ dashboard_logo_height }}
{% endif %}
{% if dashboard_title is defined %}
dashboard_title: {{ dashboard_title }}
{% endif %}
{% if nav_categories is defined %}
nav_categories: {{ nav_categories }}
{% endif %}
{% if navbar_type is defined %}
navbar_type: {{ navbar_type }}
{% endif %}

Similarly, add example defaults to defaults/main/ondemand.yml, for example:

dashboard_header_img_logo: null
disable_dashboard_logo: false
dashboard_logo: null
dashboard_logo_height: null
dashboard_title: "Open OnDemand"
navbar_type: default
nav_categories: ['Apps', 'Files', 'Jobs', 'Clusters', 'Interactive Apps']

Other, currently unsupported, parameters from ondemand.d/*.yml files include

brand_bg_color: null
brand_link_active_bg_color: null
profile_links: []
custom_css_files: []
custom_javascript_files: []
show_all_apps_link: false
nav_bar: []
help_bar: []
interactive_apps_menu: {}
custom_pages: {}
navbar_type: dark
public_url: "/public"
announcement_path:
  - "/etc/ood/config/announcement.md"
  - "/etc/ood/config/announcement.yml"
  - "/etc/ood/config/announcements.d"

mikej888 avatar Mar 22 '24 15:03 mikej888