From fa98072ed1b6d30af6d93d04c953bacbe2eb6f90 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Mat=C3=ADas=20Sklar?= Date: Tue, 22 Jul 2003 18:43:17 +0000 Subject: [PATCH] - Se corrigen nombres de scripts para que anden con nuevas versiones de run-parts. - Se agrega un corrector de web020 en cargas_de_datos. - Se mejoran los mensajes para debug. - Se borra carga de firmantes. - Bugfixes. - Actualizacion de README. --- novedades/README | 9 ++ novedades/backup | 2 +- novedades/carga | 4 +- novedades/cargas/bal747f.mecon.ar/carga | 1 + .../{10.borrar.codep => 10-borrar_codep} | 0 .../{20.copiar.datos => 20-copiar_datos} | 0 .../scripts/{40.codep => 40-codep} | 0 .../scripts/{50.novedades => 50-novedades} | 0 .../{60.copiar.codep => 60-copiar_codep} | 0 novedades/cargas/intranet-db.mecon.ar/carga | 1 + .../{10.borrar.codep => 10-borrar_codep} | 0 .../{20.copiar.datos => 20-copiar_datos} | 0 .../scripts/{40.codep => 40-codep} | 0 .../scripts/{50.novedades => 50-novedades} | 0 .../{60.copiar.codep => 60-copiar_codep} | 0 .../{10.borrar.codep => 10-borrar_codep} | 0 .../{20.copiar.datos => 20-copiar_datos} | 0 .../scripts/{40.codep => 40-codep} | 0 .../scripts/{50.novedades => 50-novedades} | 0 .../{60.copiar.codep => 60-copiar_codep} | 0 novedades/cargas_de_datos/.web020.lnk | 1 - .../cargas_de_datos/.webfun.firmantes.lnk | 1 - .../{web019.parciales => web019-parciales} | 0 novedades/cargas_de_datos/web020 | 91 +++++++++++++++++++ .../{webfer.feriados => webfer-feriados} | 0 novedades/cargas_de_datos/webgen.estado | 31 ------- novedades/copia | 4 +- novedades/run-sql-data-parts | 4 +- novedades/run-sql-parts | 2 +- 29 files changed, 110 insertions(+), 41 deletions(-) rename novedades/cargas/bal747f.mecon.ar/scripts/{10.borrar.codep => 10-borrar_codep} (100%) rename novedades/cargas/bal747f.mecon.ar/scripts/{20.copiar.datos => 20-copiar_datos} (100%) rename novedades/cargas/bal747f.mecon.ar/scripts/{40.codep => 40-codep} (100%) rename novedades/cargas/bal747f.mecon.ar/scripts/{50.novedades => 50-novedades} (100%) rename novedades/cargas/bal747f.mecon.ar/scripts/{60.copiar.codep => 60-copiar_codep} (100%) rename novedades/cargas/intranet-db.mecon.ar/scripts/{10.borrar.codep => 10-borrar_codep} (100%) rename novedades/cargas/intranet-db.mecon.ar/scripts/{20.copiar.datos => 20-copiar_datos} (100%) rename novedades/cargas/intranet-db.mecon.ar/scripts/{40.codep => 40-codep} (100%) rename novedades/cargas/intranet-db.mecon.ar/scripts/{50.novedades => 50-novedades} (100%) rename novedades/cargas/intranet-db.mecon.ar/scripts/{60.copiar.codep => 60-copiar_codep} (100%) rename novedades/cargas/intranet2.mecon.ar/scripts/{10.borrar.codep => 10-borrar_codep} (100%) rename novedades/cargas/intranet2.mecon.ar/scripts/{20.copiar.datos => 20-copiar_datos} (100%) rename novedades/cargas/intranet2.mecon.ar/scripts/{40.codep => 40-codep} (100%) rename novedades/cargas/intranet2.mecon.ar/scripts/{50.novedades => 50-novedades} (100%) rename novedades/cargas/intranet2.mecon.ar/scripts/{60.copiar.codep => 60-copiar_codep} (100%) delete mode 100644 novedades/cargas_de_datos/.web020.lnk delete mode 100644 novedades/cargas_de_datos/.webfun.firmantes.lnk rename novedades/cargas_de_datos/{web019.parciales => web019-parciales} (100%) create mode 100755 novedades/cargas_de_datos/web020 rename novedades/cargas_de_datos/{webfer.feriados => webfer-feriados} (100%) delete mode 100755 novedades/cargas_de_datos/webgen.estado diff --git a/novedades/README b/novedades/README index 10ecdb6..60f1f94 100644 --- a/novedades/README +++ b/novedades/README @@ -23,3 +23,12 @@ Directorio 'cargas': Directorio 'backups': Aquí se deja un backup comprimido de cada carga diaria (antes de procesar nada). + + +Para instalar: + Instalar el paquete php4-cgi. + Luego de hacer el checkout hacer make en el directorio novedades. + Esto genera los links simbólicos necesarios. + Es necesario tener acceso sin contraseña via ssh a los servidores de DB. + debianutils 2.5.2, run-parts 2.2 + diff --git a/novedades/backup b/novedades/backup index a9911a0..30aae43 100755 --- a/novedades/backup +++ b/novedades/backup @@ -13,7 +13,7 @@ targz="$dir"/`date +%Y%m%d`.tar.gz echo "Haciendo backup en $targz" files="" for f in `ls "$datos"`; do - nombre=`basename "$f" | awk -F\\. '{ print $1 }'` + nombre=`basename "$f" | awk -F- '{ print $1 }'` files="$files $nombre" done cd "$origen" diff --git a/novedades/carga b/novedades/carga index 5416a62..87f8b5c 100755 --- a/novedades/carga +++ b/novedades/carga @@ -24,8 +24,8 @@ echo >> "$log" echo "Comienza la carga de la base de datos" >> "$log" echo >> "$log" echo "Cargando y procesando archivos de datos..." >> "$log" -run-parts --verbose --arg="$origen" --arg="$datos" --arg="$home" \ - "$home/cargas_de_datos" >> "$log" 2>&1 +run-parts --lsbsysinit --verbose --arg="$origen" --arg="$datos" \ + --arg="$home" "$home/cargas_de_datos" >> "$log" 2>&1 echo "Procesando '$cargas'..." >> "$log" 2>&1 for dir in `ls "$cargas" | sort`; do echo "- Cargando '$dir'..." >> "$log" 2>&1 diff --git a/novedades/cargas/bal747f.mecon.ar/carga b/novedades/cargas/bal747f.mecon.ar/carga index b42542f..bc05aff 100755 --- a/novedades/cargas/bal747f.mecon.ar/carga +++ b/novedades/cargas/bal747f.mecon.ar/carga @@ -15,6 +15,7 @@ db="novedades" # Script. /bin/run-parts \ + --lsbsysinit \ --verbose \ --arg="$host" \ --arg="$user" \ diff --git a/novedades/cargas/bal747f.mecon.ar/scripts/10.borrar.codep b/novedades/cargas/bal747f.mecon.ar/scripts/10-borrar_codep similarity index 100% rename from novedades/cargas/bal747f.mecon.ar/scripts/10.borrar.codep rename to novedades/cargas/bal747f.mecon.ar/scripts/10-borrar_codep diff --git a/novedades/cargas/bal747f.mecon.ar/scripts/20.copiar.datos b/novedades/cargas/bal747f.mecon.ar/scripts/20-copiar_datos similarity index 100% rename from novedades/cargas/bal747f.mecon.ar/scripts/20.copiar.datos rename to novedades/cargas/bal747f.mecon.ar/scripts/20-copiar_datos diff --git a/novedades/cargas/bal747f.mecon.ar/scripts/40.codep b/novedades/cargas/bal747f.mecon.ar/scripts/40-codep similarity index 100% rename from novedades/cargas/bal747f.mecon.ar/scripts/40.codep rename to novedades/cargas/bal747f.mecon.ar/scripts/40-codep diff --git a/novedades/cargas/bal747f.mecon.ar/scripts/50.novedades b/novedades/cargas/bal747f.mecon.ar/scripts/50-novedades similarity index 100% rename from novedades/cargas/bal747f.mecon.ar/scripts/50.novedades rename to novedades/cargas/bal747f.mecon.ar/scripts/50-novedades diff --git a/novedades/cargas/bal747f.mecon.ar/scripts/60.copiar.codep b/novedades/cargas/bal747f.mecon.ar/scripts/60-copiar_codep similarity index 100% rename from novedades/cargas/bal747f.mecon.ar/scripts/60.copiar.codep rename to novedades/cargas/bal747f.mecon.ar/scripts/60-copiar_codep diff --git a/novedades/cargas/intranet-db.mecon.ar/carga b/novedades/cargas/intranet-db.mecon.ar/carga index 69e7bb5..69249a0 100755 --- a/novedades/cargas/intranet-db.mecon.ar/carga +++ b/novedades/cargas/intranet-db.mecon.ar/carga @@ -15,6 +15,7 @@ db="novedades" # Script. /bin/run-parts \ + --lsbsysinit \ --verbose \ --arg="$host" \ --arg="$user" \ diff --git a/novedades/cargas/intranet-db.mecon.ar/scripts/10.borrar.codep b/novedades/cargas/intranet-db.mecon.ar/scripts/10-borrar_codep similarity index 100% rename from novedades/cargas/intranet-db.mecon.ar/scripts/10.borrar.codep rename to novedades/cargas/intranet-db.mecon.ar/scripts/10-borrar_codep diff --git a/novedades/cargas/intranet-db.mecon.ar/scripts/20.copiar.datos b/novedades/cargas/intranet-db.mecon.ar/scripts/20-copiar_datos similarity index 100% rename from novedades/cargas/intranet-db.mecon.ar/scripts/20.copiar.datos rename to novedades/cargas/intranet-db.mecon.ar/scripts/20-copiar_datos diff --git a/novedades/cargas/intranet-db.mecon.ar/scripts/40.codep b/novedades/cargas/intranet-db.mecon.ar/scripts/40-codep similarity index 100% rename from novedades/cargas/intranet-db.mecon.ar/scripts/40.codep rename to novedades/cargas/intranet-db.mecon.ar/scripts/40-codep diff --git a/novedades/cargas/intranet-db.mecon.ar/scripts/50.novedades b/novedades/cargas/intranet-db.mecon.ar/scripts/50-novedades similarity index 100% rename from novedades/cargas/intranet-db.mecon.ar/scripts/50.novedades rename to novedades/cargas/intranet-db.mecon.ar/scripts/50-novedades diff --git a/novedades/cargas/intranet-db.mecon.ar/scripts/60.copiar.codep b/novedades/cargas/intranet-db.mecon.ar/scripts/60-copiar_codep similarity index 100% rename from novedades/cargas/intranet-db.mecon.ar/scripts/60.copiar.codep rename to novedades/cargas/intranet-db.mecon.ar/scripts/60-copiar_codep diff --git a/novedades/cargas/intranet2.mecon.ar/scripts/10.borrar.codep b/novedades/cargas/intranet2.mecon.ar/scripts/10-borrar_codep similarity index 100% rename from novedades/cargas/intranet2.mecon.ar/scripts/10.borrar.codep rename to novedades/cargas/intranet2.mecon.ar/scripts/10-borrar_codep diff --git a/novedades/cargas/intranet2.mecon.ar/scripts/20.copiar.datos b/novedades/cargas/intranet2.mecon.ar/scripts/20-copiar_datos similarity index 100% rename from novedades/cargas/intranet2.mecon.ar/scripts/20.copiar.datos rename to novedades/cargas/intranet2.mecon.ar/scripts/20-copiar_datos diff --git a/novedades/cargas/intranet2.mecon.ar/scripts/40.codep b/novedades/cargas/intranet2.mecon.ar/scripts/40-codep similarity index 100% rename from novedades/cargas/intranet2.mecon.ar/scripts/40.codep rename to novedades/cargas/intranet2.mecon.ar/scripts/40-codep diff --git a/novedades/cargas/intranet2.mecon.ar/scripts/50.novedades b/novedades/cargas/intranet2.mecon.ar/scripts/50-novedades similarity index 100% rename from novedades/cargas/intranet2.mecon.ar/scripts/50.novedades rename to novedades/cargas/intranet2.mecon.ar/scripts/50-novedades diff --git a/novedades/cargas/intranet2.mecon.ar/scripts/60.copiar.codep b/novedades/cargas/intranet2.mecon.ar/scripts/60-copiar_codep similarity index 100% rename from novedades/cargas/intranet2.mecon.ar/scripts/60.copiar.codep rename to novedades/cargas/intranet2.mecon.ar/scripts/60-copiar_codep diff --git a/novedades/cargas_de_datos/.web020.lnk b/novedades/cargas_de_datos/.web020.lnk deleted file mode 100644 index 2de063f..0000000 --- a/novedades/cargas_de_datos/.web020.lnk +++ /dev/null @@ -1 +0,0 @@ -../copia \ No newline at end of file diff --git a/novedades/cargas_de_datos/.webfun.firmantes.lnk b/novedades/cargas_de_datos/.webfun.firmantes.lnk deleted file mode 100644 index 2de063f..0000000 --- a/novedades/cargas_de_datos/.webfun.firmantes.lnk +++ /dev/null @@ -1 +0,0 @@ -../copia \ No newline at end of file diff --git a/novedades/cargas_de_datos/web019.parciales b/novedades/cargas_de_datos/web019-parciales similarity index 100% rename from novedades/cargas_de_datos/web019.parciales rename to novedades/cargas_de_datos/web019-parciales diff --git a/novedades/cargas_de_datos/web020 b/novedades/cargas_de_datos/web020 new file mode 100755 index 0000000..1fa07b5 --- /dev/null +++ b/novedades/cargas_de_datos/web020 @@ -0,0 +1,91 @@ +#!/usr/bin/perl -w + +use strict; + +# Recibo los parametros de la linea de comando e inicializo +# las variables generales + +if(!$ARGV[0] || !$ARGV[1]) +{ + print "No me pasaste los parametros adecuados\nuso\nweb020.pl origen destino"; + exit; +} + +my $origen=$ARGV[0]; +my $destino=$ARGV[1]; +my $arch_salida="$destino/web020"; +my $arch_entrada="$origen/web020"; +my $linea; +my @datos_linea_anterior; +my $contador; + +# Archivos de entrada y salida +open arch_ent, "<$arch_entrada"; +open arch_sal, ">$arch_salida"; + +# Leo el encabezado +$linea=; + +# Grabo el encabezado en el archivo de salida +print arch_sal $linea; + +my @linea_anterior=(0,0,'nada',0); +my @campos; + +# Leo la cantidad de lineas del archivo de entrada +my $aux; +$aux=`wc -l $arch_entrada`; +($aux)=$aux=~/\s(\d*)\s/; +# Bucle que recorre el archivo de entrada linea por linea +for ($contador = $aux ;$contador > 0 ; $contador --) +{ + $linea= unless ($contador == 1); + @campos=split(",",$linea); + + if( $linea_anterior[0] eq $campos[0] and + $linea_anterior[1] eq $campos[1] and + $linea_anterior[2] eq $campos[2] and + $linea_anterior[3] eq $campos[3]) + { + my $dias; + $dias=0; + foreach my $item (1..31) + { + if( $linea_anterior[3+$item] ne "00" or + $campos[3+$item] ne "00") + { + $campos[3+$item]="01"; + $dias++; + } + } + $campos[35]=$dias; + }else + { + if( $linea_anterior[0] and + $linea_anterior[1] and + $linea_anterior[2]) + { + print arch_sal $linea_anterior[$_]."," foreach (0..35); + print arch_sal "\n"; + }else + { + if($contador < $aux) + { + my $linea_archivo; + $linea_archivo = $aux - $contador + 1; + print "Error en la linea ".$linea_archivo.": "; + print $linea_anterior[$_]."," foreach (0..35); + print "\n"; + } + } + } + + @linea_anterior=@campos; +} + +print arch_sal $linea_anterior[$_]."," foreach (0..35); +print arch_sal "\n"; + +close arch_ent; +close arch_sal; + diff --git a/novedades/cargas_de_datos/webfer.feriados b/novedades/cargas_de_datos/webfer-feriados similarity index 100% rename from novedades/cargas_de_datos/webfer.feriados rename to novedades/cargas_de_datos/webfer-feriados diff --git a/novedades/cargas_de_datos/webgen.estado b/novedades/cargas_de_datos/webgen.estado deleted file mode 100755 index 656e25e..0000000 --- a/novedades/cargas_de_datos/webgen.estado +++ /dev/null @@ -1,31 +0,0 @@ -#!/usr/bin/php4 -qC - diff --git a/novedades/copia b/novedades/copia index e288802..2cf221b 100755 --- a/novedades/copia +++ b/novedades/copia @@ -12,8 +12,8 @@ destino="$2" libdir="$3" # Script. -nombre_orig=`basename "$0" | awk -F\\. '{ print $1 }'` -nombre_nuevo=`basename "$0" | awk -F\\. '{ print $2 }'` +nombre_orig=`basename "$0" | awk -F- '{ print $1 }'` +nombre_nuevo=`basename "$0" | awk -F- '{ print $2 }'` if [ -z "$nombre_orig" ]; then nombre_nuevo=`basename "$0"` fi diff --git a/novedades/run-sql-data-parts b/novedades/run-sql-data-parts index f342c50..9119f69 100755 --- a/novedades/run-sql-data-parts +++ b/novedades/run-sql-data-parts @@ -13,9 +13,9 @@ db="$4" home="$5" # Script. -echo "Procesando '$home'..." +echo "run-sql-data-parts: Procesando '$home'..." for file in `ls "$home"`; do - echo "- Cargando '$file'..." + echo " $host: Cargando '$file'..." cat <