= Galaxy == 4:48 Ansible Galaxy repositorio online gratuito donde se alojan roles a ser utilizados en playbooks\\ [[https://galaxy.ansible.com]] es posible compartir tus propios roles usando para autentificarte una cuenta de GitHub existe una herramienta CLI (''ansible-galaxy'') que permite: * descargar roles desde Galaxy o VCS * crear roles * eliminar roles * realizar tareas de mantenimiento en la web de Galaxy == 4:49 CLI sintaxis: ''ansible-galaxy [acción] [opciones] argumentos'' acciones * delete : elimina un rol de Galaxy * import : importa un rol desde GitHub a Galaxy * info : muestra información detallada de un rol * init : inicializar estructura directorio * install : descargar **rol** en /etc/ansible/roles (por defecto, configurable en **ansible.cfg**) * list : lista los roles instalados * login : autentificación en Galaxy * remove : elimina un rol del servidor (no de Galaxy) * search : búsqueda dentro del repositorio * setup : crea una integración con **Travis CI** opciones * -f / --force : sobreescritura del rol * -i / --ignore-errors * -n / --no-deps : ignora las dependencias * -p / --roles-path : directorio alternativo de roles * -r / --roles-file : listado de roles a instalar == 4:50 Compartir Rol - crear repositorio en GitHub - crear la estructura del rol ''ansible-galaxy init '' - editar ''meta/main.yml'' para especificar: * autor * descripción * plataformas: linux, distro, versión ansible * licencia * etiquetas * dependencias * ... - publicar en GitHub (add,commit,push) - iniciar sesión en Galaxy: ''ansible-galaxy login'' - importar el rol: ''ansible-galaxy import '' para eliminar de Galaxy : ''ansible-galaxy delete '' para eliminar del servidor : ''ansible-galaxy remove'' == 4:51 Roles fichero con el listado de roles a instalar atributos * src : origen del rol * usuario nombre : desde Galaxy * dirección SCM (http, https, git, git@) * scm : específica del tipo SCM: **git** o **hg** * version : la versión a instalar * name : un nombre distinto al original - src: bennojoy.nginx version: master name: nginx_master - src: https://github.com/bennejoy/redis # en este caso, el formato que se guardará será solo el nombre para proceder, ''ansible-galaxy install -r requeriments.yml''