Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ build-backend = "setuptools.build_meta"

[project]
name = "rda_python_miscs"
version = "1.0.6"
version = "1.0.7"
authors = [
{ name="Zaihua Ji", email="[email protected]" },
]
Expand Down
16 changes: 8 additions & 8 deletions src/rda_python_miscs/bashqsub.py
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@
'o' : None, # will set to default if not provided
'e' : None,
'A' : "P43713000",
'q' : "rda@casper-pbs",
'q' : "gdex@casper-pbs",
# 'm' : 'a',
'm' : 'n',
}
Expand All @@ -50,9 +50,9 @@
def main():

aname = 'bashqsub'
pname = 'rdaqsub'
pname = 'gdexqsub'
PgLOG.set_help_path(__file__)
rdasub = PgLOG.BCHCMDS['PBS']
gdexsub = PgLOG.BCHCMDS['PBS']
coptions = {'cmd' : None, 'cwd' : None, 'env' : None, 'mod' : None, 'res' : 'default'} # customized options
copts = '|'.join(coptions)
option = None
Expand All @@ -61,7 +61,7 @@ def main():
if not argv: PgLOG.show_usage(aname)
PgLOG.PGLOG['LOGFILE'] = pname + ".log"
PgLOG.cmdlog("{} {}".format(aname, ' '.join(argv)))
if not PgLOG.valid_command(rdasub): PgLOG.pglog("{}: miss {} command to submit batch job".format(rdasub, PgLOG.PGLOG['PBSNAME']), PgLOG.LGWNEX)
if not PgLOG.valid_command(gdexsub): PgLOG.pglog("{}: miss {} command to submit batch job".format(gdexsub, PgLOG.PGLOG['PBSNAME']), PgLOG.LGWNEX)

while argv:
arg = argv.pop(0)
Expand All @@ -80,7 +80,7 @@ def main():
if option == "env": option = 'v'
continue

if not option: PgLOG.pglog("{}: Value passed in without leading option for {}".format(arg, rdasub), PgLOG.LGEREX)
if not option: PgLOG.pglog("{}: Value passed in without leading option for {}".format(arg, gdexsub), PgLOG.LGEREX)
if arg.find(' ') > -1 and not re.match(r'^[\'\"].*[\'\"]$', arg): # quote string with space but not quoted yet
if arg.find("'") > -1:
arg = '"{}"'.format(arg)
Expand Down Expand Up @@ -111,18 +111,18 @@ def main():
if not cmd: PgLOG.pglog(coptions['cmd'] + ": Cannot find given command to run", PgLOG.LGWNEX)
if args: cmd += " " + args

sbuf = build_bash_script(cmd, coptions, rdasub)
sbuf = build_bash_script(cmd, coptions, gdexsub)
PgLOG.pglog(sbuf, PgLOG.MSGLOG)
PgLOG.PGLOG['ERR2STD'] = ['bind mouting']
PgLOG.pgsystem(rdasub, PgLOG.LOGWRN, 6, sbuf)
PgLOG.pgsystem(gdexsub, PgLOG.LOGWRN, 6, sbuf)
PgLOG.PGLOG['ERR2STD'] = []

sys.exit(0)

#
# build bash script to submit a PBS batch job
#
def build_bash_script(cmd, coptions, rdasub):
def build_bash_script(cmd, coptions, gdexsub):

buf = "#!/usr/bin/bash\n\n" # qsub starting bash script

Expand Down
22 changes: 11 additions & 11 deletions src/rda_python_miscs/bashqsub.usg
Original file line number Diff line number Diff line change
@@ -1,17 +1,17 @@

To submit a job execution as a batch job in bash script on a PBS node via 'qsub'.

Usage: rdaqsub [qsub-options] [-cwd WorkDir] [-env EnvironmentPairs] \
[-mod Modules] [-res Reservation] -cmd Command [cmd-options]
Usage: bashqsub [qsub-options] [-cwd WorkDir] [-env EnvironmentPairs] \
[-mod Modules] [-res Reservation] -cmd Command [cmd-options]

