Ansible playbooks for charlesreid1.com infrastructure. https://charlesreid1-docker.github.io/charlesreid1-ansible
 
 
 
Charles Reid 97f50bf4e2 no solarized color scheme 4 years ago
docs update ansible vault command 5 years ago
group_vars/all update group_vars 4 years ago
mkdocs-material@b0c6890853 add mkdocs-material submodule 6 years ago
roles no solarized color scheme 4 years ago
secrets add encrypted secrets 5 years ago
.gitignore add non-encrypted contents of secrets folder to gitignore 5 years ago
.gitmodules add postfix role 5 years ago
LICENSE add mit license 6 years ago
Readme.md mention bot playbook in readme 5 years ago
Secrets.md add notes on secrets 5 years ago
TODO udpate todo list 5 years ago
Vagrantfile add support files for vagrant boxes 6 years ago
barebones.yml add dotfiles to barebones 5 years ago
base.yml update firewall 4 years ago
bots.md add bots playbook and notes 5 years ago
bots.yml typo fix 5 years ago
do.cfg re-add do hosts 5 years ago
dockprom.yml update dockprom playbook to use machine_name var (still hard-coding vpn ip addr) 4 years ago
dohosts re-add do hosts 5 years ago
firewall.yml add firewall role 4 years ago
linode.cfg run commands as regular user, not root 4 years ago
linodehosts scrub local and linode hosts 4 years ago
local.cfg update local cfg file 4 years ago
localhosts update localhosts 4 years ago
memo add memo with notes on what to update in docs 5 years ago
mkdocs.yml add linode docs page to mkdocs.yml 5 years ago
podcharlesreid1.yml update server names that podcharlesreid1.yml playbook applies to 5 years ago
postfix.yml fix domain in postfix 5 years ago
provision.yml add an apt-get update to the provision step 5 years ago
uptime.yml split uptime into separate playbook 5 years ago
vagrant.cfg letsencrypt still broken... snakeoil certs problem... 6 years ago
vagranthosts [WORKING ON VAGRANT] Update and fix all roles 6 years ago

Readme.md

charlesreid1-ansible

Ansible playbooks for charlesreid1.com infrastructure.

Table of Contents

Docker Pods

These docker pods are collections of related charlesreid1.com services. The Ansible playbooks prepare remote nodes so they are ready to run these docker pods.

Pod Link
pod-charlesreid1 https://git.charlesreid1.com/docker/pod-charlesreid1

Playbooks

There is one playbook per docker pod, plus a base playbook and a provision playbook.

Playbook Description
podcharlesreid1.yml Playbook to install and run the charlesreid1.com docker pod (https://git.charlesreid1.com/docker/pod-charlesreid1)
bots.yml Playbook to install and run the apollo, ginsberg, and milton bot flocks. See https://bots.charlesreid1.com.
base.yml Base playbook run by all of the pod playbooks above.
provision.yml Playbook to provision new Ubuntu machines with /usr/bin/python.

Roles

Playbook Roles

The following roles carry out groups of tasks for setting up the base machine to run charlesreid1.com infrastructure.

Base roles:

Role Name Description
init-root Prepare root user account
init-nonroot Prepare nonroot user account(s)
dotfiles Install and configure dotfiles for nonroot user
install-stuff Install stuff with aptitude
letsencrypt Install letsencrypt
postfix Install postfix mail server
pyenv Install pyenv for nonroot user
goenv Install goenv for nonroot user
sshkeys Set up ssh keys for all users
vim Set up vim for nonroot user

Machine-specific roles:

Role Name Description
bots Install and run the apollo, ginsberg, and milton bot flocks. See https://bots.charlesreid1.com.
pod-charlesreid1 Install the charlesreid1.com pod https://github.com/charlesreid1-docker/pod-charlesreid1).
uptime Install the uptime bot (https://github.com/charlesreid1-bots/uptime).

Getting Started with Playbooks

Documentation Page Description
docs/index.md Documentation index
docs/quickstart.md Quick start for the impatient (uses Vagrant)
docs/ansible_do.md Guide for running charlesreid1.com playbooks on Digital Ocean
docs/ansible_vagrant.md Guide for running charlesreid1.com playbooks on Vagrant

See docs/ansible_playbooks.md for a list of all playbooks in this directory and how to run them, as well as a list of all tags.