Multiple user projects and OOD paths/dataroot

For our slurm cluster, we do not share home directories on the cluster nodes. We have dedicated NFS storage allocated for each individual project.

In this case a project will have multiple users, and a user could in theory be a member of multiple projects. A group name in Active Directory would be something like cluster_projA or cluster_projB

We’ve updated /etc/ood/config/apps/dashboard/initializers/ood.rb to have the list of shares available to the user like this:

OodFilesApp.candidate_favorite_paths.tap do |paths|
projects = User.new.groups.map(&:name).grep(/^cluster_/)

Remap the returned user groups and drop the cluster_ heading

proj2 = projects.map { |p| p.gsub(“cluster_”,"") }

paths.concat proj2.map { |p| Pathname.new("/projectarea/#{p}") }

paths << Pathname.new("/projectarea/global")

end

So, when look in the file browser, all of my project areas are there. This works fine.

For the job composer, it would be nice if I could select between the projects, or maybe something like use the file browser to submit a job, but that doesn’t seem possible, so I’m looking at setting OOD_DATAROOT in /etc/ood/config/apps/myjobs.

I assume that I can write some bash function to get the project name cut down and a path set for the composer to look in /projectarea/projA, but there would be no way for me to change that and use projB.

Does that description of what I’d like to do make sense?

Can the data root be set in a job submission template? If I have maybe a projA and projB template, can it not use $HOME, or a custom OOD_DATAROOT?

Thanks. Let me know if I can clarify anything.

Hey, thanks for the ticket. I moved this initially to feature request, but frankly we don’t check that section nearly enough.

I did however already create a project for a new Job Compser New Job Composer Alpha · GitHub and an epic ticket for the same New Job composer (alpha) · Issue #1245 · OSC/ondemand · GitHub where this feature is listed as one of the things we’ll need to support. Feel free to comment on any of those tickets or to make new one requesting new features (we’re happy to move them around/label them as appropriate), but we’re looking to replace the job composer so we’d very much like feedback and ideas on what that would look like.

As to supporting this in 1.8 or 2.0 - I’ll have to take some time to lookup how. There could be some initializer you could use. So I’ve moved it back into the get help section for that reason.

Thanks. I think the supporting multiple paths option that you have in the epic sounds like the thing. If you do think of an initializer in the mean time, I’ll keep checking on this page.