- qsub-options, accepts options that can be passed to 'qsub' in a bash script.
Check qsub man page for help on the PBS batch options. Here is the list of
qsub options that are included at default:
-o LOGPATH/rdaqsub/
-e LOGPATH/rdaqsub/
-o LOGPATH/gdexqsub/
-e LOGPATH/gdexqsub/
-A P43713000
-m a
-q regular
-q gdex
-l walltime=6:00:00,select=1:node=1:mem=1gb

- Option -cwd, set the working directory for the Command to be executed. If
Expand All @@ -33,10 +33,10 @@
A bash script example:
#!/usr/bin/bash

#PBS -o /gpfs/u/home/rdadata/dssdb/log/rdaqsub/
#PBS -e /gpfs/u/home/rdadata/dssdb/log/rdaqsub/
#PBS -o /gpfs/u/home/gdexdata/dssdb/log/gdexqsub/
#PBS -e /gpfs/u/home/gdexdata/dssdb/log/gdexqsub/
#PBS -A P43713000
#PBS -q rda@casper-pbs
#PBS -q gdex@casper-pbs
#PBS -m n
#PBS -N dsrqst
#PBS -l walltime=1:00:00
Expand All @@ -56,9 +56,9 @@ module load conda
module load grib-util
module load wgrib2

conda activate /glade/work/rdadata/conda-envs/pg-casper
conda activate /glade/work/gdexdata/conda-envs/pg-casper

echo /gpfs/u/home/rdadata/bin/dsrqst d277000 PR -RI 750748 -b -d
/gpfs/u/home/rdadata/bin/dsrqst d277000 PR -RI 750748 -b -d
echo /glade/work/gdexdata/conda-envs/pg-casper/bin/dsrqst d277000 PR -RI 750748 -b -d
/glade/work/gdexdata/conda-envs/pg-casper/bin/dsrqst d277000 PR -RI 750748 -b -d

date
16 changes: 8 additions & 8 deletions src/rda_python_miscs/tcshqsub.py
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@
'o' : None, # will set to default if not provided
'e' : None,
'A' : "P43713000",
'q' : "rda@casper-pbs",
'q' : "gdex@casper-pbs",
# 'm' : 'a',
'm' : 'n',
}
Expand All @@ -50,9 +50,9 @@
def main():

aname = 'tcshqsub'
pname = 'rdaqsub'
pname = 'gdexqsub'
PgLOG.set_help_path(__file__)
rdasub = PgLOG.BCHCMDS['PBS']
gdexsub = PgLOG.BCHCMDS['PBS']
coptions = {'cmd' : None, 'cwd' : None, 'env' : None, 'mod' : None, 'res' : 'default'} # customized options
copts = '|'.join(coptions)
option = None
Expand All @@ -61,7 +61,7 @@ def main():
if not argv: PgLOG.show_usage(aname)
PgLOG.PGLOG['LOGFILE'] = pname + ".log"
PgLOG.cmdlog("{} {}".format(aname, ' '.join(argv)))
if not PgLOG.valid_command(rdasub): PgLOG.pglog("{}: miss {} command to submit batch job".format(rdasub, PgLOG.PGLOG['PBSNAME']), PgLOG.LGWNEX)
if not PgLOG.valid_command(gdexsub): PgLOG.pglog("{}: miss {} command to submit batch job".format(gdexsub, PgLOG.PGLOG['PBSNAME']), PgLOG.LGWNEX)

while argv:
arg = argv.pop(0)
Expand All @@ -80,7 +80,7 @@ def main():
if option == "env": option = 'v'
continue

if not option: PgLOG.pglog("{}: Value passed in without leading option for {}".format(arg, rdasub), PgLOG.LGEREX)
if not option: PgLOG.pglog("{}: Value passed in without leading option for {}".format(arg, gdexsub), PgLOG.LGEREX)
if arg.find(' ') > -1 and not re.match(r'^[\'\"].*[\'\"]$', arg): # quote string with space but not quoted yet
if arg.find("'") > -1:
arg = '"{}"'.format(arg)
Expand Down Expand Up @@ -111,18 +111,18 @@ def main():
if not cmd: PgLOG.pglog(coptions['cmd'] + ": Cannot find given command to run", PgLOG.LGWNEX)
if args: cmd += " " + args

