justIN           Dashboard       Workflows       Jobs       AWT       Sites       Storages       Docs       Login

DOCS : JUSTIN COMMAND : STANDALONE

Standalone justin command setup

The supported way to set up the justin command is to set up the DUNE environment and then do setup justin just as with other DUNE packages, either on a dunegpvm machine at Fermilab or on CERN's lxplus. If you run into problems, please replicate them on those platforms before reporting them.

If you are using a Linux machine elsewhere that has cvmfs, it may still be possible to set up the DUNE environment and use setup justin there too.

If you are on a Linux or macOS machine without cvmfs, then this page explains how to do a standalone install of the justin command.

The command is a self-contained Python3 script, which has no dependencies beyond the standard modules provided with Python 3.6 and above. There is no need to install additional modules, Rucio, token handling, or X.509 CA certificates.

The first step is to get the justin script.

If you have access to a machine with cvmfs, then the current production version can always be copied from

/cvmfs/dune.opensciencegrid.org/products/dune/justin/pro/NULL/bin/justin

Otherwise, you can get it from the commands directory in the justIN repo on GitHub. Check what version is displayed at the bottom of any page on the production justIN dashboard (including this one). Then select the major.minor branch on GitHub. For example, if the current version is 00.13.06, select the head of the branch 00.13

Once you have a copy of the justin script on your own machine, copy it to somewhere on your unix $PATH and make sure it is executable. Somewhere like $HOME/bin is a good choice but you might need to set that up on your machine first (all this depends on your OS).

Then you should be able to execute justin version to run the command and get its built-in version number. This should be what you expect from looking at the website. Sometimes the version in cvmfs might lag behind because nothing has changed in the command script between justIN versions.

Next do justin time to contact the central justIN service and ask for the time in UTC. The first time you do this, you will be prompted to visit a URL on the justIN website. Go there and follow the instructions to log in with your Fermilab SSO account. justin creates a session file for you in /var/tmp and has called ahead to the central service with details of that session, which you authorize by folling that URL and logging in.

With this done, you can follow some of the simple commands in the justIN DUNE tutorial which do not need cvmfs. For example:

justin simple-workflow --monte-carlo 10 --jobscript-id testpro:hello-world

will launch a test workflow, running a hello world jobscript 10 times.

If you are regularly using the justin command as a standalone script, you should check for new versions periodically, especially if things stop working as expected. Look for the version on the justIN dashboard page footers, the output of justin version, and what's in GitHub or cvmfs.

justIN time: 2024-09-29 03:27:36 UTC       justIN version: 01.01.08