v1.6 Release Notes¶
Highlights in 1.6:
- OnDemand passed a security audit
- Added job array support for LSF and PBSPro adapters
- Improved Slurm and Grid Engine adapters
- Added localization options to the Dashboard and Job Composer
- Added rendering of HTML or Markdown in Job Composer template manifests
- Added support for fetching quota from a URL
- Added VNC quality and compression controls
- Open Shell to compute node that a VNC job is running on
- Changed ‘Open in Terminal’ button to offer multiple options when OOD_SSH_HOSTS is set
- Enable BatchConnect applications to raise errors after form submission
- Added version strings to Dashboard
- Changed ngnix_stage to always remove stale PID files
- Add ability to disable RewriteEngine in Apache config
- Many bug fixes
Upgrading from v1.5¶
As always please update the development or test instances of OnDemand installed at your center first before you modify the production instance.
Update OnDemand release RPM
sudo yum install -y https://yum.osc.edu/ondemand/1.6/ondemand-release-web-1.6-4.noarch.rpm
sudo yum clean all sudo yum update ondemand
Application Version Changes¶
|Dashboard App||1.31.0 → 1.35.0 (diff)|
|Shell App||1.4.2 → 1.4.6 (diff)|
|Files App||1.5.1 → 1.5.3 (diff)|
|File Editor App||1.4.1 → 1.4.3 (diff)|
|Active Jobs App||1.7.0 → 1.9.2 (diff)|
|Job Composer App||2.11.0 → 2.15.0 (diff)|
|Desktops App||0.2.0 → 0.2.1 (diff)|
Table 14 lists the app version changes between OnDemand v1.5.3 and OnDemand 1.6.7
OnDemand passed a security audit¶
At the end of 2018 TrustedCI completed a security audit of OnDemand and quoting the major findings of the audit: “No major issues were found in a comprehensive evaluation of the architecture and critical resources in Open OnDemand, and analysis of potential code weaknesses in critical components.”
Thanks to Elisa Heymann, Joel Atkins and Barton P. Miller for performing the audit! The full report is available as a PDF at openondemand.org.
Added job array support for LSF and PBSPro adapters¶
Job Composer and Active Jobs now support job arrays for all adapters that OnDemand supports including LSF and PBSPro.
Improved Slurm and Grid Engine adapters¶
To improve the reliability of parsing
squeue output the record delimiter has been changed from newline to the ASCII/Unicode record separator.
To match the behavior of the other adapters the Grid Engine adapter will now attempt to detect whether the user has set the working directory of a job. If the user has not passed the
-cwd flags in the first 1024 characters of their job script then the adapter will append
-cwd to the arguments passed to
qsub. Fixed error where the Grid Engine adapter would throw an error when getting information on a job that had exited the queue.
Added localization options to the Dashboard and Job Composer¶
Many more strings have been internationalized in the Dashboard and the Job Composer. This work does not cover all the strings in the app, but enables localization of the most important ones.
See Customize Text in OnDemand for details.
Added rendering of HTML or Markdown in Job Composer template manifests¶
If the environment variable
RENDER_TEMPLATE_NOTES_AS_MARKDOWN is set to a truthy value then job template manifests displayed in the Job Composer that are written in Markdown will be run through the RedCarpet renderer. HTML values will always be rendered as HTML. This will allow sites to embed images or links to documentation in their templates. (ood-mjobs#291)
Added support for fetching quota from a URL¶
File usage quota warnings displayed on the Dashboard may now use a URL as their data source. Thanks to Dan Dietz at Purdue for the initial work on this feature.
Added VNC quality and compression controls¶
Controls to change the VNC compression and quality have been added to interactive session card:
This can help with users who want to sacrifice quality for a better connection speed and others who have great connection speed and want to maximize the quality.
Open Shell to compute node that a VNC job is running on¶
For running interactive sessions, the host name becomes a clickable link to open in the shell app:
Enable BatchConnect applications to raise errors after form submission¶
submit.yml.erb of an interactive app, if you raise an exception, the submission process will be aborted and the user will be shown the error. This enables interactive apps to support basic form submission validation.
Added version strings to Dashboard¶
The Dashboard will now display the version of OnDemand and the Dashboard in the footer. Interactive applications will display their versions next to their title on their launch page.
Changed ngnix_stage to always remove stale PID files¶
nginx_stage clean will now remove PID and socket files for processes that are not longer running. Whenever a stale PID files is deleted its removal is reported on
Add ability to disable RewriteEngine in Apache config¶
You can now omit enabling the RewriteEngine by adding
use_rewrites: false to the
/etc/ood/config/ood_portal.yml config file and re-running the
sudo /opt/ood/ood-portal-generator/sbin/update_ood_portal to update the ood-portal.conf Apache config.
Many bug fixes¶
- Setting the environmental variable
OOD_SHELLto an empty string will now hide the Open in Terminal button as documented. (ood-fileexplorer#191)
- Job Composer logs will no longer contain complaints about gems not being eager loaded. (ood-myjobs#285)
nginx_stagewill no longer crash when one of the
/etc/ood/config/nginx_stage.ymlis a number and not a string. (ondemand#26)
- In Active Jobs, display nothing in “Account” column if no account set for the job, instead of displaying
- Fixed Time Used format for Active Jobs: In 1.5 the
Time Usedfield in Active Jobs was the number of seconds elapsed as an integer. In 1.6 this has been changed back to
- Fixed Job Composer layout when job name is long: Job names that were exceptionally long and did not contain ‘break-able’ punctuation could break the layout of the Job Composer’s data table. The table has been updated so that job names wrap and will break mid-word if necessary.
- Fixed Shell App paste issues in MS Edge and Firefox (#62, #59, and #64)