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

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
  1. crear repositorio en GitHub
  2. crear la estructura del rol ansible-galaxy init <nombre_rol>
  3. editar meta/main.yml para especificar:
    • autor
    • descripción
    • plataformas: linux, distro, versión ansible
    • licencia
    • etiquetas
    • dependencias
  4. publicar en GitHub (add,commit,push)
  5. iniciar sesión en Galaxy: ansible-galaxy login
  6. importar el rol: ansible-galaxy import <github-user> <github-repository>

para eliminar de Galaxy : ansible-galaxy delete <github-user> <github-repository> para eliminar del servidor : ansible-galaxy remove

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
requirements.yml
- 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

  • info/cursos/udemy/ansible/galaxy.txt
  • Darrera modificació: 18/09/2018 08:20
  • per mate