Skip to content

Latest commit

 

History

History
56 lines (36 loc) · 2.35 KB

Instala-Python-virtual-environment.md

File metadata and controls

56 lines (36 loc) · 2.35 KB

Instala Python virtual environment

Método recomendado: usando uv y el script de bootstrap

El script bin/first-time-install-ansible.sh instala uv, crea un virtual environment en ~/.ansible-venv e instala Ansible y ansible-lint:

./bin/first-time-install-ansible.sh

Si necesitas un path diferente para el venv:

./bin/first-time-install-ansible.sh --venv /ruta/al/venv

Luego puedes correr Ansible desde ese entorno virtual:

~/.ansible-venv/bin/ansible-playbook -i inventario site.yml --limit localhost --skip-tags eclipse,netbeans,telegram-desktop,codium,virtualbox,vmware-workstation

La tarea devops_ansible.yml del playbook se encarga de mantener actualizada la instalación de Ansible en el venv en cada ejecución, usando el mismo tooling (uv).

La variable ansible_venv_path (por defecto ~/.ansible-venv) controla la ubicación del venv. Para usar otro path, definila en tu archivo de variables de inventario.

Método alternativo: usando pip y /usr/local/venv

Si preferís el método manual con pip:

PYTHON_LOCAL_VENV=/usr/local/venv

[ -d "${PYTHON_LOCAL_VENV}" ] || sudo python3 -m venv "${PYTHON_LOCAL_VENV}"
sudo chown -R "${USER}" "${PYTHON_LOCAL_VENV}"

"${PYTHON_LOCAL_VENV}"/bin/python -m pip install --upgrade pip
"${PYTHON_LOCAL_VENV}"/bin/python -m pip install ansible==9.6.1

Luego puedes correr Ansible desde ese entorno virtual, haciendo:

time "${PYTHON_LOCAL_VENV}"/bin/ansible-playbook -i inventario  site.yml --limit localhost --skip-tags eclipse,netbeans,telegram-desktop,codium,virtualbox,vmware-workstation,ansible

En mi caso hay ciertos playbooks que no quiero instalar, y por eso el --skip-tags.

Si necesitas una versión de Python diferente de la que está instalada en tu sistema operativo, puedes usar pyenv:

Importante: las fechas de caducidad de los paquetes: