mandriva

Codes d'erreur de diffusion dans Pulse 2

Nicolas Rueff

$Id$

Revision History
Revision 1.2.42009-08-28NR

Rien de neuf

Revision 1.2.32009-07-22NR

Première version

Abstract

Les codes d'erreur utilisés en déploiement d'application via Pulse 2.


1. Introduction

À partir de la version 1.2.3, les plages de codes d'erreur ont été rationalisées pour réduire le risque de collision entre les codes d'erreur utilisés par les scripts et les codes d'erreur utilisés de manière interne par Pulse 2.

Prenons l'exemple d'un script "foobar" lançant une simple commande sur la cible:

  • en cas de succès, la valeur renvoyée est 0,

  • en cas d'échec, la valeur renvoyée est 137.

pre-1.2.3, Pulse 2 utilisait également le code d'erreur 137 pour savoir qu'un script avait été terminé par SIGTERM, généralement quand il dépassait le temps imparti.

Dans notre exemple, si Pulse 2 reçoit ce code de sortie de 137, il n'est pas capable de savoir si c'était dû à une erreur de script, ou si c'était dû à l'arrêt du script.

De plus, pre-1.2.3, la plage de codes d'erreur utilisée par la fonctionnalité de "pré-check" de Pulse 2 n'était pas établie.

2. Les plages de code d'erreur, version courte

Utilisez 0 pour signaler un succès.

Utilisez une valeur dans l'intervalle 1-199 pour signaler un échec.

N'utilisez pas la plage 200-255.

3. Les plages de code d'erreur, version longue

3.1. Succès

Pour des raisons disons "historiques", le code d'erreur 0 est uniquement utilisé pour représenter un succès. Ne l'utilisez pas pour représenter un échec !

0

Succès du script.

3.2. Échec

La plage 1 à 199 est librement utilisable par les auteurs de scripts pour représenter un échec arrivant dans le script. Ne l'utilisez pas pour représenter un succès !

1 à 199

Échec du script, code de retour utilisable librement par l'auteur du script.

3.3. Signal

La plage 200 à 231 est utilisée en interne pour représenter le fait que le script s'est terminé à cause de la réception d'un signal. Ne l'utilisez pas !

200

Le script a été tué par un signal supérieur à 31 (SIGSYS), probablement un signal RT.

201

Le script a été tué par un signal 1 (SIGHUP).

202

Le script a été tué par un signal 2 (SIGINT).

203

Le script a été tué par un signal 3 (SIGQUIT).

204

Le script a été tué par un signal 4 (SIGILL).

205

Le script a été tué par un signal 5 (SIGTRAP).

206

Le script a été tué par un signal 6 (SIGABRT).

208

Le script a été tué par un signal 8 (SIGFPE).

209

Le script a été tué par un signal 9 (SIGKILL).

211

Le script a été tué par un signal 11 (SIGSEGV).

212

Le script a été tué par un signal 12 (SIGHUP).

213

Le script a été tué par un signal 13 (SIGPIPE).

214

Le script a été tué par un signal 14 (SIGALRM).

215

Le script a été tué par un signal 15 (SIGTERM).

207, 210, 216-231

Le script a été tué par un signal <code-d-erreur> moins 200 .

3.4. Réservé

La plage 232 à 239 est réservée pour usage interne futur. Ne l'utilisez pas !

3.5. Pré-check

La plage 240 à 254 indique une erreur de pré-check. Ne l'utilisez pas !

240

Quelque chose d'inattendu s'est produit durant le pré-check.

241

Le pré-check a échoué.

242-254

Réservé pour utilisation future.

3.6. Échec de connexion

Pour des raisons disons "historiques", le code d'erreur 255 est utilisé pour indiquer une erreur de connexion. Ne l'utilisez pas !