1CONDOR_RUN(1) HTCondor Manual CONDOR_RUN(1)
2
3
4
6 condor_run - HTCondor Manual
7
8 Submit a shell command-line as an HTCondor job
9
10
12 condor_run [-u universe] [-a submitcmd] "shell command"
13
15 condor_run bundles a shell command line into an HTCondor job and sub‐
16 mits the job. The condor_run command waits for the HTCondor job to com‐
17 plete, writes the job's output to the terminal, and exits with the exit
18 status of the HTCondor job. No output appears until the job completes.
19
20 Enclose the shell command line in double quote marks, so it may be
21 passed to condor_run without modification. condor_run will not read in‐
22 put from the terminal while the job executes. If the shell command line
23 requires input, redirect the input from a file, as illustrated by the
24 example
25
26 $ condor_run "myprog < input.data"
27
28 condor_run jobs rely on a shared file system for access to any neces‐
29 sary input files. The current working directory of the job must be ac‐
30 cessible to the machine within the HTCondor pool where the job runs.
31
32 Specialized environment variables may be used to specify requirements
33 for the machine where the job may run.
34
35 CONDOR_ARCH
36 Specifies the architecture of the required platform. Values
37 will be the same as the Arch machine ClassAd attribute.
38
39 CONDOR_OPSYS
40 Specifies the operating system of the required platform. Val‐
41 ues will be the same as the OpSys machine ClassAd attribute.
42
43 CONDOR_REQUIREMENTS
44 Specifies any additional requirements for the HTCondor job.
45 It is recommended that the value defined for CONDOR_REQUIRE‐
46 MENTS be enclosed in parenthesis.
47
48 When one or more of these environment variables is specified, the job
49 is submitted with:
50
51 Requirements = $CONDOR_REQUIREMENTS && Arch == $CONDOR_ARCH && OpSys == $CONDOR_OPSYS
52
53 Without these environment variables, the job receives the default re‐
54 quirements expression, which requests a machine of the same platform as
55 the machine on which condor_run is executed.
56
57 All environment variables set when condor_run is executed will be in‐
58 cluded in the environment of the HTCondor job.
59
60 condor_run removes the HTCondor job from the queue and deletes its tem‐
61 porary files, if condor_run is killed before the HTCondor job com‐
62 pletes.
63
65 -u universe
66 Submit the job under the specified universe. The default is
67 vanilla. While any universe may be specified, only the
68 vanilla, scheduler, and local universes result in a submit
69 description file that may work properly.
70
71 -a submitcmd
72 Add the specified submit command to the implied submit de‐
73 scription file for the job. To include spaces within sub‐
74 mitcmd, enclose the submit command in double quote marks.
75 And, to include double quote marks within submitcmd, enclose
76 the submit command in single quote marks.
77
79 condor_run may be used to compile an executable on a different plat‐
80 form. As an example, first set the environment variables for the re‐
81 quired platform:
82
83 $ export CONDOR_ARCH="SUN4u"
84 $ export CONDOR_OPSYS="SOLARIS28"
85
86 Then, use condor_run to submit the compilation as in the following two
87 examples.
88
89 $ condor_run "f77 -O -o myprog myprog.f"
90
91 or
92
93 $ condor_run "make"
94
96 condor_run creates the following temporary files in the user's working
97 directory. The placeholder <pid> is replaced by the process id of con‐
98 dor_run.
99
100 .condor_run.<pid>
101 A shell script containing the shell command line.
102
103 .condor_submit.<pid>
104 The submit description file for the job.
105
106 .condor_log.<pid>
107 The HTCondor job's log file; it is monitored by condor_run, to
108 determine when the job exits.
109
110 .condor_out.<pid>
111 The output of the HTCondor job before it is output to the termi‐
112 nal.
113
114 .condor_error.<pid>
115 Any error messages for the HTCondor job before they are output
116 to the terminal.
117
118 condor_run removes these files when the job completes. However, if con‐
119 dor_run fails, it is possible that these files will remain in the
120 user's working directory, and the HTCondor job may remain in the queue.
121
123 condor_run is intended for submitting simple shell command lines to HT‐
124 Condor. It does not provide the full functionality of condor_submit.
125 Therefore, some condor_submit errors and system failures may not be
126 handled correctly.
127
128 All processes specified within the single shell command line will be
129 executed on the single machine matched with the job. HTCondor will not
130 distribute multiple processes of a command line pipe across multiple
131 machines.
132
133 condor_run will use the shell specified in the SHELL
134 environment variable, if one exists. Otherwise, it will use /bin/sh
135 to execute the shell command-line.
136
137 By default, condor_run expects Perl to be installed in /usr/bin/perl.
138 If Perl is installed in another path, ask the Condor administrator to
139 edit the path in the condor_run script, or explicitly call Perl from
140 the command line:
141
142 $ perl path-to-condor/bin/condor_run "shell-cmd"
143
145 condor_run exits with a status value of 0 (zero) upon complete success.
146 The exit status of condor_run will be non-zero upon failure. The exit
147 status in the case of a single error due to a system call will be the
148 error number (errno) of the failed call.
149
151 HTCondor Team
152
154 1990-2023, Center for High Throughput Computing, Computer Sciences De‐
155 partment, University of Wisconsin-Madison, Madison, WI, US. Licensed
156 under the Apache License, Version 2.0.
157
158
159
160
161 Oct 02, 2023 CONDOR_RUN(1)