staticdev.pyenv
Rôle Ansible : Pyenv
Rôle Ansible Galaxy pour pyenv sur Debian / Ubuntu / RedHat / OSX.
Installez-le avec la commande suivante :
$ ansible-galaxy install staticdev.pyenv
Exigences
Aucune.
Variables du rôle
Voici la liste de toutes les variables et leurs valeurs par défaut :
pyenv_version: "HEAD"
- consultez https://github.com/pyenv/pyenv/releasespyenv_virtualenv_version: "HEAD"
- consultez https://github.com/pyenv/pyenv-virtualenv/releasespyenv_update_version: "HEAD"
- n'a généralement pas de versions publiées, mais on peut spécifier un hash de commitpyenv_env: "user"
(doit être soit"user"
soit"system"
)pyenv_path: "{% if pyenv_env == 'user' %}{{ ansible_env.HOME }}/pyenv{% else %}/usr/local/pyenv{% endif %}"
pyenvrc_path: "{{ pyenv_path }}"
pyenv_owner: "{{ ansible_facts.user_id }}"
pyenv_owner_group: "{{ pyenv_owner }}"
pyenv_python_versions: [3.12.1]
pyenv_virtualenvs: [{ venv_name: latest, py_version: 3.12.1 }]
pyenv_global: [3.12.1]
pyenv_update_git_install: true
(récupérer la dernière version de pyenv depuis git)pyenv_enable_autocompletion: false
pyenv_enable_virtualenvs: true
pyenv_shellrc_file: "{% if pyenv_env == 'user' %}~/.bashrc{% else %}/etc/profile.d/pyenv.sh{% endif %}"
pyenv_tmpdir: (doit être défini explicitement)
- variable d'environnementTMPDIR
utilisée par python-build comme décrit dans Special Environment Variables.pyenv_python_build_build_path: (doit être défini explicitement)
- variable d'environnementPYTHON_BUILD_BUILD_PATH
utilisée par python-build comme décrit dans Special Environment Variables.pyenv_python_build_cache_path: (doit être défini explicitement)
- variable d'environnementPYTHON_BUILD_CACHE_PATH
utilisée par python-build comme décrit dans Special Environment Variables.pyenv_python_build_mirror_url: (doit être défini explicitement)
- variable d'environnementPYTHON_BUILD_MIRROR_URL
utilisée par python-build comme décrit dans Special Environment Variables.pyenv_python_build_mirror_url_skip_checksum: (doit être défini explicitement)
- variable d'environnementPYTHON_BUILD_MIRROR_URL_SKIP_CHECKSUM
utilisée par python-build comme décrit dans Special Environment Variables.pyenv_python_build_skip_mirror: (doit être défini explicitement)
- variable d'environnementPYTHON_BUILD_SKIP_MIRROR
utilisée par python-build comme décrit dans Special Environment Variables.pyenv_python_build_skip_homebrew: (doit être défini explicitement)
- variable d'environnementPYTHON_BUILD_SKIP_HOMEBREW
utilisée par python-build comme décrit dans Special Environment Variables.pyenv_python_build_root: (doit être définiexplicitement)
- variable d'environnementPYTHON_BUILD_ROOT
utilisée par python-build comme décrit dans Special Environment Variables.pyenv_python_build_definitions: (doit être défini explicitement)
- variable d'environnementPYTHON_BUILD_DEFINITIONS
utilisée par python-build comme décrit dans Special Environment Variables.pyenv_python_configure_opts: (doit être défini explicitement)
- variable d'environnementPYTHON_CONFIGURE_OPTS
utilisée par python-build comme décrit dans Special Environment Variables.pyenv_python_cflags: (doit être défini explicitement)
- variable d'environnementPYTHON_CFLAGS
utilisée par python-build comme décrit dans Special Environment Variables.pyenv_python_make_opts: (doit être défini explicitement)
- variable d'environnementPYTHON_MAKE_OPTS
utilisée par python-build comme décrit dans Special Environment Variables.pyenv_python_make_install_opts: (doit être défini explicitement)
- variable d'environnementPYTHON_MAKE_INSTALL_OPTS
utilisée par python-build comme décrit dans Special Environment Variables.pyenv_configure_opts: (doit être défini explicitement)
- variable d'environnementCONFIGURE_OPTS
utilisée par python-build comme décrit dans Special Environment Variables.pyenv_cc: (doit être défini explicitement)
- variable d'environnementCC
utilisée par python-build comme décrit dans Special Environment Variables.pyenv_make: (doit être défini explicitement)
- variable d'environnementMAKE
utilisée par python-build comme décrit dans Special Environment Variables.pyenv_make_opts: (doit être défini explicitement)
- variable d'environnementMAKE_OPTS
utilisée par python-build comme décrit dans Special Environment Variables.pyenv_make_install_opts: (doit être défini explicitement)
- variable d'environnementMAKE_INSTALL_OPTS
utilisée par python-build comme décrit dans Special Environment Variables.pyenv_profile_task: (doit être défini explicitement)
- variable d'environnementPROFILE_TASK
pour personnaliser la tâche utilisée pour l'optimisation guidée par profil comme décrit dans construction de Python pour des performances maximales. Voir aussi ici.pyenv_custom_pyenvrc_file: (doit être défini explicitement)
- chemin vers un fichier shell.pyenvrc
personnalisé qui sera inclus depuis{{ pyenvrc_path }}/.pyenvrc
. Cela vous permet de personnaliser librement l'environnement utilisé pendant l'exécution depyenv
. Si défini, ce fichier sera copié sous{{ pyenvrc_path }}/.pyenvrc.custom
.pyenv_install_extra_opts: ("" -pas d'options supplémentaires ajoutées-)
- consultez la sortie depyenv install --help
pour les options supplémentaires disponibles.
Dépendances
Aucune.
Exemple de Playbook
- hosts: servers
roles:
- role: staticdev.pyenv
vars:
# issu de https://github.com/pyenv/pyenv/releases
pyenv_version: "v2.3.35"
# issu de https://github.com/pyenv/pyenv-virtualenv/releases
pyenv_virtualenv_version: "v1.2.1"
# issu de https://github.com/pyenv/pyenv-update/commits/master/
pyenv_update_version: "172a0ed"
pyenv_shellrc_file: "{{ ansible_env.HOME }}/.shrc"
pyenv_path: "{{ ansible_env.HOME }}/.pyenv"
pyenvrc_path: "{{ ansible_env.HOME }}"
pyenv_owner: "{{ instance_owner }}"
pyenv_global:
- 3.12.1
- 3.11.7
pyenv_enable_autocompletion: false
pyenv_python_versions:
- 3.12.1
- 3.11.7
pyenv_virtualenvs:
- venv_name: latest_v312
py_version: 3.12.1
- venv_name: latest_v311
py_version: 3.11.7
pyenv_make_opts: "-j4"
pyenv_python_configure_opts: "--enable-optimizations --with-lto --with-ensurepip=upgrade"
pyenv_python_cflags: "-march=native -mtune=native"
pyenv_profile_task: "-m test.regrtest --pgo -j0"
Licence
Distribué sous les termes de la licence MIT, Ansible rôle Pyenv est un logiciel libre et open source.
Informations sur l'auteur
staticdev. Basé largement sur le avanov.pyenv de Maxim Avanov.
Installer
ansible-galaxy install staticdev.pyenv
Licence
mit
Téléchargements
170.7k
Propriétaire