Uploaded image for project: 'Pegasus'
  1. Pegasus
  2. PM-934

changed how environment is set for jobs submitted via HTCondor Glite / Blahp layer


    • Type: Icon: Improvement Improvement
    • Resolution: Fixed
    • Priority: Icon: Major Major
    • master, 4.6.0, 4.5.1
    • Affects Version/s: master, 4.5.0
    • Component/s: Pegasus Planner
    • None

      we usually set user environment for glite jobs using +remote_cerequriments classad using the MYENV key

      e.g. +remote_cerequirements = "PASSENV==1 && WALLTIME==600 && PRIORITY==50 && MYENV==\"PEGASUSHOME=/auto/rcf-40/vahi/SOFTWARE/pegasus/pegasus-4.4.0cvs,KEY0=VALUE 0,KEY1=VALUE1\""

      However, per Franciesco the Blahp developer the right way is as follows
      The purpose is setting environment variables for the running job ?

      Unless there is something special affecting that variable in this context, you should be able to do that by just setting +remote_environment, which uses the same syntax of the condor_submit 'environment' attribute, namely:

      +remote_environment = "PEGASUSHOME=/auto/rcf-40/vahi/SOFTWARE/pegasus/pegasus-4.4.0cvs KEY0='VALUE 0' KEY1=VALUE1A"

      (the older 'env' syntax is also supported, but I suppose that will go
      away eventually). Is this working for you/doing what you expect ?

      The code handling remote_cerequirements was built around the syntax of
      a computing resource attribute schema used within WLCG and currently handles just one level of nested quotes and removes all single quotes. This should be taken into account in the 'local_submit_attributes' script
      that I suppose is handling the 'MYENV' variable (Derek: where can I look at it) ? I understand that the local_submit_attributes script is
      serving many purposes nowadays and we should generalise it a bit,
      but the job environment is a first class citizen, so I'd first explore
      the specific attribute.

      Francesco P.

            vahi Karan Vahi
            vahi Karan Vahi
            2 Start watching this issue