buluma.update_pip_packages

Rola Ansible update_pip_packages

Znajduje i aktualizuje pakiety pip.

GitHub Wersja Zgłoszenia Prośby o włączenie Pobrania
github Wersja Zgłoszenia Prośby o włączenie Rola Ansible

Przykładowy playbook

Ten przykład pochodzi z molecule/default/converge.yml i jest testowany przy każdym pushu, prośbie o włączenie oraz wydaniu.

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

  pre_tasks:
    - name: Aktualizacja pamięci podręcznej apt.
      apt: update_cache=yes cache_valid_time=600
      when: ansible_os_family == 'Debian'
      changed_when: false

    - name: Sprawdzenie, czy plik EXTERNALLY-MANAGED dla python3.11 istnieje
      ansible.builtin.stat:
        path: /usr/lib/python3.11/EXTERNALLY-MANAGED
      register: externally_managed_file_py311

    - name: Zmiana nazwy pliku EXTERNALLY-MANAGED dla python3.11, jeśli istnieje
      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: Sprawdzenie, czy plik EXTERNALLY-MANAGED dla python3.12 istnieje
      ansible.builtin.stat:
        path: /usr/lib/python3.12/EXTERNALLY-MANAGED
      register: externally_managed_file_py312

    - name: Zmiana nazwy pliku EXTERNALLY-MANAGED dla python3.12, jeśli istnieje
      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.update_pip_packages
      update_pip_package_ignore:
        - libcomps
        - PyGObject
        - pygobject
        - pyxdg
        - resolvelib
        - dbus-python
        - setuptools

Maszyna musi być przygotowana. W CI robi to molecule/default/prepare.yml:

---
- name: przygotowanie
  hosts: all
  become: true
  gather_facts: false

  roles:
    - role: buluma.bootstrap
    - role: buluma.epel
    - role: buluma.buildtools
    - role: buluma.python_pip
      python_pip_modules:
        - name: ansible

Zobacz także pełne wyjaśnienie i przykład dotyczące używania tych ról.

Zmienne roli

Domyślne wartości dla zmiennych są ustawione w defaults/main.yml:

---
# plik domyślny dla update_pip_packages

# Lista wykonywalnych plików pip, które będą używane do pobierania pakietów.
# Może to być pełna ścieżka lub tylko nazwa wykonywalnego pliku.
# Ta rola "odkrywa" instalacje pip i pip3, ale jeśli masz konkretny
# plik wykonywalny pip, możesz dodać elementy do tej listy.
update_pip_packages_clients: []

# Możesz wskazać, aby zignorować listę pakietów. Pakiety wymienione tutaj nie będą aktualizowane.
# update_pip_package_ignore:
#   - some_pip_package

Wymagania

Stan używanych ról

Poniższe role są używane do przygotowania systemu. Możesz przygotować swój system w inny sposób.

Wymaganie GitHub Wersja
buluma.bootstrap Ansible Molecule Wersja
buluma.epel Ansible Molecule Wersja
buluma.python_pip Ansible Molecule Wersja
buluma.buildtools Ansible Molecule Wersja

Kontekst

Ta rola jest częścią wielu kompatybilnych ról. Zobacz dokumentację tych ról (tutaj) w celu uzyskania dalszych informacji.

Oto przegląd powiązanych ról:

zależności

Kompatybilność

Ta rola była testowana na tych obrazach kontenerów:

kontener tagi
Debian wszystkie
EL 8
Fedora wszystkie
opensuse wszystkie

Minimalna wymagana wersja Ansible to 2.12, testy przeprowadzono na:

  • poprzedniej wersji.
  • bieżącej wersji.
  • wersji deweloperskiej.

Jeśli znajdziesz problemy, zgłoś je na GitHubie

Dziennik zmian

Historia roli

Licencja

Apache-2.0

Informacje o autorze

Shadow Walker

O projekcie

Find and update pip packages.

Zainstaluj
ansible-galaxy install buluma.update_pip_packages
Licencja
apache-2.0
Pobrania
5.3k
Właściciel
DevOps Engineer