Versionado ansible en git

Versionado ansible en git

Tengo un repositorio de git, tengo mis libros de jugadas y hosts. ¿Ahora que?

¿Cuál es la forma recomendada de obtener mi carpeta /etc/ansible en mi GitLab? Puedo simplemente crear el repositorio, pero ¿cómo y cuándo lo hago? ¿Qué pasa con las carpetas .git?

Intenté mantener una copia en /home/user/git/ansible y vincularla a /etc/ansible pero ansible no puede seguirlo.

¿Cómo debe hacerse esto?

(También estoy interesado en algunas buenas lecturas sobre cómo trabajar correctamente con git)

Respuesta1

Personalmente no almaceno nada en /etc/ansible. Pero instalo y ejecuto ansible usando virtualenv, por lo que /etc/ansible nunca estuvo disponible para mí.

Definitivamente deberías mirar eldiseño oficial recomendado, pero mi jerarquía ansible mínima es la siguiente:

inventories
    hosts
    vars
roles
    role1
    role2
    ....
ansible.cfg
site.yml

Clono el repositorio en /home/victor/git/ansible y pongo estas líneas en mi bashrc para configurar las rutas ansibles predeterminadas:

export ANSIBLE_INVENTORY=/home/victor/git/ansible/inventories/hosts
export ANSIBLE_CONFIG=/home/victor/git/ansible/ansible.cfg

Hay dos reglas que siempre sigo:

  1. Cada vez que ejecuto un libro de jugadas, salgo de git para asegurarme de que estoy ejecutando la última versión.
  2. Cada vez que hago un cambio en el libro de jugadas, siempre los ejecuto primero para asegurarme de que no haya errores antes de enviarlos al repositorio.

Si está utilizando ansible para distribuir secretos o credenciales, también desea utilizar ansible-vault para cifrarlos antes de comprometerse con git.NO coloque credenciales simples en un repositorio de git.

Supongo que en este caso de uso tener una carpeta .git no es un problema en absoluto (supongo que no querías una carpeta .git en algún lugar de /etc/).

información relacionada