taktus.package
Paket
Eine Rolle zur Verwaltung von Paketen auf verschiedenen Betriebssystemen.
Diese Rolle unterstützt derzeit apt, yum, dnf, brew, zypper, pacman und portage. Fühlen Sie sich frei, einen Pull- oder Feature-Request zu senden, um Ihren Lieblings-Paketmanager hinzuzufügen!
Achtung:
- Diese Rolle berücksichtigt Namensunterschiede zwischen Paketmanagern, nicht jedoch zwischen Distributionen, die denselben Paketmanager verwenden.
- Die Testabdeckung ist ziemlich gering, melden Sie bitte Fehler!
Anforderungen
- Hosts sollten für die Verwendung von Ansible vorbereitet sein (Python installiert, ...).
- Root-Rechte, z. B.
become: yes
Rollenvariablen
Variable | Beschreibung | Standardwert |
---|---|---|
package_list |
Liste der Pakete (siehe Details!) | [] |
package_list_host |
Liste der Pakete (siehe Details!) | [] |
package_list_group |
Liste der Pakete (siehe Details!) | [] |
package_state |
Standardpaketstatus | 'present' |
package_update_cache |
Cache aktualisieren? | ja |
package_cache_valid_time |
Wie lange ist der Paketcache gültig? (Sekunden) | 3600 |
Details zu package_list
package_list
, package_list_host
und package_list_group
werden beim
Verwalten der Pakete zusammengeführt. Sie können die Host- und Gruppenlisten verwenden, um
Pakete pro Host oder Gruppe anzugeben.
Die Paketliste ermöglicht es Ihnen zu definieren, welche Pakete verwaltet werden müssen. Jedes Element in der Liste kann folgende Attribute haben:
Variable | Beschreibung | erforderlich |
---|---|---|
name |
Paketname | ja |
state |
Paketstatus | nein |
apt |
Paketname für apt | nein |
apt_ignore |
Paket für apt ignorieren | nein |
apt_install_recommends |
Soll empfohlene Abhängigkeiten für apt installiert werden? | nein |
yum |
Paketname für yum | nein |
yum_ignore |
Paket für yum ignorieren | nein |
dnf |
Paketname für dnf | nein |
dnf_ignore |
Paket für dnf ignorieren | nein |
brew |
Paketname für brew | nein |
brew_ignore |
Paket für brew ignorieren | nein |
zypper |
Paketname für zypper | nein |
zypper_ignore |
Paket für zypper ignorieren | nein |
pacman |
Paketname für pacman | nein |
pacman_ignore |
Paket für pacman ignorieren | nein |
portage |
Paketname für portage | nein |
portage_ignore |
Paket für portage ignorieren | nein |
Standardmäßig werden package_state
und item.name
verwendet, wenn die Pakete verwaltet werden.
Wenn jedoch item.state
definiert ist oder ein spezifischerer Paketname (z. B.
item.apt
), werden diese stattdessen verwendet. Wenn Sie möchten, dass ein Paket von
einigen Paketmanagern ignoriert wird, können Sie ***_ignore
: ja hinzufügen.
Beispiel für package_list
package_list:
- name: paket
- name: paket1
state: absent
- name: paket2
apt: paket2_apt_name
- name: paket3
apt_ignore: ja
yum: paket3_yum_name
pacman: paket3_pacman_name
portage: paket3_portage_name
Abhängigkeiten
Keine.
Beispiel-Playbook
---
- hosts: server
roles:
- { role: GROG.package,
become: ja,
package_list: [
{ name: htop,
brew: htop-osx },
{ name: tree }
]
}
Mitwirken
Alle Unterstützung, Änderungen oder Ideen willkommen!
Autor
Von G. Roggemans
Lizenz
MIT