JobSub Client

This wiki page covers jobsub version 1.2.8

To see information about the currently installed jobsub server version see

Client Commands

Jobsub client commands have an option, --jobsub-server, that can be use to talk to different Jobsub servers. Unless you are using default production servers, you need to specify the address to talk to alternate Jobsub servers. Currently, following servers are deployed in the Fermilab.

Server Type Server Address
Production Server (default)
Integration Test Bed Server
Development Server

Obtaining and Setting up the client

Refer to the "Obtaining the Client" page for info on how to get access to/setup the JobSub client commands.

Environment Variables Supported by Client Commands

Client commands support few environment variables as an alternative to command line options.

Variable Client Versions Default for Client Options Example
JOBSUB_SERVER v1.0+ --jobsub-server Dev: JOBSUB_SERVER=""
JOBSUB_GROUP v1.0+ --group JOBSUB_GROUP=minos

Other environment variables that affect Jobsub client authentication

Variable Client Versions Explanation
X509_USER_PROXY v0.1+ kx509, voms-proxy-init, or grid-proxy-init generated
default authentication method since v0.1
KRB5CCNAME v0.1+ users kerberos credential used for kx509
X509_USER_CERT v1.1+ use cert/key pair for service certs or for
X509_USER_KEY v1.1+ digicert or other non-kx509 generated certs

Order of env variable usage for authentication :
2. $X509_USER_CERT & $X509_USER_KEY
3. Default proxy location: /tmp/x509up_u<UID>
4. Kerberos ticket in $KRB5CCNAME. Convert it to proxy.

Client Command Return Codes

The jobsub client and server communicate via HTTP via a defined REST API. The server returns HTTP status codes to any queries, which the client commands will print out if the --debug option is set. An HTTP status code of 200 (OK) generally results in the client exiting with unix status 0. Most other HTTP return codes result in the cleint exiting with a non zero status, in keeping with unix/posix conventions. These zero/non-zero exit codes should be checked for success when using the commands in a script

Basic online help: jobsub

$ jobsub

jobsub has been replaced with a suite of client tools listed here:

jobsub_submit     -- submit a job    
jobsub_submit_dag -- submit a dag description of jobs

jobsub_status     -- list OSG sites that are available to submit jobs to  

jobsub_q          -- check status of jobs in queue (like condor_q)    

jobsub_hold       -- hold jobs in queue   
jobsub_release    -- release held jobs   
jobsub_rm         -- remove jobs from queue  

jobsub_fetchlog   -- retrieve job log files from jobsub_server
jobsub_history    -- check status of finished jobs (like conndor_history) 

all of these tools respond to the --help flag by listing their
input options along with explanations

for more  information see

Submitting a Job: jobsub_submit

Submitting a DAG: jobsub_submit_dag

Querying the Job Queue: jobsub_q

Querying Job History: jobsub_history

Retrieving job log and error files: jobsub_fetchlog

Removing a Job: jobsub_rm

Holding a Job: jobsub_hold

Releasing a Job: jobsub_release

Checking status of resources: jobsub_status