v3.1 Release Notes¶
Administrative changes¶
New Features¶
Details of administrative changes¶
Breaking Changes¶
Advanced httpd support¶
In an effort to support higher versions of apache httpd
an
update was made in 3.1.9
that broke some older versions of apache httpd
.
RHEL compatible systems specifically need the highest version available
to work correctly with OnDemand 3.1.9 or higher. At the time of writing
the required version of apache httpd
is 2.4.37-65
for EL8 and
2.4.57-11
for EL9.
User Settings File Change¶
We had to change the location of the user settings file
off of the DATAROOT
which is cluster specific and problematic for sites that
have separate HOME directories for each cluster.
The new default location is under the XDG_CONFIG_HOME
. This change was made
to accomidate sites that have separate HOME directories for each cluster.
Sites who have never used this configuration do not need to do anything.
Sites that have reconfigured the user settings file
need to provide the full path for this file. It’s recommended that you do not
use a path in the DATAROOT
as that is cluster specific.
Deprecations¶
RedHat/CentOS 7 packages deprecated¶
OnDemand 3.0 was the last OnDemand release to support RedHat/CentOS 7.
3.1 does not support RedHat/CentOS 7.
Dependency updates¶
This release updates the following dependencies:
Ruby 3.1 (RHEL 8 & 9 only)
Warning
The change in Ruby version means any Ruby based apps that are not provided by the OnDemand RPM must be rebuilt or supply their own
bin/ruby
to use the older version of ruby.NodeJS 18 (All OSes except RHEL 7)
Warning
The change in Node version means any Node based apps that are not provided by the OnDemand RPM must be rebuilt.
Passenger 6.0.17
NGINX 1.22.1
ondemand-dex 2.36.0
mod_auth_openidc 2.4.14.1 (RHEL 7 & 8 only)
Upgrade directions¶
Warning
As always please update the development or test instances of OnDemand installed at your center first to test and verify before you modify the production instance.
Warning
The OnDemand upgrade has only been tested going from 3.0.x to 3.1.x.
Update OnDemand release RPM
sudo yum install -y https://yum.osc.edu/ondemand/3.1/ondemand-release-web-3.1-1.el7.noarch.rpm
sudo yum install -y https://yum.osc.edu/ondemand/3.1/ondemand-release-web-3.1-1.el8.noarch.rpm
sudo yum install -y https://yum.osc.edu/ondemand/3.1/ondemand-release-web-3.1-1.el9.noarch.rpm
wget -O /tmp/ondemand-release-web_3.1.0-focal_all.deb https://apt.osc.edu/ondemand/3.1/ondemand-release-web_3.1.0-focal_all.deb sudo apt install /tmp/ondemand-release-web_3.1.0-focal_all.deb sudo apt update
wget -O /tmp/ondemand-release-web_3.1.0-jammy_all.deb https://apt.osc.edu/ondemand/3.1/ondemand-release-web_3.1.0-jammy_all.deb sudo apt install /tmp/ondemand-release-web_3.1.0-jammy_all.deb sudo apt update
wget -O /tmp/ondemand-release-web_3.1.2-noble_all.deb https://apt.osc.edu/ondemand/3.1/ondemand-release-web_3.1.2-noble_all.deb sudo apt install /tmp/ondemand-release-web_3.1.2-noble_all.deb sudo apt update
Enable dependencies
RHEL/Rocky/AlmaLinux 8 & 9 only
sudo dnf module reset nodejs sudo dnf module enable nodejs:18 sudo dnf module reset ruby sudo dnf module enable ruby:3.1
Update OnDemand
sudo yum clean all sudo yum update ondemand
sudo apt-get --only-upgrade install ondemand
(Optional) If using Dex based authentiction, update the
ondemand-dex
package.sudo yum update ondemand-dex
sudo apt-get --only-upgrade install ondemand-dex
Update Apache configuration and restart Apache.
sudo /opt/ood/ood-portal-generator/sbin/update_ood_portal
sudo systemctl try-restart httpd24-httpd.service
sudo systemctl try-restart httpd
sudo systemctl try-restart apache2
(Optional) If
ondemand-dex
was installed, restart theondemand-dex
service.sudo systemctl try-restart ondemand-dex.service
(Optional) If
ondemand-selinux
was installed, see SELinux after UpdatesForce all PUNs to restart
sudo /opt/ood/nginx_stage/sbin/nginx_stage nginx_clean -f
Details of new features¶
Globus integration¶
The files application will now provide a link to Globus endpoints when users navigate to a directory that is within that endpoint.
Administrators need to configure OnDemand to map directories to Globus endpoints. Refer to the configuration entry for enabling globus endpoints.
Path Selector widget¶
Open OnDemand now ships it’s own path_selector
form widet.
This replaces the library at https://github.com/osc/bc_js_filepicker
for centers that have or do use this library.
You can go here to find details on the path selector.
Google Analytics 4 support¶
Google Analytics has updated since version 3.0 and 3.1 has support now for this update.
Refer to the google analytics configuration for how to configure this.
Dynamic Checkboxes¶
check_box
form widgets can now be used with dynamic data-set
and
data-hide
directives.
Refer to Dynamic Form Widgets for more details.
Disabling uploads and downloads¶
Sites can now disable uploads and downloads through the file browser. See the configuration for disabling downloads and disabling uploads for how to configure this.
Custom Javascript files¶
Sites can now add custom javascript files that will get loaded on every page of the dashboard application. Refer to the custom_javascript_files configuration property for more information.
Support added for completed.{md,html}.erb¶
Sites can now add a completed.{md,html}.erb
to interactive applications
to display information on the session’s card when the job has completed.
See completed.{md,html}.erb for more information.
Updated Apache options¶
We’ve updated ood_portal.yml
for two common apache configurations
sites may wish to enable.
The first is to disable apache logging in favor of supplying a global log configuration in a seperate file.
The second is to alllow for custom directives. You can now supply custom location directives and custom virtual host directives.
Improved shell connections¶
The shell app has been updated so that shell sessions can last longer. The app is better at keeping the connection alive, meaning users will maintain shell sessions for longer.
This, however, is disabled by default since 3.1.9. You can see more details in Enable and configure Shell Ping Pong.
aarch64/arm64 and ppc64le packages¶
Added aarch64/arm64 and ppc64le packages for some operating systems. See Supported Operating Systems and Architectures for a full list of which operating systems support aarch64 and ppc64le.
Amazon Linux 2023 packages¶
Added Amazon Linux 2023 packages. See Install Software for installation instructions.
Debian 12 packages¶
Added Debian 12 packages. See Install Software for installation instructions.