geerlingguy.homebrew

Ansible 角色:Homebrew(已移动)

已移动:该角色已移至 geerlingguy.mac 集合。请查看 此问题 以获取迁移指南和更多信息。

MIT 许可证 Galaxy 角色 下载量 持续集成

在 MacOS 上安装 Homebrew,并根据提供的变量配置软件包、tap 和 cask 应用。

需求

无。

角色变量

可用的变量列在下面,包含默认值(请参见 defaults/main.yml):

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

Homebrew 核心的 GitHub 仓库。

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' }

您希望 Homebrew 确保已添加的 tap。

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

您希望通过 cask 安装的应用程序。搜索 受欢迎的应用程序,查看它们是否可通过 Cask 安装。如果 homebrew_taps 变量的 tap 列表中未包含 Cask,则不会使用 Cask。您可以通过设置 install_options 属性来可选地添加安装标志,如果使用此选项,您还需要明确设置软件包的 name。默认情况下,不会安装任何 Cask 应用(homebrew_cask_apps: [])。

homebrew_cask_accept_external_apps: true

默认值为 false,如果在 homebrew_cask_apps 中列出的任何应用程序已经安装且未使用 cask,则会导致该角色(以及 Ansible play)的后续处理被中断。适合紧密管理的系统。

如果希望在任何应用程序已经安装且未使用 cask 时静默继续,请将其设置为 true。一般适合同时使用 cask / Ansible 以及其他安装方法(如手动)进行管理的系统。

homebrew_cask_uninstalled_apps:
  - google-chrome

您希望确保被 卸载 的应用程序。

homebrew_cask_appdir: /Applications

通过 cask 安装的应用程序应安装到的目录。

homebrew_use_brewfile: true

是否通过 Brewfile 安装。如果是,您需要安装 homebrew/bundle tap,可以在 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 用户/组的所有权。

依赖

示例 Playbook

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

请参见 tests/local-testing 目录中的示例,了解如何通过 Ansible 的 local 连接运行此角色。另见: Mac 开发 Ansible Playbook

许可证

MIT

作者信息

该角色由 Jeff Geerling 在 2014 年创建,他是 Ansible for DevOps 的作者。

维护者

安装
ansible-galaxy install geerlingguy.homebrew
许可证
mit
下载
2.4M
拥有者
Father, author, developer, maker. Sometimes called "an inflammatory enigma". #stl #drupal #ansible #k8s #raspberrypi #crohns