Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

More spelling #1066

Merged
merged 10 commits into from
Jan 13, 2025
Merged
2 changes: 1 addition & 1 deletion source/authentication/overview/map-user.rst
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,7 @@ Regular Expression User Mapping
-------------------------------

The simplest and fastest way to map a ``REMOTE_USER`` to a system user is through
:ref:`user_map_match <ood-portal-generator-user-map-match>`. It isn't directly
:ref:`user_map_match <ood-portal-generator-user-map-match>`. This is not directly
regular expression matching, but it's close enough for most use cases.
See it's documentation for examples and more.

Expand Down
2 changes: 1 addition & 1 deletion source/enable-desktops.rst
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ Enable Interactive Desktop
==========================

This installation guide will walk you through setting up an Interactive Desktop
app that your users will be able to use to launch a Gnome 2, Mate, or Xfce
app that your users will be able to use to launch a Gnome 2, Mate, or XFCE
desktop on a compute node within your HPC cluster. The user should then be able
to connect to a running session through their browser using the `noVNC`_
client.
Expand Down
2 changes: 1 addition & 1 deletion source/enable-desktops/add-cluster.rst
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ modify.
:file:`/etc/ood/config/clusters.d/`.

#. Navigate to your OnDemand site, in particular the Dashboard App, and you
should see in the top dropdown menu "Interactive Apps" ⇒ "Oakley Desktop"
should see in the top drop-down menu "Interactive Apps" ⇒ "Oakley Desktop"
(or whatever you set as the ``title``).

After choosing "Oakley Desktop" from the menu, you should be presented with
Expand Down
16 changes: 8 additions & 8 deletions source/enable-desktops/custom-job-submission.rst
Original file line number Diff line number Diff line change
Expand Up @@ -55,39 +55,39 @@ Since it has the extension ``.erb`` we can take advantage of the Ruby language
to make the configuration file dynamic. In particular, you will now have access
to the user-submitted form arguments defined as:

bc_num_hours
``bc_num_hours``
*Default:* ``"1"``

A Ruby ``String`` containing the number of hours a user requested for the
Desktop batch job to run.

bc_num_slots
``bc_num_slots``
*Default:* ``"1"``

A Ruby ``String`` containing either the number of nodes or processors
(depending on the type of resource manager the cluster uses) a user
requested.

bc_account
``bc_account``
*Default:* ``""``

A Ruby ``String`` that holds the account the user supplied to charge the job
against.

bc_queue
``bc_queue``
*Default:* ``""``

A Ruby ``String`` that holds the queue the user requested for the job to run
on.

bc_email_on_started
``bc_email_on_started``
*Default:* ``"0"``

A Ruby ``String`` that can either be ``"0"`` (do not send the user an email
when the job starts) or ``"1"`` (send an email to the user when the job
starts).

node_type
``node_type``
*Default:* ``""``

A Ruby ``String`` that can be used for more advanced job submission. This is
Expand Down Expand Up @@ -172,7 +172,7 @@ This can be handled in your custom job submission configuration file as such:
- "select=1:ncpus=<%= bc_num_slots.blank? ? 1 : bc_num_slots.to_i %>"

All `batch script options`_ are underneath the ``script`` configuration option.
In particular since there is no option to modify number of nodes/cpus, we need
In particular since there is no option to modify number of nodes or CPUs, we need
to directly interact with the ``native`` command line arguments. This is
specified as an array of :command:`qsub` arguments.

Expand Down Expand Up @@ -224,7 +224,7 @@ LinuxHost Adapter
--------------------

If you're using the :ref:`resource-manager-linuxhost` you actually don't *need* a specialized
submit.yml.erb. There is no need to specify resources like the other adapters above.
``submit.yml.erb``. There is no need to specify resources like the other adapters above.

You can however, use it to override the adapter's global fields for mount binding and specifying
which container use.
Expand Down
8 changes: 4 additions & 4 deletions source/enable-desktops/modify-form-attributes.rst
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ Modify Form Attributes
In some cases you may want to modify the form presented to the user as well as
any other configurable options. Some examples:

- Use an Xfce desktop instead of Mate desktop.
- Use an XFCE desktop instead of Mate desktop.
- Remove the "Queue" form field as your scheduler will auto select the correct
queue.
- Hard-code the "Number of nodes" to just 1, so that users can't launch
Expand Down Expand Up @@ -75,7 +75,7 @@ above options.
option. As this is an array, you can't simply prepend or append, you will
need to completely redefine it with your included modifications.

Change to Xfce Desktop
Change to XFCE Desktop
----------------------

The default installation has the ``desktop`` attribute hard-coded to the value
Expand All @@ -92,7 +92,7 @@ following edits to your custom YAML configuration file:
attributes:
desktop: "xfce"

And all Desktops will attempt to launch the Xfce desktop.
And all Desktops will attempt to launch the XFCE desktop.

.. note::

Expand Down Expand Up @@ -288,7 +288,7 @@ Because the :ref:`resource-manager-linuxhost` is not like a traditional schedule
there are very few form items you'll need to add or have your users choose from.

