Changes between Version 4 and Version 5 of Version2/Desarrollo/Engine
- Timestamp:
- Sep 25, 2011, 2:58:42 PM (14 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
Version2/Desarrollo/Engine
v4 v5 1 = OGR=2 ''ogr'' ó''OpenGnSys Runner'' es un comando que se ha desarrollado para la versión 2 para facilitar el uso del engine. Se basa en ejecutar comandos que se encuentre en el directorio que marque la variable global $OG_ENGINE_DIR. Si la variable no estuviera seteada se usará por defecto el valor: '/opt/opengnsys/engine/'. La herramienta ogr facilita la creación de scripts facilitando algunas tareas repetitivas:1 = ogr = 2 ''ogr'' u ''OpenGnSys Runner'' es un comando que se ha desarrollado para la versión 2 para facilitar el uso del engine. Se basa en ejecutar comandos que se encuentre en el directorio que marque la variable global $OG_ENGINE_DIR. Si la variable no estuviera seteada se usará por defecto el valor: '/opt/opengnsys/engine/'. La herramienta ogr facilita la creación de scripts facilitando algunas tareas repetitivas: 3 3 * La ayuda: ogr es capaz de leer la documentación de los scripts y mostrarla. 4 4 * Errores: cuando un script termina con un valor de retorno distinto de 0, busca en la documentación y muestra la excepción que ha ocurrido. 5 * Mensajes de completitud: Los scripts pueden enviar a la salida de errores mensajes sobre el porcentaje de trabajo que se lleva realizado y ogr se encará de hacerlos llegar a quien corresponda.5 * Mensajes de completitud: los scripts pueden informar sobre el estado del trabajo que están realizando y ogr se encargará de transportar la información. 6 6 7 7 Para ello se ha creado la libreria ogr (libogr.py) que también puede ser usado por los scripts que necesiten funciones más avanzada de ogr como la ejecución de otros scripts. … … 17 17 = Engine = 18 18 19 El engine se encarga de todas las tareas a bajo nivel de OpenGnSys. Las operaciones van desde saber que IP tiene el cliente, como crear particiones, crear imágenes, arrancar una partición, etc. E n el directorio del Engine se encontrarán los distintos directorios, al que vamos a llamar módulos a partir de ahora, que tiene el engine:19 El engine se encarga de todas las tareas a bajo nivel de OpenGnSys. Las operaciones van desde saber que IP tiene el cliente, como crear particiones, crear imágenes, arrancar una partición, etc. Existirán varios engines, uno por cada sistema operativo donde puede ejecutarse el JobExecuter, de esta manera Opengnsys podrá controlar remotamente los cliente una vez hayan arrancado los clientes. Tiene especial importancia OGLive porque es donde están los scripts que realizan las operaciones de disco. 20 20 21 * net: Scripts para redes.22 * proto: Scripts de protocolos.23 * rellenar todos los que falten.24 * util: Aquí encontramos todos los scripts propios de está herramienta que facilitarán el uso del engine:25 * help: muestra la ayuda de un script.26 * list: muestra todos los comandos disponibles del módulo pasado como argumento.27 * list-modules: muestra la lista de módulos.28 * what-module: muestra el módulo al que pertence un script.29 * where-is: muestra la ruta completa hasta un script.30 * web: Aquí encontramos todos los scripts que se usan desde la interfaz web para manejar los clientes y por tanto tienen que trabajar en json.31 21 32 22 = Requisitos para el Engine = 33 23 34 Los scripts que componen el engine deben cumplir una serie de requisitos para que funcionen de manera correcta con la herramienta OGR.24 Los scripts que componen el engine deben cumplir una serie de requisitos para que funcionen de manera correcta con la herramienta ogr. 35 25 36 26 == Lenguajes == 37 27 38 En principio no habría restricciones para el lenguaje que se use para hacer los scripts. La restricción entraría en la instalación dentro del cliente OGLive que habría que agregar.28 En principio no habría restricciones para el lenguaje que se use para hacer los scripts. La condición es que se encuentren instalados en el sistema operativo donde se vaya ejecutar el script. 39 29 40 30 == Documentación == … … 63 53 == Excepciones == 64 54 65 Cuando algo no fue como se esperaba hay que devolver un número mayor que 0. OGR considerará que el número con el que termino el script corresponderá a la posición que ocupa la excepción dentro de la documentación del script. Por ejemplo si en el ejemplo anterior el script acabará con un 1, OGRmostrará la excepción ARG_REQUIRED, si terminará con un 2, ogr mostrará la excepción MODULE_NOTFOUND.55 Cuando algo no fue como se esperaba hay que devolver un número mayor que 0. ogr considerará que el número con el que termino el script corresponderá a la posición que ocupa la excepción dentro de la documentación del script. Por ejemplo si en el ejemplo anterior el script acabará con un 1, ogr mostrará la excepción ARG_REQUIRED, si terminará con un 2, ogr mostrará la excepción MODULE_NOTFOUND. 66 56 67 57 == Salida ==