Changes between Version 11 and Version 12 of Version2/Tutoriales/Consola_Web/Tutorial_4_Jobs
- Timestamp:
- May 3, 2011, 4:54:43 PM (13 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
Version2/Tutoriales/Consola_Web/Tutorial_4_Jobs
v11 v12 1 = Introducción = 1 = Tutorial 4: Envío de trabajos a los clientes = 2 == Introducción == 2 3 3 4 La arquitectura basada en plugins de Opengnsys permite añadir nuevas funcionalidades de forma modular y sencilla. La mayoría de estas funcionalidades no se limitan a realizar tareas en el Servidor, sino que implican comunicarse con los propios clientes de Opengnsys. Por ejemplo, un plugin sencillo podría permitir apagar o encender dichos clientes, y otro algo más complejo gestionar el particionado del disco duro. … … 7 8 El plugin que vamos a realizar aquí nos permitirá saber cuanto tiempo lleva encendida una máquina. Para ello crearemos una acción que se listará en el panel de acciones al mostrar un ordenador. Al hacer clic en la acción, crearemos un job que ejecutará el comando "uptime" en el cliente y mostrará una pantalla diciendo "Esperando respuesta..." en el cliente, y finalmente cuando se reciba una respuesta, se procesará y se mostrará el Uptime en pantalla. 8 9 9 = Creación de la acción=10 == Creación de la acción == 10 11 11 12 Lo primero que debemos hacer es crear el directorio '''plugins/uptime''', donde residirá el nuevo plugin. Ahí crearemos el fichero '''plugin.conf''' que declara información básica del plugin y de la acción antes mencionada: … … 38 39 }}} 39 40 40 = Creando la vista=41 == Creando la vista == 41 42 42 43 La vista asociada a la acción '''get_uptime''' será la encargada de crear el job, actualizar periódicamente la página mostrando el mensaje de "Esperando respuesta" hasta que el cliente responda, cuando la página dejará de ser recargada y mostrará el uptime, el fichero es '''view.py''': … … 106 107 }}} 107 108 108 = Creando el job=109 == Creando el job == 109 110 110 111 Nuestro job va a ser bien sencillo. Sólo necesitamos que envíe el comando "uptime" y que procese la salida de dicho comando. La salida es del tipo " 16:18:53 up 3:11, 1 user, load average: 0.92, 0.64, 0.50", pero queremos quedarnos con "3:11". El fichero de nuestro job es '''job.py'':