This is a minimal configuration to launch an XFCE desktop environment on a cluster
we call owens_login. You'll notice a lot of entries are null because they don't
we call ``owens_login``. You'll notice a lot of entries are null because they don't
really have any meaning in the LinuxHost Adapter.

.. code-block:: yaml
Expand Down
6 changes: 3 additions & 3 deletions source/release-notes/v1.2-release-notes.rst
Original file line number Diff line number Diff line change
Expand Up @@ -16,14 +16,14 @@ Some highlights of this release:
``/var/log/nginx/<user>/error.log`` on the corresponding OnDemand node.
- The Files App now opens and displays PDF and HTML files in a new tab when a
user attempts to View the selected file.
- A multitude of bugfixes...
- A multitude of bug fixes...

Upgrading from v1.1
-------------------

.. warning::

If updating from a version other than v1.1 it is recommended you walkthrough
If updating from a version other than v1.1 it is recommended you walk-through
the full `updating`_ instructions.

#. You will first need to `update the PUN utility`_.
Expand All @@ -35,7 +35,7 @@ Upgrading from v1.1
to the new global location::

/etc/ood/config/nginx_stage.yml
#. Finally you will need to walkthrough `updating the applications`_.
#. Finally you will need to walk-through `updating the applications`_.

.. _updating: https://osc.github.io/ood-documentation/release-1.2/updating.html
.. _update the pun utility: https://osc.github.io/ood-documentation/release-1.2/updating/update-pun-utility.html
Expand Down
28 changes: 14 additions & 14 deletions source/release-notes/v1.6-release-notes.rst
Original file line number Diff line number Diff line change
Expand Up @@ -16,8 +16,8 @@ Highlights in 1.6:
- `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`_
- `Changed nginx_stage to always remove stale PID files`_
- `Add ability to disable RewriteEngine in Apache configuration`_
- `Many bug fixes`_

Upgrading from v1.5
Expand All @@ -43,8 +43,8 @@ Upgrading from v1.5
Infrastructure Changes
----------------------

- `Changed ngnix_stage to always remove stale PID files`_
- `Add ability to disable RewriteEngine in Apache config`_
- `Changed nginx_stage to always remove stale PID files`_
- `Add ability to disable RewriteEngine in Apache configuration`_

Application Version Changes
----------------------------
Expand Down Expand Up @@ -90,7 +90,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`_.
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`_.

.. _openondemand.org: https://openondemand.org/documents/Open%20OnDemand%20Trusted%20CI%20Engagement%20Report.pdf

Expand Down Expand Up @@ -124,15 +124,15 @@ See :ref:`customization_localization` 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`_)
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 rendered through the RedCarpet library. 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`_)

.. _ood-mjobs#291: https://github.com/OSC/ood-myjobs/issues/278


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.
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
Expand All @@ -158,12 +158,12 @@ For running interactive sessions, the host name becomes a clickable link to open
Changed 'Open in Terminal' button to offer multiple options when OOD_SSH_HOSTS is set
.....................................................................................

In the Files app, if the environment variable ``OOD_SSH_HOSTS`` is set to a comma delimited value of ``host:title``, then the Open in Terminal button will display a dropdown of hosts to ssh to, instead of ssh-ing to the default host. For example, in the image below I set ``OOD_SSH_HOSTS="owens.osc.edu:Owens,pitzer.osc.edu:Pitzer,ruby.osc.edu:Ruby"``:
In the Files app, if the environment variable ``OOD_SSH_HOSTS`` is set to a comma delimited value of ``host:title``, then the Open in Terminal button will display a drop-down of hosts to ssh to, instead of shelling to the default host. For example, in the image below I set ``OOD_SSH_HOSTS="owens.osc.edu:Owens,pitzer.osc.edu:Pitzer,ruby.osc.edu:Ruby"``:

.. figure:: /images/files-open-in-terminal.png
:align: center

.. note:: In a future version of OnDemand we will change this app to load the hosts from the cluster configs.
.. note:: In a future version of OnDemand we will change this app to load the hosts from the cluster configurations.


Enable BatchConnect applications to raise errors after form submission
Expand All @@ -178,18 +178,18 @@ 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
....................................................
Changed ``nginx_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 ``stderr``. (`ondemand#11`_)

.. _ondemand#11: https://github.com/OSC/ondemand/issues/11


Add ability to disable RewriteEngine in Apache config
.....................................................
Add ability to disable RewriteEngine in Apache configuration
............................................................

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.
You can now omit enabling the RewriteEngine by adding ``use_rewrites: false`` to the ``/etc/ood/config/ood_portal.yml`` configuration file and re-running the ``sudo /opt/ood/ood-portal-generator/sbin/update_ood_portal`` to update the ood-portal.conf Apache configuration.


Many bug fixes
Expand Down
22 changes: 11 additions & 11 deletions source/release-notes/v3.0-release-notes.rst
Original file line number Diff line number Diff line change
Expand Up @@ -43,10 +43,10 @@ Thanks!
-------

We'd like to thank a bunch of folks' for contributing to this release.
As we only know the github username, that's what's being referenced here.
As we only know the Github username, that's what's being referenced here.

