Changeset a45d852 in observatorio


Ignore:
Timestamp:
Jul 31, 2014, 11:06:04 AM (10 years ago)
Author:
Ing. Roldan Vargas <rvargas@…>
Branches:
master
Children:
24668a6, 31dccab
Parents:
30a7707
Message:

Se agrega menú de opciones de instalación y función que permite verificar la existencia previa de módulos instalados en el sistema

File:
1 edited

Legend:

Unmodified
Added
Removed
  • procesos/install.py

    r93d134b ra45d852  
    373373
    374374
     375def check_dependencias():
     376    """!
     377    Función que permite comprobar la existencia de los módulos requeridos por el sistema
     378
     379    @author Ing. Roldan D. Vargas G. rvargas@cenditel.gob.ve
     380    @author Centro Nacional de Desarrollo e Investigación en Tecnologías Libres (CENDITEL) Nodo Mérida
     381    @copyright <a href='http://www.gnu.org/licenses/gpl-2.0.html'>GNU Public License versión 2 (GPLv2)</a>
     382    @date 31-07-2014
     383    @version 1.0.1
     384    """
     385    try:
     386        import importlib
     387    except ImportError:
     388        print "No se puede verificar las dependencias."
     389
     390    msg_deps = "El módulo %s no se encuentra instalado. Seleccione la opción de instalar dependencias."
     391    deps = {
     392        "django": "django", "django_databrowse": "django-databrowse", "libxml2": "libxml2-python",
     393        "mimeparse": "mimeparse", "Image": "Imaging", "dateutil": "python-dateutil", "pyxslt": "pyxslt",
     394        "Captcha": "PyCAPTCHA", "psycopg2": "psycopg2", "tastypie": "django-tastypie", "pygraphviz": "pygraphviz"
     395    }
     396    for d in deps:
     397        try:
     398            importlib.import_module(d)
     399        except ImportError:
     400            print msg_deps % deps[d]
     401            sys.exit(1)
     402
     403
     404def install_menu():
     405    """!
     406    Función que permite mostrar un menú de opciones para la instalación de requerimientos y/o Base de Datos
     407    necesarios para el correcto funcionamiento del Observatorio del Sistema Productivo Venezolano
     408
     409    @author Ing. Roldan D. Vargas G. rvargas@cenditel.gob.ve
     410    @author Centro Nacional de Desarrollo e Investigación en Tecnologías Libres (CENDITEL) Nodo Mérida
     411    @copyright <a href='http://www.gnu.org/licenses/gpl-2.0.html'>GNU Public License versión 2 (GPLv2)</a>
     412    @date 31-07-2014
     413    @version 1.0.1
     414    """
     415    from time import sleep
     416    opcion = "1"
     417
     418    while opcion != "4":
     419        borrar_pantalla()
     420        print color_print('normal', "Green")
     421        print "====================================================="
     422        print "|               MENU DE INSTALACION                 |"
     423        print "====================================================="
     424        print "|                                                   |"
     425        print "| (1) Instalar requerimientos                       |"
     426        print "| (2) Instalar Base de Datos                        |"
     427        print "| (3) Comprobar requerimientos                      |"
     428        print "| (4) Salir                                         |"
     429        print "|                                                   |"
     430        print "====================================================="
     431
     432        opcion = raw_input("Seleccione una opcion: ")
     433
     434        if opcion == "1":
     435            install_dependencias()
     436        elif opcion == "2":
     437            install_database()
     438        elif opcion == "3":
     439            check_dependencias()
     440        elif opcion == "4":
     441            print "\n\nUsted ha salido del menú de instalación\n\n"
     442            sleep(2.5)
     443        else:
     444            print "La opción indicada no es válida"
     445    print color_print('reset')
     446    borrar_pantalla()
     447    sys.exit(1)
     448
     449
    375450if __name__ == '__main__':
     451    ## Condición que ejecuta el script de instalación del Observatorio siempre y cuando el mismo sea ejecutado desde
     452    # la consola de comandos
    376453    borrar_pantalla()
    377     check_sudo()
    378     install_dependencias()
    379     install_database()
     454    install_menu()
Note: See TracChangeset for help on using the changeset viewer.