Last active
October 29, 2024 13:33
-
-
Save mrlesmithjr/f3c15fdd53020a71f55c2032b8be2eda to your computer and use it in GitHub Desktop.
Install MacOS Homebrew Packages With Ansible
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
--- | |
- name: Install MacOS Packages | |
hosts: localhost | |
become: false | |
vars: | |
brew_cask_packages: | |
- atom | |
- docker | |
- dropbox | |
- firefox | |
- google-chrome | |
- google-drive | |
- google-hangouts | |
- iterm2 | |
- keepassx | |
- kodi | |
- lastpass | |
- macvim | |
- royal-tsx | |
- skype | |
- slack | |
- sling | |
- spotify | |
- sublime-text | |
- vagrant | |
- vagrant-manager | |
- virtualbox | |
- virtualbox-extension-pack | |
- visual-studio-code | |
- vmware-fusion | |
brew_packages: | |
- autoconf | |
- bash-completion | |
- boot2docker | |
- consul | |
- docker-compose | |
- docker-machine | |
- doxygen | |
- git | |
- git-lfs | |
- go | |
- jq | |
- nmap | |
- nomad | |
- openssl | |
- packer | |
- pyenv | |
- python | |
- rancher-compose | |
- rbenv | |
- ruby-build | |
- ssh-copy-id | |
- terraform | |
- terraform-inventory | |
- terraform-provisioner-ansible | |
- tmux | |
- tree | |
- vault | |
- wget | |
- zsh | |
- zsh-syntax-highlighting | |
install_homebrew_if_missing: false | |
# python_modules: | |
# - configparser | |
# - pylint | |
# - virtualenv | |
upgrade_homebrew_packages: false | |
pre_tasks: | |
- name: Ensuring Homebrew Is Installed | |
stat: | |
path: /usr/local/bin/brew | |
register: homebrew_check | |
- name: Fail If Homebrew Is Not Installed and install_homebrew_if_missing Is False | |
fail: | |
msg: Homebrew is missing...Install from http://brew.sh/ | |
when: | |
- not homebrew_check.stat.exists | |
- not install_homebrew_if_missing | |
- name: Installing Homebrew | |
shell: /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)" | |
when: | |
- not homebrew_check.stat.exists | |
- install_homebrew_if_missing | |
tasks: | |
- name: Updating Homebrew | |
homebrew: | |
update_homebrew: true | |
when: homebrew_check.stat.exists | |
- name: Upgrading Homebrew Packages | |
homebrew: | |
upgrade_all: "{{ upgrade_homebrew_packages }}" | |
register: result | |
until: result is successful | |
when: homebrew_check.stat.exists | |
- name: Installing Homebrew Cask Packages | |
homebrew_cask: | |
name: "{{ brew_cask_packages }}" | |
state: present | |
register: result | |
until: result is successful | |
when: homebrew_check.stat.exists | |
- name: Installing Homebrew Packages | |
homebrew: | |
name: "{{ brew_packages }}" | |
state: present | |
register: result | |
until: result is successful | |
when: homebrew_check.stat.exists | |
# - name: Installing Python Modules | |
# pip: | |
# name: "{{ item }}" | |
# state: present | |
# with_items: '{{ python_modules }}' |
@stywen This is no longer maintained here but you may find some use in the following repos:
nice idea here .. kudos
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
fatal: [10.196.6.156]: FAILED! => {
"ansible_job_id": "72073781856.41171",
"changed": true,
"cmd": "/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)\"",
"delta": "0:00:00.206795",
"end": "2022-04-09 03:08:31.683349",
"finished": 1,
"invocation": {
"module_args": {
"_raw_params": "/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)\"",
"_uses_shell": true,
"argv": null,
"chdir": null,
"creates": null,
"executable": null,
"removes": null,
"stdin": "P@ssword123",
"stdin_add_newline": true,
"strip_empty_ends": true,
"warn": true
}
},
"msg": "non-zero return code",
"rc": 1,
"start": "2022-04-09 03:08:31.476554",
"stderr": "Don't run this as root!",
"stderr_lines": [
"Don't run this as root!"
],
"stdout": "Warning: Running in non-interactive mode because
stdin
is not a TTY.\n==> Checking forsudo
access (which may request your password)...","stdout_lines": [
"Warning: Running in non-interactive mode because
stdin
is not a TTY.","==> Checking for
sudo
access (which may request your password)..."]
}
PLAY RECAP ***********************************************************************************************************
I am getting above error while installing