From db8fd8a8d82e39f67f5a4610785e17d56f46ec8f Mon Sep 17 00:00:00 2001 From: Alexander Ortiz Date: Thu, 24 Jul 2014 11:13:51 -0600 Subject: [PATCH] =?UTF-8?q?=C3=9Altimo=20env=C3=ADo=20para=20la=20versi?= =?UTF-8?q?=C3=B3n=20actual?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- mailbox.py | 38 ++++++++++++++++++++++++++++++++++++++ usuarios.py | 49 +++++++++++++++++++++++++++++++++++++++++++++++++ verifica_cos.py | 10 ++++++++++ 3 files changed, 97 insertions(+) create mode 100644 mailbox.py create mode 100644 usuarios.py create mode 100644 verifica_cos.py diff --git a/mailbox.py b/mailbox.py new file mode 100644 index 0000000..0f0c030 --- /dev/null +++ b/mailbox.py @@ -0,0 +1,38 @@ +#!/usr/bin/python +# encoding: utf-8 +# vim: tabstop=4 : shiftwidth=4 : expandtab + +from threading import Semaphore +from modulos.backupeador import backupeador +from modulos.listado import listar, borrar_usuarios, borrador +from modulos.utilidades import situar_directorio, titulador + + +if __name__ == "__main__": + # Creo el directorio donde guardo los ficheros de prueba + situar_directorio("mailbox") + #Procedimientos para modelar datos con + # métodos de modelado.py + # Procedimientos para obtener datos con + # métodos de listado.py + listador = listar() + # Se obtiene la lista de dominios + titulador("Obtenemos la lista de dominios") + listador.obtener_dominio() + # Se obtiene la lista de usuarios por cada dominio + titulador("Obtenemos la lista de usuarios por cada dominio") + listador.obtener_listado() + dir = backupeador() + dir.directorio_remoto() + semaforo = Semaphore(28) + titulador("Obtenemos el buzón de cada usuario") + for dom in listador.dominios: + # Limpiamos el arreglo de usuarios + usuarios = [x.rstrip() for x in listador.usuarios[dom] if len(x) > 0] + borrar_usuarios(usuarios, dom) + borrador(usuarios) + for usuario in usuarios: + # Ejecutado el procedimiento + vaca = backupeador(semaforo) + vaca.usuario = usuario + vaca.start() diff --git a/usuarios.py b/usuarios.py new file mode 100644 index 0000000..cb2e4ac --- /dev/null +++ b/usuarios.py @@ -0,0 +1,49 @@ +#!/usr/bin/python +# encoding: utf-8 +# vim: tabstop=4 : shiftwidth=4 : expandtab + +from modulos.listado import listar, obtener, borrar_usuarios, borrador +from modulos.utilidades import titulador, situar_directorio +from threading import Semaphore +import json +import os +import sys +import time + +if __name__ == "__main__": + if not len(sys.argv) > 1: + print "Hace falta el directorio cos-{fecha} como parametro" + sys.exit(1) + dir_cos = sys.argv[1] + cos_file = "/"+ dir_cos.rstrip("/") + "/cos.id" + try: + with open(cos_file) as json_file: + cosId = json.load(json_file) + except IOError as e: + print "A: " + str(e) + sys.exit(1) + # Creo el directorio donde guardo los ficheros + situar_directorio("usuarios") + #Procedimientos para modelar datos con + # métodos de modelado.py + # Procedimientos para obtener datos con + # métodos de listado.py + listador = listar() + # Se obtiene la lista de dominios + titulador("Obtenemos la lista de dominios") + listador.obtener_dominio() + # Se obtiene la lista de usuarios por cada dominio + titulador("Obtenemos la lista de usuarios por cada dominio") + listador.obtener_listado() + # Limpiamos el arreglo de dominio + dominios = [x.rstrip("\n") for x in listador.dominios] + semaforo = Semaphore(35) + for dom in dominios: + # Limpiamos el arreglo de usuarios + usuarios = [x.rstrip() for x in listador.usuarios[dom]] + borrar_usuarios(usuarios, dom) + borrador(usuarios) + for usuario in usuarios: + # Ejecutado el procedimiento + saqueador = obtener(semaforo, usuario, dom, cosId) + saqueador.start() diff --git a/verifica_cos.py b/verifica_cos.py new file mode 100644 index 0000000..cb5c316 --- /dev/null +++ b/verifica_cos.py @@ -0,0 +1,10 @@ +import json +def coidi(fichero): + with open(fichero) as json_file: + cos = json.load(json_file) + for j,i in cos.iteritems(): + print(j + "\t" + i + " \t" + fichero) + +lista = ("/opt/backup/cos-17-07-14-122430/cos.id", "/opt/backup/cos-17-07-14-142805/cos.id", "/opt/backup/cos-17-07-14-151739/cos.id", "/opt/backup/cos-17-07-14-154942/cos.id", "/opt/backup/cos-17-07-14-133733/cos.id", "/opt/backup/cos-17-07-14-151618/cos.id", "/opt/backup/cos-17-07-14-151929/cos.id", "/opt/backup/cos-17-07-14-160912/cos.id", "/opt/backup/cos-17-07-14-161246/cos.id", "/opt/backup/cos-17-07-14-161405/cos.id") +for fichero in lista: + coidi(fichero)