Asistente de instalación wizard.py

Este programa se encarga de asistir a la usuaria a generar el archivo env.yaml que contiene las configuraciones generales del proyecto. El archivo mencionado es necesario para que el proyecto funcione correctamente.

Configuraciones

Un archivo env.yaml típico para el proyecto y generado por el asistente de configuración se verá de la siguiente manera:

Archivo de configuración

API:
  limit_results:
    anon: 10
    user: 100
  num_proxies: 0
  throttles:
    burst_anon: 20/hour
    burst_user: 50/hour
    sustain_anon: 50/day
    sustain_user: 200/day
COLABS:
  - Hari Seldon
  - Salvon Hardin
  - Hober Mallow
  - Bayta Darrell
  - Arkady Darrell
DEBUG: 'True'
KEYBOARD:
  - a
  - b
  - c
  - d
GOOGLE_ANALYTICS: 'UA-XXXXXXXXX-X'
INDEX: index-name
L1: "Español"
L2: "Galactico"
NAME: ENCICLOPEDIA GALACTICA
ORG_NAME: FUNDACION
COLORS:
  background:
    btnhover: '#69c9be'
    button: '#06a594'
    footer: '#ffffff'
    form: '#fdecb2'
    highlight: '#fdecb2'
    nav: '#fbda65'
  border:
    button: '#06a594'
    input: '#06a594'
  text:
    bold: '#06a594'
    btnhover: '#fbda65'
    button: '#ffffff'
    footer: '#000000'
    form: '#000000'
    highlight: '#048476'
    hoverlinks: '#69c9be'
    links: '#06a594'
    nav: '#06a594'
    navactive: '#048476'
    navhover: '#69c9be'
    result: '#000000'
SECRET_KEY: '"<llave-secreta-autogenerada>"'
LINKS:
    social:
      site: https://example.com/
      blog: https://example.com/blog/
      email: mail@example.com
      facebook: https://www.facebook.com/fundacion/
      twitter: https://twitter.com/fundacion/
      github: https://github.com/fundacion/
    corpora:
        axolotl: "https://www.axolotl-corpus.mx/search"
        kolo: "https://kolo.elotl.mx/"
        job: "https://job.elotl.mx/"
URL: http://elasticsearch-ip:9600/
META_DESC: Corpus paralelo del Español al Galactico.

Advertencia

La variable llamada DEBUG está establecida por defecto en True dado que es mas conveniente. Pero, las recomendaciones de seguridad de django sugieren el modo DEBUG en False para un entorno de producción.

Sin embargo, con el modo DEBUG en False el servidor web de django no está habilitado, por lo que, los archivos estáticos (js, css, imagenes, entre otros) no se cargarán. Para ello se deberá configurar un servidor web externo como nginx , apache u otro.

El valor de la variable DEBUG en True es para un entorno de desarrollo. En este entorno se habilitará el servidor web de django. Además, si hubiese un error se mostraran, en el navegador, un detallado traceback que incluye muchos metadatos del entorno.

Recomendamos ampliamente leer la documentación sobre esta variable

Funciones del script

wizard.api_limits(config)

Establece valores de limites para la API

Se añaden límites para el consumo de la API incluyendo número de request por hora y día, resultados máximos devueltos para una consulta y el número de proxies en el server.

Parámetros

config – Diccionario con la configuración

Type

dict

Devuelve

Configuraciones con los límites de la API

Tipo del valor devuelto

dict

wizard.create_index(config)

Crea un índice de Elasticsearch con la configuración por defecto

wizard.create_user_scheme(base_dir)
wizard.set_colors(config)

Escribe los colores del proyecto

Escribe en el diccionario de configuraciones el color primario, secundario, color de los textos y color de contraste de los textos

Parámetros

config – Diccionario con la configuración

Type

dict

Devuelve

Diccionario de configuraciones con los colores del proyecto

Tipo del valor devuelto

dict

wizard.set_project_info(config)

Escribe información general del proyecto

Escribe en el diccionario de configuraciones el nombre de la organización, nombre del proyecto la primera y segunda lengua del corpus paralelo

Parámetros

config – Diccionario con la configuración

Type

dict

Devuelve

Diccionario de configuraciones con información del proyecto

Tipo del valor devuelto

dict

wizard.set_services(config)

Escribe información de los servivios

Escribe en el diccionario de configuraciones el nombre del índice y la url (ip y puerto) del servidor elasticsearch. Opcionalmente el token de Google Analytics.

Parámetros

config – Diccionario con la configuración

Type

dict

Devuelve

Diccionario de configuraciones con información del de los servicios

Tipo del valor devuelto

dict

wizard.set_url(protocol='http', ip='localhost', port='9200')

Contruye una URL válida para el archivo de configuración

Dado el protocolo, la ip y el puerto contruye una URL válida para el archivo de configuración. Si las variables no fueron dadas por la usuaria utiliza la URL por defecto http://localhost:9200/

Parámetros
  • protocol – Protocolo que debe ser HTTP o HTTPS

  • ip – Nombre o ip del server de Elasticsearch

  • port – Puerto del server Elasticsearch

Type

str

Type

str

Type

str

Devuelve

URL válida para el proyecto

Tipo del valor devuelto

str