gotmax23.github_cli

Rola Ansible: github_cli

Rola gotmax23.github_cli Repo Github Repo SourceHut Licencja MIT Otwarte zgłoszenia na Githubie Otwarte PR na Githubie Wersja roli Commity od ostatniej wersji Jakość roli Galaxy Pobrania roli Galaxy Status workflow Molecule w Github Actions Status workflow Galaxy w Github Actions

Rola Ansible, która instaluje Github CLI (gh).

Ostrzeżenie Beta

Ta rola jest obecnie w wersji beta i nie jest przeznaczona do użytku produkcyjnego. Mogą wystąpić istotne zmiany między wydaniami, więc upewnij się, że przeczytałeś notatki dotyczące wydania.

Wymagania

Ta rola zależy od pewnych kolekcji, które nie są dołączone do ansible-core.

Aby zainstalować wymagania tej roli, utwórz plik requirements.yml z następującą zawartością:

---
collections:
  - community.general

Następnie, jeśli używasz ansible-base/ansible-core 2.10 lub nowszego, uruchom to polecenie:

ansible-galaxy install -r requirements.yml

Jeśli nadal używasz Ansible 2.9, zamiast tego uruchom to polecenie:

ansible-galaxy collection install -r requirements.yml

Zmienne roli

Dostępne metody instalacji

Ta rola pozwala na wybór źródła instalacji Github CLI. Możesz nadpisać domyślną metodę instalacji, ustawiając github_cli_install_method na jedną z wartości wymienionych poniżej.

github_cli_install_method=repo

Opis: To instaluje Github CLI z oficjalnych repozytoriów Apt i RPM.

Obsługiwane dystrybucje: Repozytorium apt wspiera wszystkie pochodne Debiana. Repozytorium RPM wspiera dystrybucje RPM, takie jak Fedora, Enterprise Linux (CentOS, Almalinux, Rocky Linux, RHEL itp.), OpenSUSE Leap i OpenSUSE Tumbleweed.

Domyślnie: Tak (dla wszystkich dystrybucji z wyjątkiem Archlinux, gdzie ta opcja nie jest wspierana.)

github_cli_install_method=distro_package

Opis: To instaluje Github CLI z repozytoriów dystrybucji, jeśli jest dostępne.

Obsługiwane dystrybucje: Archlinux, OpenSUSE Tumbleweed i Fedora

Domyślnie: Tylko dla Archlinux, gdzie github_cli_install_method=repo nie jest wspierane.


Oto zmienne tej roli oraz ich domyślne wartości, jak ustawione w defaults/main.yml. Jeśli chcesz, możesz je zmienić, aby dostosować działanie tej roli.

---
# plik domyślny dla github_cli

# Opcje:
# - `present` zapewnia, że Github CLI jest zainstalowany
# - `absent` zapewnia, że Github CLI nie jest zainstalowany.

# Jeśli chciałbyś zmienić metody instalacji, musisz uruchomić tę rolę
# raz z poprzednim ustawieniem używając `state=absent`, a następnie uruchomić ją ponownie
# z nowym ustawieniem używając `state=present`.
github_cli_state: present

# Domyślnie, `github_cli_install_method` jest przypisywane dynamicznie na podstawie Twojej dystrybucji.
_github_cli_install_method:
  Archlinux: distro_package  # Domyślnie dla Archlinux
  default: repo  # Domyślnie dla wszystkich innych dystrybucji

# Jak wyjaśniono powyżej, możesz nadpisać tę zmienną.
# Upewnij się tylko, że wybrana opcja wspiera Twoją dystrybucję.
github_cli_install_method: "{{ _github_cli_install_method[ansible_distribution] | default(_github_cli_install_method['default']) }}"

# Czy sprawdzić odcisk palca klucza podpisu repozytorium RPM przed jego zaimportowaniem.
# Zauważ, że ta opcja jest dostępna tylko dla repozytorium RPM, a nie dla apt.
github_cli_check_rpm_key_fingerprint: true

# Zobacz [tutaj][1] więcej informacji.
# Domyślnie tej roli na podstawie rekomendacji Githuba.
github_cli_apt_repo_codename: stable

# Na Yum/Dnf: Przekazanie `enablerepo` do modułu `package`.
github_cli_enablerepo: omit

[1]: https://github.com/cli/cli/blob/trunk/docs/install_linux.md#debian-ubuntu-linux-apt

Przykład playbooka

---
- name: Zainstaluj Github CLI
  hosts: all
  become: true

  tasks:
    - name: Zaktualizuj pamięć podręczną apt
      when: ansible_pkg_mgr == "apt"
      ansible.builtin.apt:
        update_cache: true
        cache_valid_time: 3600

    - name: Zainstaluj Github CLI
      ansible.builtin.include_role:
        name: "gotmax23.github_cli"

Kompatybilność

Ta rola jest testowana przy użyciu najnowszej wersji ansible-core oraz najnowszej wersji kolekcji z Ansible Galaxy. To jest jedyna wersja Ansible, którą ta rola oficjalnie wspiera. Wsparcie na zasadzie 'best effort' jest oferowane dla innych wersji.

Ta rola jest kompatybilna z następującymi dystrybucjami:

dystrybucja wersje
Archlinux dowolna
Debian buster, bullseye, bookworm
EL 8
Fedora 34, 35, 36
opensuse 15.3, tumbleweed
Ubuntu bionic, focal

Licencja

MIT

Autor

Maxwell G (@gotmax23)

O projekcie

Ansible role that installs Github CLI (gh).

Zainstaluj
ansible-galaxy install gotmax23.github_cli
Licencja
mit
Pobrania
212
Właściciel
@gotmax:matrix.org | Fedora developer. Ansible Community Steering Committee member. Pythonista. | See my sr.ht profile for my current code.