An Ansible provisioner for Raspberry Pi Zero W
More Details: http://docs.ansible.com/ansible/latest/intro_installation.html#latest-releases-via-pip
sudo easy_install pip
sudo pip install ansible
In the vars/user.yml
file you can copy and overwrite any variables listed in the vars/main.yml
file. Most importantly, double check that the ssh key path and wifi connection details are correct for your setup. See all recommended variables below:
Variable | Default | Description |
---|---|---|
user | Content from cell 1 | Content from cell 2 |
ssh_directory | /home/pi/.ssh |
The directory the install will create to store your authorized_key |
nvm_version | 0.33.2 |
Version of node version manager |
node_version | node |
Node version. NVM aliases like node or stable are also accepted. |
ssh_key_path | ~/.ssh/id_rsa.pub |
The path on your LOCAL machine where your public ssh key can be found. This will be copied to the pi as an authorized_key |
dont_show_wifi_connections | True |
Determines if wifi details will be logged to console during setup |
wifi | { ssid: 'testaddress', password: 'testpass' } |
An array of ssid and password combinations. Find available ssid using `sudo iwlist wlan0 scan |
apt_packages | git & vim |
apt-get packages you would like installed. Each package should be added on its own line (see example below). |
In var/user.yml
node_version: 8.2.0
wifi:
- { ssid: 'myactualssid', password: 'mywifipassword' }
- { ssid: 'anotherwifissid', password: 'anotherpassword' }
apt_packages
- git
- vim
cd
into repository and run make
to run the initial install. You will be prompted to enter your ssh password. By default, this should be raspberry
. If you already have an ssh key setup or are running a subsequent time, use make setup
. Other make commands and manual ansible commands if that's how you roll:
Ansible Command | Make Command | Use |
---|---|---|
ansible-playbook setup.yml --ask-pass |
make or make all |
Runs the full playbook. Should be used on the initial setup. For subsequent runs, use make setup so that you aren't prompted for a password. |
ansible-playbook setup.yml |
make setup |
Runs the full install, but does not require a manual ssh password. Will error if run initially. |
ansible-playbook setup.yml --tags=wifi |
make wifi |
Runs only the wifi section of the playbook. Great for quickly adding one or more wifi connections. |