sbuf = build_tcsh_script(cmd, coptions, rdasub)
sbuf = build_tcsh_script(cmd, coptions, gdexsub)
PgLOG.pglog(sbuf, PgLOG.MSGLOG)
PgLOG.PGLOG['ERR2STD'] = ['bind mouting']
PgLOG.pgsystem(rdasub, PgLOG.LOGWRN, 6, sbuf)
PgLOG.pgsystem(gdexsub, PgLOG.LOGWRN, 6, sbuf)
PgLOG.PGLOG['ERR2STD'] = []

sys.exit(0)

#
# build tcsh script to submit a PBS batch job
#
def build_tcsh_script(cmd, coptions, rdasub):
def build_tcsh_script(cmd, coptions, gdexsub):

buf = "#!/bin/tcsh\n\n" # sbatch starting tcsh script

Expand Down
26 changes: 13 additions & 13 deletions src/rda_python_miscs/tcshqsub.usg
Original file line number Diff line number Diff line change
@@ -1,17 +1,17 @@

To submit a job execution as a batch job in tcsh script on a PBS node via 'qsub'.

Usage: rdaqsub [qsub-options] [-cwd WorkDir] [-env EnvironmentPairs] \
[-mod Modules] [-res Reservation] -cmd Command [cmd-options]
Usage: tcshqsub [qsub-options] [-cwd WorkDir] [-env EnvironmentPairs] \
[-mod Modules] [-res Reservation] -cmd Command [cmd-options]

- qsub-options, accepts options that can be passed to 'qsub' in a tcsh script.
Check qsub man page for help on the PBS batch options. Here is the list of
qsub options that are included at default:
-o LOGPATH/rdaqsub/
-e LOGPATH/rdaqsub/
-o LOGPATH/gdexqsub/
-e LOGPATH/gdexqsub/
-A P43713000
-m a
-q regular
-q gdex
-l walltime=6:00:00,select=1:node=1:mem=1gb

- Option -cwd, set the working directory for the Command to be executed. If
Expand All @@ -33,17 +33,17 @@
A tash script example:
#!/bin/tcsh

#PBS -o /gpfs/u/home/rdadata/dssdb/log/rdaqsub/
#PBS -e /gpfs/u/home/rdadata/dssdb/log/rdaqsub/
#PBS -o /gpfs/u/home/gdexdata/dssdb/log/gdexqsub/
#PBS -e /gpfs/u/home/gdexdata/dssdb/log/gdexqsub/
#PBS -A P43713000
#PBS -q rda@casper-pbs
#PBS -q gdex@casper-pbs
#PBS -m a
#PBS -N dsrqst
#PBS -l walltime=12:00:00
#PBS -l select=1:mem=20gb
setenv HOME /gpfs/u/home/davestep
source /etc/profile.d/z00_modules.tsh
source /glade/u/apps/opt/conda/etc/profile.d/conda.tsh
source /etc/profile.d/z00_modules.csh
source /glade/u/apps/opt/conda/etc/profile.d/conda.csh
source /gpfs/u/home/davestep/.tcshrc
pwd; hostname; date

Expand All @@ -56,7 +56,7 @@ module load conda
module load grib-util
module load wgrib2

conda activate /glade/work/rdadata/conda-envs/pg-casper
conda activate /glade/work/gdexdata/conda-envs/pg-casper

echo /gpfs/u/home/rdadata/bin/dsrqst d628000 SP -RI 729708 -NP -b -d
/gpfs/u/home/rdadata/bin/dsrqst d628000 SP -RI 729708 -NP -b -d
echo /glade/work/gdexdata/conda-envs/pg-casper/bin/dsrqst d628000 SP -RI 729708 -NP -b -d
/glade/work/gdexdata/conda-envs/pg-casper/bin/dsrqst d628000 SP -RI 729708 -NP -b -d