Users who wish to use their own versions of software in OnDemand must configure their environment properly so OnDemand will recognize your private modules.


1. Edit the .bashrc file to include the directory to your private modules


vi /user/<username>/.bashrc


Add the module use command to point to your modules files in either your home or project directory:

# User specific aliases and functions

module use /projects/academic/<group_name>/modulefiles


NOTE: not all project directories are academic.  Yours may be under /projects/industry or /projects/rpci.  You may also have your private modules in your home directory:  /user/<username>/modulefiles

Save and exit the editor.  Source the file so that the changes will be recognized:


source ~/.bashrc



2.  Some software might require additional environment variables when used in OnDemand.  If that is the case for your software, we recommend you create a separate module(s) for use with OnDemand.  For example, Anaconda python and Jupyter Notebook will require an additional setting.  Copy your current python module to a new one and ensure the following lines are included:


whatis([[Anaconda Python 3.7]])

setenv("PYTHONDIR","/projects/academic/<group_name>/anaconda3")

prepend_path{"PATH","/projects/academic/<group_name>/anaconda3/bin",delim=":",priority="0"}

prepend_path{"LD_LIBRARY_PATH","/projects/academic/<group_name>/anaconda3/lib",delim=":",priority="0"}

load("cuda/9.0")


NOTE: Your directory names and software versions may be different than this example



3. [Optional]:  If you're using Jupyter Notebook and wish to access your project directory, we recommend creating a symbolic link in your home directory to the project directory.  Instructions can be found here