A yum update of the ondemand package overwrote app files bc_desktop/template/script.sh.erb and bc_desktop/form.yml which contain necessary customization for the local environment. Is this expected behavior? Is there a way to retain customization short of excluding the package from being updated (or restoring manually after update)?
You should be dropping new form.yml files in the configuration directory /etc/ood/config/apps/bc_desktop/, the rpm wonât touch that. I think whatâs provided in the distribution is just a default. You can see our configs where we just drop this folder directly as-is in /etc/ood/confg.
To the script.sh.erb, Iâd ask what you updated to see if thereâs some other way to achieve your goal through configuration or similar.
If there isnât, you can override the script_file attribute though that may not be straight forward as youâd need it to be on the compute nodes and not in ERB, so not a template.
Yep! You want to do something like this in your cluster definiton file (in clusters.d). Adding it here will make sure that any VNC type job will start with this export (which is what Iâd imagine youâd need).
v2:
# other stuff removed for brevity
batch_connect:
vnc:
script_wrapper: |
export XDG_RUNTIME_DIR=$HOME/ondemand/.xdg
%s
This would suggest that if (eg) we wanted to only have a single panel in the xfce desktop, we would drop an appropriately configured template/config/xfce4/xfconf/xfce-perchannel-xml/xfce4-panel.xml into /etc/ood/config/apps/bc_desktop?
That doesnât seem to have worked just now when I tried on OOD 1.8.12
What have I done wrong? The file Iâm using is taken as an example from the desktop apps Ansys or Matlab
We only look for a few things in /etc/ood/config to configure apps. The only valid things you can drop there are new formyml, submit.yml (or their .erb counterparts) and form.js. Everything else, as youâve found, will be ignored.
I think the solution you want is to get rid of the bc_desktop app altogether by changing the permissions on it after install and deploy a new desktop app to your liking.
Youâd get rid of that app. We do ship it as a core app, but itâs really a convenience app so folks get desktops âout of the boxâ. If you remove it, itâs fairly limited in impact. Itâd have the same impact as removing your Jupyter or Matlab installation - which is to say limited to that app. (though there is the management/administrative impact because it will get re-installed when you upgrade so youâd want to invest in some automation to reset the installation to the state you want)
But I would say that changing the permissions is safer because you can roll it back in case you change your mind - and itâll have the same effect, nobody will be able to read it, so your users will never see it. If you remove the directory, youâd probably have to re-install or manually get it back.
@datakid wanted XFCE with just one panel; what are you looking for that the desktop app doesnât have?
Thanks for the answer. I was mostly just curious whether there was some internal logic that would break elsewhere.
We are replacing (or modifying) the remote desktop offerings so there are three of them. One is for people who only need one physical node; that enables us to put in checks for the maximum memory and cores. One is for MPI with symmetric placement and one processor per task. One enable the user to select the number of tasks per node and the number of CPUs per task for MPI/OpenMP hybrid jobs and does mem-per-cpu. This is in a Slurm context.
We are thinking that corresponds roughly also to level of user expertise, so weâre putting more help text on the first two forms. Some of our local support staff are pushing new users to OOD, and weâre trying to use the forms and the dashboard MOTD to get people to the right help and documentation.
Not sure if that is ârightâ, but we are going to give it a try.
This is exactly what configurations in /etc/ood/confg should provide for you. We have similar offerings where folks can get an entire compute node or a smaller shared 1 core allocation. And itâs all in our config repo linked in this topic without modification to the bc_desktop app.
As to messaging; yea thatâs about right. You can also see on our repo our messaging that links the larger allocations to the smaller and vice versa.
In v1.8, customizing the bc_desktop app by using a file /etc/ood/config/apps/bc_desktop/form.yml to override values from /var/www/ood/apps/sys/bc_desktop/form.yml no longer works. If a file /etc/ood/config/apps/bc_desktop/form.yml is present, it is treated as an additional desktop app and a new item called âDesktop: Formâ appears under Interactive Apps -> Desktops. From https://osc.github.io/ood-documentation/master/enable-desktops/modify-form-attributes.html I think the correct way to customize the bc_desktop app may now be to put the values that were under attributes in /etc/ood/config/apps/bc_desktop/form.yml instead under attributes in cluster yml file in /etc/ood/config/apps/bc_desktop - is this correct?