TODO Faire une page identique pour la gestion sous Window
Nous supposons ici que tous les prérequis sont remplis et que le répertoire de base du projet est /usr/local/helpdesk.
Voir : XXX prérequis
[root@server helpdesk]# ls -al total 96 -rwxr-xr-x 1 root root 78 2008-06-16 12:37 env.sh (version courante) drwxr-xr-x 2 root root 69632 2008-05-21 12:22 files (fichiers attachés) -rwxr-xr-x 1 root root 567 2008-03-28 10:16 helpdesk-cron.sh (script d'appel des tâches asynchrones) -rwxr-xr-x 1 root root 292 2008-03-28 10:16 helpdesk.sh (script d'appel des tâches synchrones) drwxr-xr-x 2 root root 4096 2008-06-18 11:50 index (indexation) drwxr-xr-x 2 root root 4096 2008-06-17 06:08 log (traces d'exécution) drwxr-xr-x 19 root root 4096 2008-06-16 12:38 src (sources des distributions)
Scripts d'administration
Le fichier env.sh contient la version courante :
#/bin/bash . /etc/profile.d/java.sh export ESUP_HELPDESK_VERSION=3.0.1
Le script helpdesk.sh sert à l'appel des tâches synchrones (start, stop, deploy, ...) :
#!/bin/bash . /usr/local/helpdesk/env.sh echo Esup-Portail Helpdesk $ESUP_HELPDESK_VERSION, running ant task $1 pushd /usr/local/helpdesk/src/esup-helpdesk-quick-start-$ESUP_HELPDESK_VERSION > /dev/null ant $1 popd > /dev/null
Le script helpdesk peut être installé dans le répertoire /etc/init.d pour le démarrage automatique de l'application au boot de la machine :
#!/bin/bash # # helpdesk Startup script for ESUP-Portail helpdesk # # chkconfig: - 99 01 # description: esup-helpdesk is the helpdesk application \ # provided by consortium ESUP-Portail. # Source function library. . /etc/rc.d/init.d/functions prog=/usr/local/helpdesk/helpdesk.sh start() { echo -n $"Starting $prog: " $prog start & } stop() { echo -n $"Stopping $prog: " $prog stop } status() { echo `ps aux | grep java | grep -v grep | wc -l` Java processes found. } # See how we were called. case "$1" in start) start ;; stop) stop ;; status) status ;; restart) stop start ;; *) echo $"Usage: $prog {start|stop|restart|status}" exit 1 esac
L'appel de tâches asynchrones est nécessaire pour :
- la mise à jour des index
- l'expiration des tickets fermés mais non approuvés par les utilisateurs
- l'archivage des tickets fermés
- le rappel automatique des tickets reportés
Cette page propose une méthode de mise en place des appels asynchrones.
Sous Unix
Le script helpdesk-cron.sh sert à l'appel des tâches asynchrones (update-index, archive-tickets, recall-tickets, ...) :
#!/bin/bash . /usr/local/helpdesk/env.sh [ -z "$1" ] && { exit 1; } export LOG_FILE=/usr/local/helpdesk/log/$1.log echo ----------------------------------------------- >> $LOG_FILE date >> $LOG_FILE echo Esup-Portail Helpdesk $ESUP_HELPDESK_VERSION, running ant task $1 >> $LOG_FILE pushd /usr/local/helpdesk/src/esup-helpdesk-quick-start-$ESUP_HELPDESK_VERSION > /dev/null ant $1 >> $LOG_FILE popd > /dev/null
Les appels des tâches asynchrones sont réalisés grâce à l'insertion des lignes suivantes dans le fichier /etc/crontab :
00,05,10,15,20,25,30,35,40,45,50,55 * * * * root /usr/local/helpdesk/helpdesk-cron.sh update-index 02 * * * * root /usr/local/helpdesk/helpdesk-cron.sh expire-tickets 03 * * * * root /usr/local/helpdesk/helpdesk-cron.sh archive-tickets 01 0 * * * root /usr/local/helpdesk/helpdesk-cron.sh recall-tickets
Sous Windows
TODO A compléter.