diff --git a/README.md b/README.md index 2aecafd..cac4557 100644 --- a/README.md +++ b/README.md @@ -138,3 +138,35 @@ vagrant up ## Para ingresar y verificar el entorno vagrant ssh ``` + +# Uso con Execution Environments + +Este repositorio también puede ejecutarse dentro de un Ansible Execution Environment para evitar instalar dependencias en el host. +Nota: Los siguientes comandos deben ejecutarse desde el directorio ansible-builder del repositorio. + +```bash +## Si no pertenece a Mikroways ejecutamos el siguiente comando para construir la imagen pública +ansible-builder build \ + -c ./ansible-builder \ + -t vm-setup-ee:latest + +## Si pertenece a Mikroways construimos la imagen privada con acceso SSH +ansible-builder build \ + -c ./ansible-builder \ + -f execution-environment-mw.yml \ + -t vm-setup-ee-mw:latest \ + --ssh default=$HOME/.ssh/ + +``` + +Ejecutar el playbook desde el contenedor +```bash +podman run --rm -it \ + -v $(pwd)/ansible:/ansible:Z \ + -v /ruta/en/host/a/tu/clave_ssh:/ansible/keys/private_key:ro \ + vm-setup-ee:latest \ + ansible-playbook /ansible/playbooks/ \ + -i USUARIO@IP_DEL_HOST, \ + -e ansible_user=USUARIO \ + -e ansible_ssh_private_key_file=/ansible/keys/private_key +``` diff --git a/ansible-builder/execution-environment-mw.yml b/ansible-builder/execution-environment-mw.yml new file mode 100644 index 0000000..adc88a6 --- /dev/null +++ b/ansible-builder/execution-environment-mw.yml @@ -0,0 +1,9 @@ +version: 3 + +images: + base_image: + name: quay.io/ansible/ansible-runner:latest + +dependencies: + python: requirements.txt + galaxy: requirements-mw.yml diff --git a/ansible-builder/execution-environment.yml b/ansible-builder/execution-environment.yml new file mode 100644 index 0000000..029c9a5 --- /dev/null +++ b/ansible-builder/execution-environment.yml @@ -0,0 +1,9 @@ +version: 3 + +images: + base_image: + name: quay.io/ansible/ansible-runner:latest + +dependencies: + python: requirements.txt + galaxy: requirements.yml diff --git a/ansible-builder/requirements-mw.yml b/ansible-builder/requirements-mw.yml new file mode 100644 index 0000000..2b911b6 --- /dev/null +++ b/ansible-builder/requirements-mw.yml @@ -0,0 +1,11 @@ +roles: + - name: mikroways.workstation + version: 2.4.0 + + - name: mikroways.tools + src: git+ssh://git@gitlab.com/mikroways/ansible/mikroways.tools.git + scm: git + +collections: + - name: community.general + source: https://galaxy.ansible.com diff --git a/ansible-builder/requirements.txt b/ansible-builder/requirements.txt new file mode 100644 index 0000000..909c121 --- /dev/null +++ b/ansible-builder/requirements.txt @@ -0,0 +1,2 @@ +pip>=23.0 +ansible==6.7.0 diff --git a/ansible-builder/requirements.yml b/ansible-builder/requirements.yml new file mode 100644 index 0000000..d7ccca5 --- /dev/null +++ b/ansible-builder/requirements.yml @@ -0,0 +1,7 @@ +roles: + - name: mikroways.workstation + version: 2.4.0 + +collections: + - name: community.general + source: https://galaxy.ansible.com