We'd like to thank Harvard for many contributions around layouts
and navitation. Notably, ``adaybujeda`` and ``whorka`` to name a few.
and navigation. Notably, ``adaybujeda`` and ``whorka`` to name a few.

We'd like to thank CSC Finland for contributing remote file browsing.
Specifically ``robinkar`` and ``CSC-swesters``.
Expand All @@ -64,15 +64,15 @@ time contributing to Open OnDemand.
* ``georgiastuart`` made their first contribution in #2323
* ``covert8`` made their first contribution in #2327

If we've missed listing anyone here, please let us know!
If we have missed listing anyone here, please let us know!

Security Fixes
--------------

Versions prior to 3.0 are vulnerable to these security related issues:

* ``OOD_ALLOWLIST_PATH`` can be circumvented in several scenarios.
* Users may inject malicous Ruby code into certian user owned ERB files
* Users may inject malicious Ruby code into certain user owned ERB files
that the system reads.

These have been fixed in version 3.0.2 and up. Thank you to the
Expand All @@ -92,8 +92,8 @@ Support for Ubuntu 18.04 has been dropped because the platform has
upgraded to Ruby on Rails 6.1. This version is not compatible with
Ruby 2.5 which is what Ubuntu 18.04 has.

context.json file locations have changed
****************************************
``context.json`` file locations have changed
********************************************

This is an internal item to Open OnDemand and not likely to really affect you at all.

Expand All @@ -107,8 +107,8 @@ Version 3.0 now writes files like ``~/ondemand/data/sys/dashboard/batch_connect/
Deprecations
............

Autoloading during initialization is deprecated.
************************************************
Auto-loading during initialization is deprecated.
*************************************************

.. include:: autoload.inc

Expand All @@ -117,8 +117,8 @@ NavConfig is deprecated

.. include:: navconfig.inc

whitelist & blacklist configs are deprecated
********************************************
whitelist & blacklist configurations are deprecated
***************************************************

.. include:: allowlist.inc

Expand Down Expand Up @@ -196,7 +196,7 @@ Upgrade directions

sudo yum install -y https://yum.osc.edu/ondemand/3.0/ondemand-release-web-3.0-1.noarch.rpm

#. Enable dependency repos
#. Enable dependency repositories

**RHEL/Rocky 8 only**

Expand Down
6 changes: 3 additions & 3 deletions source/requirements.rst
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ At this time OnDemand only supports the following operating systems and architec
:format: html

.. csv-table:: Operating System and Architecture Support
:header: "","x86_64","aarch64/arm64","ppc64le"
:header: "","``x86_64``","``aarch64/arm64``","``ppc64le``"
:stub-columns: 1

"RedHat/Rocky Linux/AlmaLinux 8",:raw-html:`&#9989;`,:raw-html:`&#9989;`,:raw-html:`&#9989;`
Expand All @@ -33,7 +33,7 @@ On the Web node serving OnDemand itself:
- `lsof`_
- `sudo`_
- `OnDemand repository`_:
- ondemand-{{ondemand_version}}-1.el7.x86_64.rpm
- ``ondemand-{{ondemand_version}}-1.el9.x86_64.rpm``

.. _lsof: https://en.wikipedia.org/wiki/Lsof
.. _OnDemand repository: https://openondemand.org/
Expand All @@ -58,7 +58,7 @@ Hardware Requirements

At `OSC`_ we have not quantified the minimum hardware requirements for OnDemand. The VMs that run OnDemand have 16 cores and 64GB RAM. According to our Ganglia metrics that is over powered for our normal utilization. We average 150MB memory per PUN and the average CPU percentage per Per User NGINX (PUN) is 4%. Our OnDemand instance serves over 600 unique users each month and at any given time usually has 60-100 PUN processes running.

The Passenger apps that make up the core of OnDemand (that NGINX is configured with), are each killed after a short period (5 minutes) of inactivity from the user, and when users are using NoVNC or connecting to Jupyter Notebook or RStudio on a compute node, Apache is proxying these users, bypassing the PUN completely. So it can happen that 60 PUNs are running but twice the number of users are actually being served.
The Passenger apps that make up the core of OnDemand (that NGINX is configured with), are each killed after a short period (5 minutes) of inactivity from the user, and when users are using NoVNC or connecting to Jupyter Notebook or RStudio on a compute node, Apache proxies these users, bypassing the PUN completely. So it can happen that 60 PUNs are running but twice the number of users are actually being served.

Another sizing factor that has impacted us in the past is the size of the ``/tmp`` partition. We have had incidents where ``/tmp`` is exhausted and so have increased the size from 20GB to 50GB.

Expand Down
15 changes: 15 additions & 0 deletions source/spelling_wordlist.txt
Original file line number Diff line number Diff line change
Expand Up @@ -45,3 +45,18 @@ backend
IdP
proxied
selectable
templating
Slurm
XFCE
natively
AlmaLinux
Tos
truthy
ood
Github
Deprecations
initializers
allowlist
blocklist
dex
navbar
Loading