Ansible-Patch

Ansible Patch



Ansible, eines der am weitesten verbreiteten Konfigurationsmanagement-Tools, hat die Automatisierung von DevOps-Aufgaben grundlegend verändert.

Es ist vollgepackt mit einer umfangreichen Sammlung von Modulen, mit denen Sie nahezu jeden Aspekt eines Systems automatisieren und verwalten können.

Eines dieser verfügbaren Module sind die „posix.patch“-Module. In diesem Tutorial erfahren wir, was dieses Modul ist, was es tut und wie man es in einem realen Playbook verwendet.







Ansible Posix.Patch-Modul

Das Modul „posix.patch“ ermöglicht es uns, die Patch-Dateien mit dem nativen Patch-Befehl anzuwenden. Wenn wir über eine Diff-Datei verfügen, die Änderungen an einer vorhandenen Datei oder einem Satz von Dateien enthält, können wir dieses Modul verwenden, um die Verarbeitung der Zusammenführung der Änderungen zu automatisieren, anstatt diese Änderungen manuell anzuwenden.



Modulparameter

Im Folgenden sind einige der Parameter aufgeführt, die von diesem Modul unterstützt werden:



src – Es gibt den Pfad zur Patch-Datei an. Diese Datei enthält die anzuwendenden Änderungen und kann ein absoluter oder relativer Pfad sein.





Hand - Es gibt den Pfad der Datei auf dem Remote-Computer an, die gepatcht werden soll.

Basierend - Es legt das Basisverzeichnis fest, das Stammverzeichnis, in dem Sie mit der Anwendung des Patches beginnen möchten. Standardmäßig wird das aktuelle Arbeitsverzeichnis verwendet.



Streifen – Es reduziert die Anzahl der führenden Verzeichnisse aus den Dateinamen in der Patch-Datei. Beispielsweise entfernt ein Strip-Level 1 das führende Verzeichnis und dir1/dir/file.txt wird zu dir/file.txt.

Sicherung – Dies ist ein boolescher Parameter, der definiert, ob vor der Anwendung des Patches eine Sicherungskopie der Originaldatei erstellt werden soll. Der Standardwert ist „false“.

Zustand - Es stellt den gewünschten Zustand nach dem Anwenden des Patches ein. Zu den akzeptierten Werten gehören:

  • gegenwärtig - Wenden Sie den Patch an
  • abwesend – Setzen Sie den Patch zurück

Beispiele:

Sehen wir uns einige Beispiele an, wie Sie mit diesem Modul Patches auf die Dateien anwenden können.

Beispiel 1: Grundlegende Verwendung

Angenommen, wir haben eine Patchdatei namens „version2.diff“, die wir anwenden möchten. Wir können das Patch-Modul wie folgt verwenden:

- Name: Patch anwenden
posix.patch:
Quelle: /home/ubuntu/version2.diff
Start: /var/log/logging.ini

Beispiel 2: Anwenden eines Patches mit einem Backup

Um vor der Anwendung eines Patches ein Backup zu erstellen, verwenden Sie den Backup-Parameter wie folgt:

- Name: Patch mit Backup anwenden
posix.patch:
Quelle: /home/ubuntu/version2.diff
Start: /var/log/logging.ini
Backup: ja

Beispiel 3: Einen Patch zurücksetzen

Um einen Patch zurückzusetzen, können wir den Statusparameter wie folgt verwenden:

- Name: Patch zurücksetzen
posix.patch:
Quelle: /home/ubuntu/version2.diff
Start: /var/log/logging.ini
Zustand: abwesend

Beispiel 4: Verzeichnisse entfernen

Wenn ein Patch führende Verzeichnisse hat und wir ein Verzeichnis daraus entfernen möchten, können wir den Strip-Parameter wie folgt verwenden:

- Name: Patch mit Streifen auftragen
posix.patch:
Quelle: /home/ubuntu/version2.diff
Start: /var/log/logging.ini
Streifen: 1

Abschluss

Das Modul „posix.patch“ ist ein unkompliziertes und dennoch leistungsstarkes Tool zur Automatisierung der Patch-Aufgaben, wie Sie in diesem Tutorial gesehen haben. Weitere Informationen zu diesem Modul finden Sie in der Dokumentation.