Skip to content

Gecoscc:actualizaciones

Alfonso E.M edited this page Feb 22, 2019 · 4 revisions

ACTUALIZACIONES ONLINE

Un usuario superadministrador puede enviar y ejecutar actualizaciones al Centro de Control GECOS

Estas actualizaciones son unos archivos comprimidos (ZIP) con una nomenclatura y estructura definidas.

Hay dos tipos de archivos de actualizaciones:

  • los que contienen actualizaciones acumulativas, que sólo se ejecutarán una vez
  • los que contienen cambios frecuentes, que podrán lanzarse en varias ocasiones

Nomenclatura

Se usará la siguiente nomenclatura para nombrar a un fichero de actualizaciones:

Para una actualización acumulativa:

update-NNNN.zip

siendo NNNN un número de 4 cifras (ajustado con ceros por la izquierda).

Por ejemplo:

update-0001.zip

update-0002.zip

La numeración será consecutiva y creciente. Esto significa que los updates numéricos deben ser siempre consecutivos. No se permite la carga del update-0002 ANTES que el update-0001.

Para una actualización repetitiva:

Para los scripts que puedan ser de aplicación repetida, que no guardan un orden respecto de otras actualizaciones, se sustituirá el número de versión por un nombre indicativo de su función:

update-XXXXXX.zip

Por ejemplo:

update-packages.zip

Contenido de un archivo de actualización

La estructura de directorios para un fichero de actualizaciones es así:

|_ control
|_ cookbook/
|  |_ gecos_ws_mgmt.zip
|_ scripts/
   |_ 00-backup 
    |_ 10-import_policies
    |_ 20-fixgroups
    |_ 99-rollback
  • Fichero "control": Contiene comentarios y restricciones de las versiones del Centro de Control y de cookbook que se deben cumplir para que se ejecute. A modo de ejemplo:
#es: Correcciones de incoherencias en la politica de grupos 
#en: Fixing incoherences in group policy`
gecoscc==2.2.0`
gecos_ws_mgmt>=1.5.0`
  • Directorio cookbook: Dentro de él se depositará un fichero ZIP con el cookbook (opcional).
  • Directorio scripts: Contiene los scripts a ejecutar en la actualización (opcionales).

Los scripts de actualización

El lenguaje de programación que se usará en los scripts será PYTHON y no aceptan argumentos

Los scripts se ejecutarán como el usuario de gecoscc, no como root.

Los scripts contenidos en el fichero de actualización se denominarán:

NN-nombre

siendo NN un número de dos cifras entre 00 y 99. Fuera de este rango, el Centro de Control ignorará estos scripts.

El Centro de Control ejecutará los scripts en orden de acuerdo con esta numeración.

Algunos números están reservados para funciones comunes específicas:

  • 00-backup: Backup de colecciones MONGODB y CHEF.
  • 24-upload_cookbook: Subida de cookbook con knife.
  • 25-import_policies: Importa las políticas definidas en el metadata.rb del cookbook a la colección "policies" de MONGODB
  • 99-rollback: rollback de los cambios realizados por los scripts y NO se ejecutará de manera automática, sino mediante un botón de "rollback/deshacer" en la interfaz del Centro de Control. Se pedirá confirmación antes de ejecutarlo.
Clone this wiki locally