Part 4 : Un autre exemple simple



L'exemple complet est disponible dans le fichier ExempleSimple.tar.gz.

Commençons par un petit test :

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#! /bin/sh

echo "HT-condor testprog01"
echo "I'm process id $$ on" `hostname`
echo "This is sent to standard error" 1>&2

date

echo "Running as binary $0" "$@"
echo "My name (argument 1) is $1"
echo "My sleep duration (argument 2) is $2"
sleep $2
echo "Sleep of $2 seconds finished.  Exiting"

exit 0


Ce script permet de récuprer des informations simples, comme le nom de la machine sur laquelle tourne notre job et quelques arguments passés à notre script lors de son exécution.

Ce script doit être exécutable :

chmod a+x testprog01.sh


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
executable=testprog01.sh
# ne pas effacer la ligne suivante
universe=vanilla
arguments=Example.$(Cluster).$(Process) 100
output=results.output.$(Process)
error=results.error.$(Process)
log=results.log

# Pour recevoir un e-mail de notification
#notification=never
notification=complete
notify_user=pierre.aubert@lapp.in2p3.fr

# Pour transmettre l'environnement au job
getenv = True
#  Pour transmettre certaines variable d'environnement au job
#environment = one=1;two=2;three="quotes have no 'special' meaning"

should_transfer_files=IF_NEEDED
#may also be IF_NEEDED
when_to_transfer_output = ON_EXIT
# ces 2 lignes peuvent être contradictoires (dixit condor_submit error : ERROR: WhenToTransferOutput specified as "ON_EXIT" yet ShouldTransferFiles defined as "NO". Please remove this contradiction from your submit file and try again.


#CPU/RAM/DISK requirement
#default request_cpus value : 1
# request_cpus = 4
#default request_memory value : 1Go/CPU 
# request_memory = 1024
#default request_diskvalue : 0, il utilise le minimum possible) espace LOCAL au noeud
# request_disk = 10240

#can specify queue NUMBER where number is the number of jobs to be launched in parallel
queue 1