Skip to content
Snippets Groups Projects
Commit 4352140f authored by Moe Jette's avatar Moe Jette
Browse files

Add test for sbatch env vars.

parent efbdf1a6
No related branches found
No related tags found
No related merge requests found
...@@ -417,8 +417,8 @@ test17.21 Tests #SLURM entry functionality in a batch script ...@@ -417,8 +417,8 @@ test17.21 Tests #SLURM entry functionality in a batch script
test17.22 Test of running non-existant job, confirm timely termination. test17.22 Test of running non-existant job, confirm timely termination.
test17.23 Test of nice value specification (--nice option). test17.23 Test of nice value specification (--nice option).
test17.24 Test of --partition and --verbose options. test17.24 Test of --partition and --verbose options.
test17.TBD Verify that SLURM directed environment variables are processed: test17.25 Verify environment variables controlling sbatch are processed:
SBATCH_NNODES, etc. SBATCH_ACCOUNT, SBATCH_DEBUG and SBATCH_TIMELIMIT
**NOTE** The following tests attempt to utilize multiple CPUs or partitions, **NOTE** The following tests attempt to utilize multiple CPUs or partitions,
The test will print "WARNING" and terminate with an exit code of The test will print "WARNING" and terminate with an exit code of
zero if the cluster configuration does not permit proper testing. zero if the cluster configuration does not permit proper testing.
......
#!/usr/bin/expect
############################################################################
# Purpose: Test of SLURM functionality
# Verify environment variables controlling sbatch are processed:
# SBATCH_ACCOUNT, SBATCH_DEBUG and SBATCH_TIMELIMIT
#
# Output: "TEST: #.#" followed by "SUCCESS" if test was successful, OR
# "FAILURE: ..." otherwise with an explanation of the failure, OR
# anything else indicates a failure mode that must be investigated.
############################################################################
# Copyright (C) 2002-2006 The Regents of the University of California.
# Produced at Lawrence Livermore National Laboratory (cf, DISCLAIMER).
# Written by Morris Jette <jette1@llnl.gov>
# UCRL-CODE-217948.
#
# This file is part of SLURM, a resource management program.
# For details, see <http://www.llnl.gov/linux/slurm/>.
#
# SLURM is free software; you can redistribute it and/or modify it under
# the terms of the GNU General Public License as published by the Free
# Software Foundation; either version 2 of the License, or (at your option)
# any later version.
#
# SLURM is distributed in the hope that it will be useful, but WITHOUT ANY
# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
# FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
# details.
#
# You should have received a copy of the GNU General Public License along
# with SLURM; if not, write to the Free Software Foundation, Inc.,
# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
############################################################################
source ./globals
set test_id "17.25"
set exit_code 0
set file_in "test$test_id.input"
set job_id 0
set timeout $max_job_delay
print_header $test_id
#
# Set target environment variables
#
global env
set env(SBATCH_ACCOUNT) "dummy_acct"
set env(SBATCH_DEBUG) 4
set env(SBATCH_TIMELIMIT) 3
#
# Build input script file
#
make_bash_script $file_in "
$bin_id
"
#
# Spawn a job via slaunch using these environment variables
#
set matches 0
spawn $sbatch -N1 --output=none $file_in
expect {
-re "verbose *: 4" {
incr matches
exp_continue
}
-re "time_limit *: 3" {
incr matches
exp_continue
}
-re "account *: dummy_acct" {
incr matches
exp_continue
}
-re "Submitted batch job ($number)" {
set job_id $expect_out(1,string)
exp_continue
}
timeout {
send_user "\nFAILURE: sbatch not responding\n"
set exit_code 1
}
eof {
wait
}
}
if {$job_id == 0} {
send_user "\nFAILURE: did not get job_id\n"
exit 1
}
if {$matches != 3} {
send_user "\nFAILURE: processed $matches of 3 environment variables\n"
set exit_code 1
}
if {$exit_code == 0} {
exec $bin_rm -f $file_in
send_user "\nSUCCESS\n"
}
exit $exit_code
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment