Ansible playbooks for charlesreid1.com infrastructure. https://charlesreid1-docker.github.io/charlesreid1-ansible
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
Charles Reid e58a08b2bf remove unused subdomain var names 2 years ago
docs fix toc 2 years ago
group_vars/all remove unused subdomain var names 2 years ago
mkdocs-material@b0c6890853 add mkdocs-material submodule 3 years ago
roles remove subdomain letsencrypt tasks from pod-charlesreid1 role 2 years ago
.gitignore ignore .retry files 3 years ago
.gitmodules add mkdocs-material submodule 3 years ago
LICENSE add mit license 3 years ago
Readme.md update readme 3 years ago
TODO add crusty todo notes 2 years ago
Vagrantfile add support files for vagrant boxes 3 years ago
base.yml update all tags, and tags documentation 3 years ago
do.cfg re-add do hosts 2 years ago
dohosts re-add do hosts 2 years ago
linode.cfg add linode hosts file and config file 2 years ago
linodehosts add linode hosts file and config file 2 years ago
mkdocs.yml add linode docs page to mkdocs.yml 2 years ago
podcharlesreid1.yml remove unused subdomains 2 years ago
provision.yml add bunch of fixes, working pod-charlesreid1 on DO 3 years ago
vagrant.cfg letsencrypt still broken... snakeoil certs problem... 3 years ago
vagranthosts [WORKING ON VAGRANT] Update and fix all roles 3 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
pod-webhooks https://git.charlesreid1.com/docker/pod-webhooks
pod-bots https://git.charlesreid1.com/docker/pod-bots

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)
podwebhooks.yml (TBA) Playbook to install and run the webhooks pod (https://git.charlesreid1.com/docker/pod-webhooks)
podbots.yml (TBA) Playbook to install and run the bot pod (https://git.charlesreid1.com/docker/pod-bots)
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

Base Playbook Roles

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

Role Name Description
init-root Prepare root user account
init-nonroot Prepare nonroot user account(s)
install-stuff Install stuff with aptitude
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
dotfiles Install and configure dotfiles for nonroot user

Pod-Specific Roles

The following roles are run by playbooks specific to the respective docker pod.

Role Name Description
pod-charlesreid1 Role specific to the charlesreid1.com docker pod
pod-webhooks Role specific to {hooks,pages}.charlesreid1.com docker pod
pod-bots Role specific to bots docker pod

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.