Homebrew Cask mit Ansible

Paketmanager auf modernen Betriebssystemen sind ein wahrer Segen: Programme
können einfach installiert, auf den aktuellsten Stand gebracht und restlos
deinstalliert werden.
Auch können mit einfachen Mitteln definierte Installationen bzw.
Systemkonfigurationen erstellt werden.

Unter OS X steht derzeit Homebrew als Paketmanager mit
tausenden von (zumeist vorkompilierten) Paketen hoch in der Gunst der Nutzer.

Doch was, wenn Benutzer Software wie
Photoshop,
Omnigraffle oder
Pycharm installiert brauchen?
Auch hier hilft Homebrew weiter: Mit der Erweiterung Homebrew
Cask
kann Software aus externen Installern
auf das eigene System gebracht werden - automatisiert und nachvollziehbar.

Hierzu ist nach der Installation von Homebrew lediglich ein Einbinden des
Homebrew Cask Repository notwendig:

brew tap caskroom/cask

Schon ist mit dem Befehl brew cask install firefox der Firefox Browser im
eigenen System installiert werden.
Ist man auf nightly builds oder alte Versionen einer Software angewiesen,
hilft zu dem das optionale Repository caskroom/versions.

brew tap caskroom/versions

Mit der Hilfe von Ansible kann dieser Prozess
(sowie die Installation der Software) nun zentral erfolgen.

Wir legen uns eine Konfiguration an.
Hierzu erstellen wir einen Tasks zur Installation von Homebrew Cask und allen Applikationen:
roles/apps/tasks/main.yml

- name: Check if homebrew cask installed
  homebrew: name=cask state=present

- name: Check if caskroom/versions is installed
  homebrew_tap: tap=caskroom/versions state=present

- name: Install applications
  homebrew_cask: name={{ item  }} state=present
  become: yes
    with_items:
      - firefox
      - vivaldi
      - gimp

Ansible installiert beim Aufruf nun alle aufgezählten Applikationen.
Aber Achtung: Da Homebrew als Nutzer ausgeführt werden sollte, die Installation
mancher Applikationen jedoch Administrator-Rechte verlangt, ist es hier
sinnvoll, die beiden Tasks homebrew und homebrew_tab als Nutzer laufen zu
lassen, den homebrew_cask Prozess jedoch als Administrator (Siehe
become).

Nun haben wir die Möglichkeit zentral, dokumentiert und nachvollziehbar
Software zu installieren, die aus Installern stammt.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.