This collection includes helpful Ansible roles and content to help with macOS automation. For a good example of the collection's usage, see the Mac Dev Playbook.
Roles included in this collection (click on the link to see the role's README and documentation):
buluma.mac.homebrew
(documentation)buluma.mac.mas
(documentation)buluma.mac.dock
(documentation)
Install via Ansible Galaxy:
ansible-galaxy collection install buluma.mac
Or include this collection in your playbook's requirements.yml
file:
---
collections:
- name: buluma.mac
For a real-world example, see my Mac Dev Playbook's requirements file.
Requires separate installation of the elliotweiser.osx-command-line-tools
role. Because Ansible collections are not able to depend on roles, you will need to make sure that role is installed either by manually installing it with the ansible-galaxy
command, or adding it under the roles
section of your requirements.yml
file:
---
roles:
- name: elliotweiser.osx-command-line-tools
collections:
- name: buluma.mac
Here's an example playbook which installs some Mac Apps (assuming you are signed into the App Store), CLI tools via Homebrew, and Cask Apps using Homebrew:
- hosts: localhost
connection: local
gather_facts: false
vars:
mas_installed_app_ids:
- 424389933 # Final Cut Pro
- 497799835 # Xcode
homebrew_installed_packages:
- node
- nvm
- redis
- ssh-copy-id
- pv
homebrew_cask_apps:
- docker
- firefox
- google-chrome
- vlc
roles:
- buluma.mac.homebrew
- buluma.mac.mas
For a real-world usage example, see my Mac Dev Playbook.
See the full documentation for each role in the role's README, linked above.
Apache-2.0
This collection was created by Michael Buluma.