homebrew
Ansible Роль: Homebrew (ПЕРЕМЕЩЕНО)
ПЕРЕМЕЩЕНО: Эта роль была перемещена в коллекцию geerlingguy.mac
. Пожалуйста, смотрите эту проблему для руководства по миграции и дополнительной информации.
Устанавливает Homebrew на MacOS и настраивает пакеты, tap'ы и приложения cask в соответствии с предоставленными переменными.
Требования
Нет.
Переменные Роли
Доступные переменные перечислены ниже, вместе с их значениями по умолчанию (см. defaults/main.yml
):
homebrew_repo: https://github.com/Homebrew/brew
GitHub репозиторий для Homebrew core.
homebrew_prefix: "{{ (ansible_machine == 'arm64') | ternary('/opt/homebrew', '/usr/local') }}"
homebrew_install_path: "{{ homebrew_prefix }}/Homebrew"
Путь, по которому будет установлен Homebrew (homebrew_prefix
— родительская директория). Рекомендуется оставить значение по умолчанию, иначе могут возникнуть странные проблемы с Homebrew. Если вы измените эту переменную, также следует вручную создать символическую ссылку на /usr/local, чтобы все работало так, как ожидает Homebrew.
homebrew_brew_bin_path: /usr/local/bin
Путь, по которому будет установлен brew
.
homebrew_installed_packages:
- ssh-copy-id
- pv
- { name: vim, install_options: "with-luajit,override-system-vi" }
Пакеты, которые вы хотите установить через brew install
. Вы можете по желанию добавить флаги к установке, установив свойство install_options
, и если оно используется, необходимо явно указать name
для пакета. По умолчанию не устанавливаются пакеты (homebrew_installed_packages: []
).
homebrew_uninstalled_packages: []
Пакеты, которые вы хотите удалить.
homebrew_upgrade_all_packages: false
Следует ли обновить Homebrew и все пакеты, установленные с помощью Homebrew. Если вы предпочитаете вручную обновлять пакеты с помощью команд brew
, оставьте это значение как false
.
homebrew_taps:
- homebrew/core
- { name: my_company/internal_tap, url: 'https://example.com/path/to/tap.git' }
Tap'ы, которые вы хотите, чтобы Homebrew добавил.
homebrew_cask_apps:
- firefox
- { name: virtualbox, install_options:"debug,appdir=/Applications" }
Приложения, которые вы хотите установить через cask
. Поиск популярных приложений, чтобы увидеть, доступны ли они для установки через Cask. Cask не будет использоваться, если он не включен в список tap'ов в переменной homebrew_taps
. Вы можете по желанию добавить флаги к установке, установив свойство install_options
, и если оно используется, необходимо явно указать name
для пакета. По умолчанию приложения Cask не будут установлены (homebrew_cask_apps: []
).
homebrew_cask_accept_external_apps: true
Значение по умолчанию — false
, что приведет к прерыванию дальнейшей обработки всей роли (и плейбука ansible), если любое приложение из homebrew_cask_apps
уже установлено без cask
. Хорошо для строго управляемой системы.
Укажите true
, если вы предпочитаете продолжать без прерываний, если любое приложение уже установлено без cask
. Обычно это хорошо для системы, которая управляется как с помощью cask
/ Ansible
, так и другими методами установки (например, вручную) одновременно.
homebrew_cask_uninstalled_apps:
- google-chrome
Приложения, которые вы хотите удалить.
homebrew_cask_appdir: /Applications
Директория, в которую должны устанавливаться приложения, установленные через cask
.
homebrew_use_brewfile: true
Следует ли устанавливать через Brewfile. Если да, вам нужно будет установить tap homebrew/bundle
, что можно сделать в рамках homebrew_taps
.
homebrew_brewfile_dir: '~'
Директория, в которой находится ваш Brewfile.
homebrew_clear_cache: false
Установите в true
, чтобы удалить кэш Homebrew после установки нового программного обеспечения.
homebrew_user: "{{ ansible_user_id }}"
Пользователь, от имени которого вы хотите установить Homebrew.
homebrew_group: "{{ ansible_user_gid }}"
Группа, которую вы хотите использовать при установке Homebrew.
homebrew_folders_additional: []
Любые дополнительные папки внутри homebrew_prefix
, для которых нужно обеспечить права собственности пользователя/группы Homebrew.
Зависимости
Пример Плейбука
- hosts: localhost
vars:
homebrew_installed_packages:
- mysql
roles:
- geerlingguy.homebrew
Смотрите директорию tests/local-testing
для примера выполнения этой роли через
локальное соединение Ansible. Также смотрите:
Плейбук по разработке на Mac.
Лицензия
Информация об Авторе
Эта роль была создана в 2014 году Джеффом Гирлингом, автором Ansible для DevOps.
Поддерживающие лица
ansible-galaxy install geerlingguy/ansible-role-homebrew