| 55 | Le fichier de description des jobs (JDL) utilise 1 langage particulier pour décrire les attributs et besoins du job. Ces informations sont utilisés par le WMS pour sélectionner le CE approprié à l'exécution du job et par le CE pour lancer l'application de l'utilisateur. |
| 56 | |
| 57 | Le format de ce fichier est un ensemble de définition attribut/valeur, en utilisant le format suivant : |
| 58 | {{{ |
| 59 | Attribut: Valeur; |
| 60 | }}} |
| 61 | |
| 62 | ''Note: `Attribut` n'est pas case sensitive. Certaines valeurs le sont, par exemple des noms de fichiers.'' |
| 63 | |
| 64 | Les principaux attributs sont: |
| 65 | * `Executable` (obligatoire) : définit la commande à exécuter. S'il s'agit d'un shell script, le shell utilisé par le script (indiqué dans la ligne `#!`) doit exister dans le worker node. |
| 66 | * `Argument` (facultatif) : une chaine de caractère passée comme argument de la commande, en utilisant la syntaxe attendue par la commande. |
| 67 | * `InputSandbox` (facultatif) : liste des fichiers locaux à transférer avec le job. |
| 68 | * `OutputSandbox` (obligatoire) : liste des fichiers produits par le job et devant être retournés par la commande `glite-wms-job-output`. Il doit y avoir au moins `stdout` et `stderr`. |
| 69 | |
| 70 | |
| 71 | __Exercices__ : |
| 72 | |
56 | | * la ligne `Executable` doit être `HelloWorldScript.sh`, |
57 | | * la ligne `Argument` peut rester avec `Hello World`, |
58 | | * vous devez de plus définir le paramètre `InputSandbox`. Tous les fichiers listés dans `InputSandbox` sont transfèrés avec le job. La syntaxe de cette ligne est : |
59 | | * `{{{InputSandbox = `HelloWorldScript.sh`; }}}` Si vous soumettez plusieurs jobs avec les mêmes fichiersd'entrée, une nouvelle copie de chaque fichier est créée. Exécutez le job et vérifiez que tout fonctionne.On peut utiliser n'importe quel script, cependant le shell utilisé par le script (indiqué dans la ligne `#!`) doit exister dans le `Worker Node`. |
| 74 | * la ligne `Executable` doit être `HelloWorldScript.sh` |
| 75 | * la ligne `Argument` peut rester avec `Hello World` |
| 76 | * Il faut définir le paramètre `InputSandbox`. Tous les fichiers listés dans `InputSandbox` sont transfèrés avec le job. Quand on soumet plusieurs jobs avec les mêmes fichiers d'entrée, une nouvelle copie des fichiers est créée pour chaque job. La syntaxe de cette ligne est : |
| 77 | {{{InputSandbox = 'HelloWorldScript.sh'; |
| 78 | }}} |