gotmax23.github_cli
Ansible Rolle: github_cli
Ansible Rolle, die Github CLI (gh) installiert.
Beta-Warnung
Diese Rolle befindet sich derzeit in der Beta-Phase und ist nicht für den produktiven Einsatz gedacht. Es können zwischen den Versionen breaking changes auftreten, daher bitte die Release-Notizen lesen.
Anforderungen
Diese Rolle hängt von bestimmten Sammlungen ab, die nicht in ansible-core enthalten sind.
Um die Anforderungen dieser Rolle zu installieren, erstellen Sie eine requirements.yml
-Datei mit folgendem Inhalt:
---
collections:
- community.general
Wenn Sie Ansible Base/Ansible Core 2.10 oder später verwenden, führen Sie diesen Befehl aus:
ansible-galaxy install -r requirements.yml
Wenn Sie weiterhin Ansible 2.9 verwenden, führen Sie stattdessen diesen Befehl aus:
ansible-galaxy collection install -r requirements.yml
Rollvariablen
Verfügbare Installationsmethoden
Diese Rolle erlaubt Ihnen zu wählen, aus welcher Quelle Sie die Github CLI installieren möchten. Sie können die standardmäßige Installationsmethode überschreiben, indem Sie github_cli_install_method
auf einen der unten angegebenen Werte setzen.
github_cli_install_method=repo
Beschreibung: Dies installiert die Github CLI aus den Apt- und RPM-Repos von upstream.
Unterstützte Distributionen: Das APT-Repository unterstützt alle Debian-Derivate. Das RPM-Repository unterstützt RPM-Distris wie Fedora, Enterprise Linux (CentOS, Almalinux, Rocky Linux, RHEL usw.), OpenSUSE Leap und OpenSUSE Tumbleweed.
Standard: Ja (für alle Distributionen, außer Archlinux, wo diese Option nicht unterstützt wird.)
github_cli_install_method=distro_package
Beschreibung: Dies installiert die Github CLI aus den Repositories der Distribution, sofern verfügbar.
Unterstützte Distributionen: Archlinux, OpenSUSE Tumbleweed und Fedora.
Standard: Nur für Archlinux, wo github_cli_install_method=repo
nicht unterstützt wird.
Hier sind die Variablen dieser Rolle und ihre Standardwerte, wie in defaults/main.yml
festgelegt. Wenn Sie möchten, können Sie sie ändern, um das Verhalten dieser Rolle anzupassen.
---
# Standards Datei für github_cli
# Optionen:
# - `present` stellt sicher, dass die Github CLI installiert ist
# - `absent` stellt sicher, dass die Github CLI nicht installiert ist.
# Wenn Sie die Installationsmethoden wechseln möchten, müssen Sie diese
# Rolle einmal mit der alten Einstellung unter Verwendung von `state=absent` ausführen und dann
# erneut mit der neuen Einstellung unter Verwendung von `state=present`.
github_cli_state: present
# Standardmäßig wird `github_cli_install_method` dynamisch basierend auf Ihrer Distribution zugewiesen.
_github_cli_install_method:
Archlinux: distro_package # Standard für Archlinux
default: repo # Standard für alle anderen Distros
# Wie oben erklärt, können Sie diese Variable überschreiben.
# Stellen Sie einfach sicher, dass die von Ihnen gewählte Option Ihre Distribution unterstützt.
github_cli_install_method: "{{ _github_cli_install_method[ansible_distribution] | default(_github_cli_install_method['default']) }}"
# Ob der Fingerabdruck des RPM-Repositories vor dem Import überprüft werden soll.
# Beachten Sie, dass diese Option nur für das RPM-Repository und nicht für das APT-Repository verfügbar ist.
github_cli_check_rpm_key_fingerprint: true
# Siehe [hier][1] für weitere Informationen.
# Der Standard dieser Rolle basiert auf der Empfehlung von Github.
github_cli_apt_repo_codename: stable
# Bei Yum/Dnf: Übergeben Sie `enablerepo` an das `package`-Modul.
github_cli_enablerepo: omit
Beispiel-Playbook
---
- name: Github CLI installieren
hosts: all
become: true
tasks:
- name: Apt-Cache aktualisieren
when: ansible_pkg_mgr == "apt"
ansible.builtin.apt:
update_cache: true
cache_valid_time: 3600
- name: Github CLI installieren
ansible.builtin.include_role:
name: "gotmax23.github_cli"
Kompatibilität
Diese Rolle wurde mit der neuesten Version von Ansible Core und der neuesten Version der Sammlungen aus Ansible Galaxy getestet. Dies ist die einzige Ansible-Version, die diese Rolle offiziell unterstützt. Eine beste Unterstützung wird für andere Versionen bereitgestellt.
Diese Rolle ist mit den folgenden Distris kompatibel:
Distro | Versionen |
---|---|
Archlinux | jede |
Debian | buster, bullseye, bookworm |
EL | 8 |
Fedora | 34, 35, 36 |
opensuse | 15.3, tumbleweed |
Ubuntu | bionic, focal |
Lizenz
Autor
Maxwell G (@gotmax23)
ansible-galaxy install gotmax23.github_cli