Documentation

homebrew - Package manager for Homebrew

Synopsis

  • Manages Homebrew packages

Options

parameter required default choices comments
install_options
(added in 1.4)
no
options flags to install a package

aliases: options
name
no None
name of package to install/remove

aliases: pkg, package, formula
path
no /usr/local/bin
':' separated list of paths to search for 'brew' executable. Since A package (formula in homebrew parlance) location is prefixed relative to the actual path of brew command, providing an alternative brew path enables managing different set of packages in an alternative location in the system.
state
no present
  • head
  • latest
  • present
  • absent
  • linked
  • unlinked
state of the package
update_homebrew
no
  • yes
  • no
update homebrew itself first

aliases: update-brew
upgrade_all
no
  • yes
  • no
upgrade all homebrew packages

aliases: upgrade

Examples

# Install formula foo with 'brew' in default path (C(/usr/local/bin))
- homebrew:
    name: foo
    state: present

# Install formula foo with 'brew' in alternate path C(/my/other/location/bin)
- homebrew:
    name: foo
    path: /my/other/location/bin
    state: present

# Update homebrew first and install formula foo with 'brew' in default path
- homebrew:
    name: foo
    state: present
    update_homebrew: yes

# Update homebrew first and upgrade formula foo to latest available with 'brew' in default path
- homebrew:
    name: foo
    state: latest
    update_homebrew: yes

# Update homebrew and upgrade all packages
- homebrew:
    update_homebrew: yes
    upgrade_all: yes

# Miscellaneous other examples
- homebrew:
    name: foo
    state: head

- homebrew:
    name: foo
    state: linked

- homebrew:
    name: foo
    state: absent

- homebrew:
    name: foo,bar
    state: absent

- homebrew:
    name: foo
    state: present
    install_options: with-baz,enable-debug

Status

This module is flagged as preview which means that it is not guaranteed to have a backwards compatible interface.

Support

This module is community maintained without core committer oversight.

For more information on what this means please read Module Support

For help in developing on modules, should you be so inclined, please read Community Information & Contributing, Testing Ansible and Developing Modules.