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:
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 <nombre_rol>
editar meta/main.yml
para especificar:
publicar en GitHub (add,commit,push)
iniciar sesión en Galaxy: ansible-galaxy login
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
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
- 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