summaryrefslogtreecommitdiffstats
path: root/repoman/bin/deletepreimage
blob: faeb8e583a5a6952c716fb6886bf149a422bf7a7 (plain)
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
35
36
37
38
39
40
41
42
43
44
#!/bin/bash
# Eliminar las imágenees del repositiro seg�raca de la consola web.
#Version 0.3   Ejecución desde cron cada minuto.
#echo "* * * * *   root   /opt/opengnsys/bin/image-delete" > /etc/cron.d/imagedelete
# Version 1.1.0 - Llamar a script "checkrepo".

# Comprobar si el proceso ya está en ejecución.
PROG=$(basename $0)
[ "$(pgrep "$PROG")" != "$$" ] && exit

# Variables.
OPENGNSYS=${OPENGNSYS:-"/opt/opengnsys"}
PATH=$PATH:$OPENGNSYS/bin
OGIMG="$OPENGNSYS/images"
REPOCFG="$OPENGNSYS/etc/ogAdmRepo.cfg"
LOGFILE="$OPENGNSYS/log/$PROG.log"

# Error si no está bien configurado el repositorio de imágenes.
[ -d $OGIMG -a -f $REPOCFG ] || exit 1

# Procesar ficheros de imágenes.
trap 'echo "`date` : Proceso interrumpido" >> $LOGFILE; exit ' 1 2 3 6 9 15

shopt -s nullglob
TODELETE=( $OPENGNSYS/www/tmp/*.delete )

for IMG in ${TODELETE[@]##*/}; do
	# Obtenemos el nombre de la imagen
	DELETEIMAGE="${IMG%%.*}"
	## Si la imagen es un backup se añade la extensión ant
	[ "${IMG##*.}" == "ant" ] && DELETEIMAGE+=".ant"

	## si directorio:imagen cambiamos : por /
	DELETEIMAGE=$(echo $DELETEIMAGE|tr : /)

        ## se llama al escript de borrado de imagen.
	deleteimage $DELETEIMAGE
done

# Eliminar marcas de borrado.
rm -f ${TODELETE[@]}
# Actualizar información del repositorio.
checkrepo