buluma.python_pip

Rôle Ansible python_pip

Installez pip de Python sur votre système.

GitHub Version Issues Pull Requests Downloads
github Version Issues PullRequests Ansible Role

Exemple de Playbook

Cet exemple est tiré de molecule/default/converge.yml et est testé à chaque push, pull request et release.

---
- name: Converger
  hosts: all
  become: true
  gather_facts: true

  pre_tasks:
    - name: Mettre à jour le cache apt.
      apt: update_cache=yes cache_valid_time=600
      when: ansible_os_family == 'Debian'
      changed_when: false

    - name: Vérifier si le fichier EXTERNALLY-MANAGED de python3.11 existe
      ansible.builtin.stat:
        path: /usr/lib/python3.11/EXTERNALLY-MANAGED
      register: externally_managed_file_py311

    - name: Renommer le fichier EXTERNALLY-MANAGED de python3.11 s'il existe
      ansible.builtin.command:
        cmd: mv /usr/lib/python3.11/EXTERNALLY-MANAGED /usr/lib/python3.11/EXTERNALLY-MANAGED.old
      when: externally_managed_file_py311.stat.exists
      args:
        creates: /usr/lib/python3.11/EXTERNALLY-MANAGED.old

    - name: Vérifier si le fichier EXTERNALLY-MANAGED de python3.12 existe
      ansible.builtin.stat:
        path: /usr/lib/python3.12/EXTERNALLY-MANAGED
      register: externally_managed_file_py312

    - name: Renommer le fichier EXTERNALLY-MANAGED de python3.12 s'il existe
      ansible.builtin.command:
        cmd: mv /usr/lib/python3.12/EXTERNALLY-MANAGED /usr/lib/python3.12/EXTERNALLY-MANAGED.old
      when: externally_managed_file_py312.stat.exists
      args:
        creates: /usr/lib/python3.12/EXTERNALLY-MANAGED.old

  roles:
    - role: buluma.python_pip

La machine doit être préparée. Dans CI, cela se fait avec molecule/default/prepare.yml:

---
- name: Préparer
  hosts: all
  become: true
  gather_facts: false

  roles:
    - role: buluma.bootstrap
    - role: buluma.epel
    - role: buluma.buildtools

Voir également une explication complète et un exemple sur la façon d'utiliser ces rôles.

Variables du rôle

Les valeurs par défaut des variables sont définies dans defaults/main.yml:

---
# fichier par défaut pour python_pip

# Par défaut, aucun module ne doit être installé. Remarque : cela ne fonctionne pas sur Debian Bookworm et Ubuntu noble.
# Voir https://peps.python.org/pep-0668/
python_pip_modules: []

# Connectez-vous à un proxy (pypi) en définissant cette variable.
# python_pip_proxy: "https://user:password@proxy:8443/artifactory/pypi/pypi-virtual/simple"

# N'oubliez pas de faire confiance aux dépôts pip étrangers si vous les utilisez.
# python_pip_trusted_host: my-pip-repository.example.com

# Vous pouvez faire en sorte que ce rôle mette à jour pip, en utilisant pip.
python_pip_update: true

# Vous pouvez utiliser un autre binaire pip que celui par défaut.
# python_pip_executable: pip3

Exigences

État des rôles utilisés

Les rôles suivants sont utilisés pour préparer un système. Vous pouvez préparer votre système d'une autre manière.

Exigence GitHub Version
buluma.bootstrap Ansible Molecule Version
buluma.buildtools Ansible Molecule Version
buluma.epel Ansible Molecule Version

Contexte

Ce rôle fait partie de nombreux rôles compatibles. Consultez la documentation de ces rôles pour plus d'informations.

Voici un aperçu des rôles liés :

dépendances

Compatibilité

Ce rôle a été testé sur ces images de conteneur:

conteneur tags
Alpine tous
Debian tous
EL 9, 8
Fedora 39, 38, 40
opensuse tous
Ubuntu focal, bionic, jammy, lunar, noble

La version minimale d'Ansible requise est 2.12, des tests ont été effectués pour :

  • La version précédente.
  • La version actuelle.
  • La version de développement.

Si vous trouvez des problèmes, veuillez les enregistrer sur GitHub.

Journal des modifications

Historique du rôle

Licence

Apache-2.0

Informations sur l'auteur

Shadow Walker

À propos du projet

Install pythons pip on your system.

Installer
ansible-galaxy install buluma.python_pip
Licence
apache-2.0
Téléchargements
1.1M
Propriétaire
DevOps Engineer