geerlingguy.homebrew

Ansible Rolle: Homebrew (VERSCHOBEN)

VERSCHOBEN: Diese Rolle wurde in die Sammlung geerlingguy.mac verschoben. Bitte siehe diese Anfrage für einen Migrationsleitfaden und weitere Informationen.

MIT lizenziert Galaxy Rolle Downloads CI

Installiert Homebrew auf MacOS und konfiguriert Pakete, Taps und Cask-Apps gemäß den angegebenen Variablen.

Anforderungen

Keine.

Rollvariablen

Verfügbare Variablen sind unten aufgeführt, zusammen mit Standardwerten (siehe defaults/main.yml):

homebrew_repo: https://github.com/Homebrew/brew

Das GitHub-Repository für den Homebrew-Core.

homebrew_prefix: "{{ (ansible_machine == 'arm64') | ternary('/opt/homebrew', '/usr/local') }}"
homebrew_install_path: "{{ homebrew_prefix }}/Homebrew"

Der Pfad, an dem Homebrew installiert wird (homebrew_prefix ist das übergeordnete Verzeichnis). Es wird empfohlen, bei den Standardwerten zu bleiben, da sonst Homebrew merkwürdige Probleme haben könnte. Wenn du diese Variable änderst, solltest du auch manuell einen Symlink zurück nach /usr/local erstellen, damit alles wie von Homebrew erwartet funktioniert.

homebrew_brew_bin_path: /usr/local/bin

Der Pfad, an dem brew installiert wird.

homebrew_installed_packages:
  - ssh-copy-id
  - pv
  - { name: vim, install_options: "with-luajit,override-system-vi" }

Pakete, die du sicherstellen möchtest, dass sie über brew install installiert werden. Du kannst optional Flags zur Installation hinzufügen, indem du eine install_options-Eigenschaft festlegst. Wenn diese verwendet wird, musst du auch den name für das Paket festlegen. Standardmäßig werden keine Pakete installiert (homebrew_installed_packages: []).

homebrew_uninstalled_packages: []

Pakete, die du sicherstellen möchtest, dass sie deinstalliert werden.

homebrew_upgrade_all_packages: false

Ob Homebrew und alle von Homebrew installierten Pakete aktualisiert werden sollen. Wenn du bevorzugst, Pakete manuell über brew-Befehle zu aktualisieren, lasse dies auf false.

homebrew_taps:
  - homebrew/core
  - { name: my_company/internal_tap, url: 'https://example.com/path/to/tap.git' }

Taps, die du sicherstellen möchtest, dass Homebrew hinzugefügt wurde.

homebrew_cask_apps:
  - firefox
  - { name: virtualbox, install_options:"debug,appdir=/Applications" }

Apps, die du über cask installiert haben möchtest. Suche nach beliebten Apps, um zu sehen, ob sie über Cask verfügbar sind. Cask wird nicht verwendet, wenn es nicht in der Liste der Taps in der homebrew_taps-Variable enthalten ist. Du kannst optional Flags zur Installation hinzufügen, indem du eine install_options-Eigenschaft festlegst. Wenn diese verwendet wird, musst du auch den name für das Paket festlegen. Standardmäßig werden keine Cask-Apps installiert (homebrew_cask_apps: []).

homebrew_cask_accept_external_apps: true

Der Standardwert ist false und würde dazu führen, dass die Verarbeitung der gesamten Rolle (und des Ansible-Spiels) unterbrochen wird, falls eine App in homebrew_cask_apps bereits ohne cask installiert ist. Dies ist geeignet für ein eng verwaltetes System.

Gib stattdessen true an, wenn du bevorzugst, stillschweigend fortzufahren, falls eine App bereits ohne cask installiert ist. Generell gut für ein System, das sowohl mit cask / Ansible als auch mit anderen Installationsmethoden (wie manuell) gleichzeitig verwaltet wird.

homebrew_cask_uninstalled_apps:
  - google-chrome

Apps, die du sicherstellen möchtest, dass sie deinstalliert werden.

homebrew_cask_appdir: /Applications

Verzeichnis, in dem Anwendungen, die über cask installiert werden, installiert werden sollen.

homebrew_use_brewfile: true

Ob über eine Brewfile installiert werden soll. Wenn ja, musst du den homebrew/bundle-Tap installieren, was innerhalb von homebrew_taps erfolgen kann.

homebrew_brewfile_dir: '~'

Das Verzeichnis, in dem sich deine Brewfile befindet.

homebrew_clear_cache: false

Setze auf true, um den Homebrew-Cache nach der Installation neuer Software zu entfernen.

homebrew_user: "{{ ansible_user_id }}"

Der Benutzer, unter dem du Homebrew installieren möchtest.

homebrew_group: "{{ ansible_user_gid }}"

Die Gruppe, die du während der Installation von Homebrew verwenden möchtest.

homebrew_folders_additional: []

Zusätzliche Ordner innerhalb von homebrew_prefix, für die du sicherstellen möchtest, dass die Besitzverhältnisse für Benutzer/Gruppe von Homebrew korrekt sind.

Abhängigkeiten

Beispiel Playbook

- hosts: localhost
  vars:
    homebrew_installed_packages:
      - mysql
  roles:
    - geerlingguy.homebrew

Siehe das Verzeichnis tests/local-testing für ein Beispiel, wie man diese Rolle über Ansible's local Verbindung ausführt. Siehe auch: Mac Development Ansible Playbook.

Lizenz

MIT

Autoreninformationen

Diese Rolle wurde 2014 von Jeff Geerling, Autor von Ansible for DevOps erstellt.

Maintainer(s)

Installieren
ansible-galaxy install geerlingguy.homebrew
Lizenz
mit
Downloads
2.4M
Besitzer
Father, author, developer, maker. Sometimes called "an inflammatory enigma". #stl #drupal #ansible #k8s #raspberrypi #crohns