Skip to content

Instantly share code, notes, and snippets.

@mrlesmithjr
Last active October 29, 2024 13:33
Show Gist options
  • Save mrlesmithjr/f3c15fdd53020a71f55c2032b8be2eda to your computer and use it in GitHub Desktop.
Save mrlesmithjr/f3c15fdd53020a71f55c2032b8be2eda to your computer and use it in GitHub Desktop.
Install MacOS Homebrew Packages With Ansible
---
- 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 }}'
@ssk512
Copy link

ssk512 commented Apr 9, 2022

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 for sudo 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

@mrlesmithjr
Copy link
Author

@stywen This is no longer maintained here but you may find some use in the following repos:

@rodhash
Copy link

rodhash commented Feb 12, 2023

nice idea here .. kudos

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment