def __listar_usuarios_dominio (self, dominio): ''' Obtiene un listado de usuarios para dominio dado mediante el comando zimbra zmprov -l gaa, y limpia de aquellos usuarios del sistema cuyo backup es innecesario ''' comando = ['zmprov', '-l', 'gaa', dominio] contenido = ejecutar_comando(comando) listado = [usuario for usuario in contenido if not self.__verfica_usuarios_sistema(usuario)] return listado
def listar_dominios (self): ''' Obtiene todos los dominios que se hayan configurado en el servidor ''' comando = [ 'zmprov', 'gad' ] self.contenido = ejecutar_comando(comando) self.dominios = self.contenido self.nombre_fichero = 'dominios.lst' return self
def listar_cos (self): ''' Obtiene todos los COS configurados en el servidor ''' comando = ['zmprov','-v','gac'] self.contenido = ejecutar_comando(comando) self.cos = self.contenido self.nombre_fichero = 'cos.lst' return self
def obtener_datos (self, user, dominio): ''' Usara modelador para para obtener los datos del usuarios obtenido, y después lo guarda ''' # Sacas el contenido a una variable # usas el guardar_fichero en run comando = ['zmprov', '-l', 'ga', user] salida = ejecutar_comando(comando) guardar(dominio + ".data", salida) # Para esto usamos la clase modelado modelo = modelador(salida, self.cosId) modelo.moldear() # Modelados los datos, almacenamos fisicamente los atributos 'modelo.comando', modelo.volcado', 'modelo.cosid' # que contiene los comandos para crear/modificar a los usuarios en el nuevo servidor guardar(dominio + ".cmd", modelo.comando, "l") guardar(dominio + ".ldif", modelo.volcado, "l") guardar(dominio + ".cos", modelo.cosid, "z")
#!/usr/bin/env python3 # coding=utf-8 import os, sys NUM_SUBDIRECTORIOS_ANTERIORES=1 SEPARADOR=os.sep RUTA_PAQUETE_BD="Verano" + SEPARADOR DIRECTORIO= RUTA_PAQUETE_BD + SEPARADOR + "db_nombramientos" BD_RESULTADO=".."+SEPARADOR+"docencia.db" #aqui = os.path.dirname(os.path.abspath(__file__)) sys.path.insert(0, DIRECTORIO) import utilidades utilidades.ejecutar_comando("echo", "\"drop table nombramientos;\"", "| sqlite3 ",BD_RESULTADO ) utilidades.ejecutar_comando("echo", "\"drop table especialidades;\"", "| sqlite3 ",BD_RESULTADO ) utilidades.sacar_tabla_de_una_bd_a_otra ( "especialidades", "nombramientos.db", BD_RESULTADO) utilidades.sacar_tabla_de_una_bd_a_otra ( "nombramientos", "nombramientos.db", BD_RESULTADO)
#!/usr/bin/env python3 # coding=utf-8 import platform import os, sys NUM_SUBDIRECTORIOS_ANTERIORES=1 SEPARADOR=os.sep RUTA_PAQUETE_BD="Verano" + SEPARADOR DIRECTORIO= RUTA_PAQUETE_BD + SEPARADOR + "db_nombramientos" BD_RESULTADO=".."+SEPARADOR+"docencia.db" #aqui = os.path.dirname(os.path.abspath(__file__)) sys.path.insert(0, DIRECTORIO) import utilidades if platform.system()=="Linux": utilidades.ejecutar_comando("echo", "\"drop table gaseosa;\"", "| sqlite3 ",BD_RESULTADO ) else: utilidades.ejecutar_comando("echo", "drop table gaseosa;", "| sqlite3 ",BD_RESULTADO ) utilidades.ejecutar_comando( "utilidades_gaseosa"+SEPARADOR+"insertar_bd.py", ".."+SEPARADOR+"toshiba.txt", BD_RESULTADO, "gaseosa", "correspondencia_especialidades.csv")