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 && \
52 OpSys == $CONDOR_OPSYS
53
54 Without these environment variables, the job receives the default re‐
55 quirements expression, which requests a machine of the same platform as
56 the machine on which condor_run is executed.
57
58 All environment variables set when condor_run is executed will be in‐
59 cluded in the environment of the HTCondor job.
60
61 condor_run removes the HTCondor job from the queue and deletes its tem‐
62 porary files, if condor_run is killed before the HTCondor job com‐
63 pletes.
64
66 -u universe
67 Submit the job under the specified universe. The default is
68 vanilla. While any universe may be specified, only the
69 vanilla, standard, scheduler, and local universes result in a
70 submit description file that may work properly.
71
72 -a submitcmd
73 Add the specified submit command to the implied submit de‐
74 scription file for the job. To include spaces within sub‐
75 mitcmd, enclose the submit command in double quote marks.
76 And, to include double quote marks within submitcmd, enclose
77 the submit command in single quote marks.
78
80 condor_run may be used to compile an executable on a different plat‐
81 form. As an example, first set the environment variables for the re‐
82 quired platform:
83
84 % setenv CONDOR_ARCH "SUN4u"
85 % setenv CONDOR_OPSYS "SOLARIS28"
86
87 Then, use condor_run to submit the compilation as in the following
88 three examples.
89
90 % condor_run "f77 -O -o myprog myprog.f"
91
92 or
93
94 % condor_run "make"
95
96 or
97
98 % condor_run "condor_compile cc -o myprog.condor myprog.c"
99
101 condor_run creates the following temporary files in the user's working
102 directory. The placeholder <pid> is replaced by the process id of con‐
103 dor_run.
104
105 .condor_run.<pid>
106 A shell script containing the shell command line.
107
108 .condor_submit.<pid>
109 The submit description file for the job.
110
111 .condor_log.<pid>
112 The HTCondor job's log file; it is monitored by condor_run, to
113 determine when the job exits.
114
115 .condor_out.<pid>
116 The output of the HTCondor job before it is output to the termi‐
117 nal.
118
119 .condor_error.<pid>
120 Any error messages for the HTCondor job before they are output
121 to the terminal.
122
123 condor_run removes these files when the job completes. However, if con‐
124 dor_run fails, it is possible that these files will remain in the
125 user's working directory, and the HTCondor job may remain in the queue.
126
128 condor_run is intended for submitting simple shell command lines to HT‐
129 Condor. It does not provide the full functionality of condor_submit.
130 Therefore, some condor_submit errors and system failures may not be
131 handled correctly.
132
133 All processes specified within the single shell command line will be
134 executed on the single machine matched with the job. HTCondor will not
135 distribute multiple processes of a command line pipe across multiple
136 machines.
137
138 condor_run will use the shell specified in the SHELL
139 environment variable, if one exists. Otherwise, it will use /bin/sh
140 to execute the shell command-line.
141
142 By default, condor_run expects Perl to be installed in /usr/bin/perl.
143 If Perl is installed in another path, ask the Condor administrator to
144 edit the path in the condor_run script, or explicitly call Perl from
145 the command line:
146
147 % perl path-to-condor/bin/condor_run "shell-cmd"
148
150 condor_run exits with a status value of 0 (zero) upon complete success.
151 The exit status of condor_run will be non-zero upon failure. The exit
152 status in the case of a single error due to a system call will be the
153 error number (errno) of the failed call.
154
156 HTCondor Team
157
159 1990-2022, Center for High Throughput Computing, Computer Sciences De‐
160 partment, University of Wisconsin-Madison, Madison, WI, US. Licensed
161 under the Apache License, Version 2.0.
162
163
164
165
1668.8 Jan 19, 2022 CONDOR_RUN(1)