Fixes #85: Make it easier to use this playbook to manage remote Macs.

This commit is contained in:
Jeff Geerling 2020-10-07 10:24:40 -05:00
parent 2dc641d81b
commit 3376c1ae1f
3 changed files with 19 additions and 12 deletions

View file

@ -6,7 +6,7 @@
This playbook installs and configures most of the software I use on my Mac for web and software development. Some things in macOS are slightly difficult to automate, so I still have some manual installation steps, but at least it's all documented here.
This is a work in progress, and is mostly a means for me to document my current Mac's setup. I'll be evolving this set of playbooks over time.
This is a work in progress, and is mostly a means for me to document my current Mac's setup. I'll be evolving this playbook over time.
*See also*:
@ -21,10 +21,25 @@ This is a work in progress, and is mostly a means for me to document my current
2. [Install Ansible](http://docs.ansible.com/intro_installation.html).
3. Clone this repository to your local drive.
4. Run `$ ansible-galaxy install -r requirements.yml` inside this directory to install required Ansible roles.
5. Run `ansible-playbook main.yml -i inventory -K` inside this directory. Enter your account password when prompted.
5. Run `ansible-playbook main.yml -i inventory --ask-become-pass` inside this directory. Enter your account password when prompted.
> Note: If some Homebrew commands fail, you might need to agree to Xcode's license or fix some other Brew issue. Run `brew doctor` to see if this is the case.
### Use with a remote Mac
You can use this playbook to manage other Macs as well; the playbook doesn't even need to be run from a Mac at all! If you want to manage a remote Mac, either another Mac on your network, or a hosted Mac like the ones from [MacStadium](https://www.macstadium.com), you just need to make sure you can connect to it with SSH:
1. (On the Mac you want to connect to:) Go to System Preferences > Sharing.
2. Enable 'Remote Login'.
Then edit the `inventory` file in this repository and change the line that starts with `127.0.0.1` to:
```
[ip address or hostname of mac] ansible_user=[mac ssh username]
```
If you need to supply an SSH password (if you don't use SSH keys), make sure to pass the `--ask-pass` parameter to the `ansible-playbook` command.
### Running a specific set of tagged tasks
You can filter which part of the provisioning process to run by specifying a set of tags using `ansible-playbook`'s `--tags` flag. The tags available are `dotfiles`, `homebrew`, `mas`, `extra-packages` and `osx`.
@ -133,13 +148,6 @@ It's my hope that I can get the rest of these things wrapped up into Ansible pla
6. Set mouse tracking rate.
7. Configure extra Mail and/or Calendar accounts (e.g. Google, Exchange, etc.).
### Applications/packages to be added:
These are mostly direct download links, some are more difficult to install because of custom installers or other nonstandard install quirks:
- [iShowU HD](http://www.shinywhitebox.com/downloads/iShowU_HD_2.3.20.dmg)
- [Adobe Creative Cloud](http://www.adobe.com/creativecloud.html)
### Configuration to be added:
- I have vim configuration in the repo, but I still need to add the actual installation:

View file

@ -1,2 +1,2 @@
[localhost]
127.0.0.1
[all]
127.0.0.1 ansible_connection=local

View file

@ -1,6 +1,5 @@
---
- hosts: all
connection: local
vars_files:
- default.config.yml