2020-11-15 19:37:58 +00:00
|
|
|
---
|
2023-07-28 14:47:04 +00:00
|
|
|
# deploy a halo host
|
2020-11-15 19:37:58 +00:00
|
|
|
|
2023-07-28 14:47:04 +00:00
|
|
|
# boot strap server
|
|
|
|
- name: Install aptitude using apt
|
|
|
|
apt: name=aptitude state=latest update_cache=yes force_apt_get=yes
|
2020-11-15 19:37:58 +00:00
|
|
|
|
2023-07-28 14:47:04 +00:00
|
|
|
- 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']
|
2020-05-16 23:29:26 +00:00
|
|
|
|
2023-07-28 14:47:04 +00:00
|
|
|
- name: Add Docker GPG apt Key
|
|
|
|
apt_key:
|
|
|
|
url: https://download.docker.com/linux/debian/gpg
|
2020-05-16 23:29:26 +00:00
|
|
|
state: present
|
|
|
|
|
2023-07-28 14:47:04 +00:00
|
|
|
- name: Add Docker Repository
|
|
|
|
apt_repository:
|
|
|
|
repo: deb https://download.docker.com/linux/ubuntu bionic stable
|
2020-05-16 23:29:26 +00:00
|
|
|
state: present
|
|
|
|
|
2023-07-28 14:47:04 +00:00
|
|
|
- name: Add tailscale GPG apt Key
|
2020-11-14 04:53:03 +00:00
|
|
|
apt_key:
|
2023-07-28 14:47:04 +00:00
|
|
|
url: https://pkgs.tailscale.com/stable/debian/bullseye.noarmor.gpg
|
2020-11-14 04:53:03 +00:00
|
|
|
state: present
|
|
|
|
|
2023-07-28 14:47:04 +00:00
|
|
|
- name: Add tailscsale Repository
|
2020-11-14 04:53:03 +00:00
|
|
|
apt_repository:
|
2023-07-28 14:47:04 +00:00
|
|
|
repo: deb https://pkgs.tailscale.com/stable/debian bullseye main
|
|
|
|
state: present
|
2020-11-14 04:53:03 +00:00
|
|
|
|
2020-05-16 23:29:26 +00:00
|
|
|
- name: Update apt
|
|
|
|
apt: update_cache=yes
|
|
|
|
|
|
|
|
- name: Install required system packages
|
|
|
|
apt: name={{ sys_packages }} state=latest
|
|
|
|
|
2023-07-28 14:47:04 +00:00
|
|
|
- name: add 'josiah' to docker group
|
|
|
|
user:
|
|
|
|
name='josiah'
|
|
|
|
groups=docker
|
|
|
|
append=yes
|
|
|
|
|
|
|
|
- name: install python packages
|
|
|
|
pip:
|
|
|
|
name: ["jsondiff", "docker"]
|
|
|
|
|
|
|
|
# init new swarm, set up
|
|
|
|
- name: Init a new swarm with default parameters
|
|
|
|
docker_swarm:
|
|
|
|
state: present
|
|
|
|
advertise_addr: "100.76.26.36"
|
|
|
|
|
|
|
|
- name: copy over awful-All config files
|
|
|
|
template:
|
|
|
|
src: "{{ item.src }}"
|
|
|
|
dest: "{{ item.dest }}"
|
|
|
|
mode: 0777
|
|
|
|
with_items:
|
|
|
|
- {src: 'home-compose.yml', dest: '/home/josiah/apps/home-compose.yml'}
|
2020-11-14 04:53:03 +00:00
|
|
|
|
2023-07-28 14:47:04 +00:00
|
|
|
# you have to force remove the whole stack for some changes to take effect
|
|
|
|
# I have no idea which ones, but this solved a problem for me with traefik conifgs + multi networks.
|
|
|
|
- name: Remove the home-net stack
|
|
|
|
block:
|
|
|
|
- name: Remove the home-net stack
|
|
|
|
docker_stack:
|
|
|
|
state: absent
|
|
|
|
name: halo
|
|
|
|
compose:
|
|
|
|
- /home/josiah/apps/home-compose
|
|
|
|
- name: Pause so the network gets deleted too
|
|
|
|
pause:
|
|
|
|
seconds: 15
|
|
|
|
|
|
|
|
- name: Redpeploy
|
|
|
|
docker_stack:
|
|
|
|
state: present
|
|
|
|
name: home-net
|
|
|
|
compose:
|
|
|
|
- /home/josiah/apps/home-compose.yml
|