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.
81 lines
2.2 KiB
81 lines
2.2 KiB
---
|
|
# deploy a awful-n host from scratch.
|
|
|
|
# boot strap server
|
|
- name: Install aptitude using apt
|
|
apt: name=aptitude state=latest update_cache=yes force_apt_get=yes
|
|
|
|
- name: Install required system packages for docker install
|
|
apt: name={{ item }} state=latest update_cache=yes
|
|
loop: [ 'apt-transport-https', 'ca-certificates', 'software-properties-common' ]
|
|
|
|
- name: Add Docker GPG apt Key
|
|
apt_key:
|
|
url: https://download.docker.com/linux/debian/gpg
|
|
state: present
|
|
|
|
- name: Add Docker Repository
|
|
apt_repository:
|
|
repo: deb https://download.docker.com/linux/ubuntu bionic stable
|
|
state: present
|
|
|
|
- name: Update apt
|
|
apt: update_cache=yes
|
|
|
|
- name: Install required system packages
|
|
apt: name={{ sys_packages }} state=latest
|
|
|
|
- name: add 'josiah' to docker group
|
|
user:
|
|
name='josiah'
|
|
groups=docker
|
|
append=yes
|
|
|
|
- name: Init a new swarm with default parameters
|
|
docker_swarm:
|
|
state: present
|
|
|
|
- name: ensure the app folders exist
|
|
file: state=directory path={{ item }} owner=josiah group=josiah mode=0700
|
|
loop: [ '/home/josiah/apps/mojo/', '/home/josiah/apps/arke/', '/home/josiah/apps/znc/', '/home/josiah/apps/awful/' ]
|
|
|
|
- name: allow for pretty json errors
|
|
pip:
|
|
name: jsondiff
|
|
|
|
# Update the app git repos
|
|
- name: update the mojo git repo
|
|
git:
|
|
repo: 'https://git.awful.club/hosted/mojojojo-bot.git'
|
|
dest: /home/josiah/apps/mojo/
|
|
version: master
|
|
|
|
- name: update the arke git repo
|
|
git:
|
|
repo: 'https://git.awful.club/hosted/arke.git'
|
|
dest: /home/josiah/apps/arke/
|
|
version: master
|
|
|
|
- name: update the znc git repo
|
|
git:
|
|
repo: 'https://git.awful.club/hosted/znc-docker.git'
|
|
dest: /home/josiah/apps/znc/
|
|
version: master
|
|
|
|
- name: copy over awful-All config files
|
|
template:
|
|
src: "{{ item.src }}"
|
|
dest: "{{ item.dest }}"
|
|
mode: 0777
|
|
with_items:
|
|
- {src: 'awful-compose.yml', dest: '/home/josiah/apps/awful/docker-compose.yml'}
|
|
- {src: 'traefik.yml', dest: '/home/josiah/apps/awful/traefik.yml'}
|
|
- {src: 'awful.club.html', dest: '/home/josiah/apps/awful/awful.club.html'}
|
|
|
|
- name: Deploy awful stack
|
|
docker_stack:
|
|
state: present
|
|
name: awfulAll
|
|
compose:
|
|
- /home/josiah/apps/awful/docker-compose.yml
|