Ood splash screen?

I have not been abl to locate any documntation that talks about how to set up the opening ood dashboard page or any way to display the motd. Where can these be set?


Also, the verion of ood should be on the dashboard screen.

Is it possible to change what is shown on the Dashboard? a motd? Customized display? Anything?

Yes, it is possible to customize the dash. At OSC we display a motd. I need to look into how we do it, and I’ll get back to you.

Two hooks for customizing the dashboard are announcements and motd. Announcements get the classes alert alert-warning and appear above the OOD_DASHBOARD_LOGO . Announcement files are expected to be found at: /etc/ood/config/announcement.(md|yml) or /etc/ood/config/announcements.d/any_file_name.(md|yml). To display a motd file on the dashboard ensure that the file /etc/ood/config/apps/dashboard/env exists at minimum with the following content:

MOTD_PATH="/path/to/your/motd" # this supports any uri including RSS feeds
MOTD_FORMAT="$MOTD_FORMAT_HERE" # markdown, txt, rss

More complex behavior is possible and is detailed at: https://github.com/OSC/ood-dashboard/tree/master/config/examples and a more complete env file is available here: https://github.com/OSC/ood-dashboard/blob/master/config/examples/osc/env

1 Like

If changes are made to these files, is it necessary to do the update_ood_portal?

No: update_ood_portal does not need to be run.

We have the motd set and it is not picking it up. We’ve restarted httpd24-httpd, does anything else need a restart?

You may need to restart your per-user-nginx.

service nginx16-nginx restart
nginx: [emerg] listen() to, backlog 511 failed (98: Address already in use)
nginx: configuration file /opt/rh/nginx16/root/etc/nginx/nginx.conf test failed

In general with OOD you don’t need to interact directly with the Nginx installation. As you noted it is trying to listen on port 80 which is being used by Apache. We provide a couple ways to interact with the PUNs.

From the OOD dashboard if development mode is enabled you can just select the option to restart web server which in this context is nginx. For example if you were serving OOD from localhost on port 8080 the URL looks like this: http://localhost:8080/nginx/stop?redir=/pun/sys/dashboard/

If on the other hand you as a super user need to restart the PUN of a specific user you can use the nginx_stage command:

root@localhost: /opt/ood/nginx_stage/sbin/nginx_stage nginx --user=$USER_OF_INTEREST --signal=reload

Still does not show with a fresh connection or with a restart of the webserver from the dashboard. I even logged out of the dashboard, closed the web browser application, and then restarted and reconnected. No motd displayed.

Looks like I finally got it with enough wrangling.

When doing configuration modifications to the apps, if you don’t see a change you can trigger a restart for your own Per User NGINX web server from the Dashboard by clicking “Help -> Restart Web Server”.

An alternative approach is to touch APP_ROOT/tmp/restart.txt for the particular app. That will force restart on the next request. The dashboard’s APP_ROOT is /var/www/ood/apps/sys/dashboard.

@wew we worked a bit trying to add missing documentation, including things that you mention you were trying to do here. Does https://osc.github.io/ood-documentation/master/customization.html address everything you were trying to do? Are there things you had to figure out that are not covered by this documentation? I apologize this wasn’t available for you when you started working with customizing OnDemand.

@efranz https://osc.github.io/ood-documentation/master/customization.html is quite useful. however, I’m somewhat at a loss as to how customization entries should be added to /etc/ood/config/nginx_stage.yml. For instance, I’d like to set the dashboard title and logo for all users by adding the following.

  ood_dashboard_title: 'hello'
  ood_dashboard_logo: 'https://login2.xxx.xxx.edu/public/logo.png'

Is this correct syntax? I see no changes when visiting the site. Perhaps a small example snippet would be helpful?

I knew it I should have called “upcase” on the keys so that if you used a key like ood_dashboard_title you would end up with an environment variable named OOD_DASHBOARD_TITLE set with the value provided.

Try this:

  OOD_DASHBOARD_LOGO: 'https://login2.xxx.xxx.edu/public/logo.png'

@efranz thanks, tried upper with no effect on the dash and I’ve been receiving the following message from the cron jobs.

OOD_DASHBOARD_LOGO: ‘https://login2.xxx.xxx.edu/public/logo.png’ (using correct url)

/opt/ood/nginx_stage/sbin/update_nginx_stage ] && /opt/ood/nginx_stage/sbin/update_nginx_stage --quiet

+ /opt/ood/nginx_stage/sbin/nginx_stage nginx_clean
Warning: invalid configuration option "pun_custom_env"
Completed successfully!

(lowercase results in same error)


We should mention that pun_custom_env is a feature of OOD 1.4.x which was released 8 Jan 2019. If you are running an older installation that would explain why it is complaining about pun_custom_env not existing.

For older versions of OOD you will need to need to set OOD_DASHBOARD_TITLE and OOD_DASHBOARD_LOGO in a file named /etc/ood/config/apps/dashboard/env.

ACK! Thank you! (I’m still running 1.3 but plan to update soon.)