summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAdam Olech <nddr89@gmail.com>2021-08-04 15:19:40 +0200
committerAdam Olech <nddr89@gmail.com>2021-08-04 15:19:40 +0200
commit2bbcac456f6667ca1fcb5320182bb5836b4a0205 (patch)
treeb114b79c28d8beaeb9d9c8249ac3ad04594173bb
parent221ec0be3cc7aa5fd5310fa3a7ca019fcdabb9b3 (diff)
Add some long pending changesHEADmaster
-rw-r--r--ep_cloud.yml63
1 files changed, 61 insertions, 2 deletions
diff --git a/ep_cloud.yml b/ep_cloud.yml
index 6f0c97c..ed5430b 100644
--- a/ep_cloud.yml
+++ b/ep_cloud.yml
@@ -2,6 +2,8 @@
- name: Manage extinct_potato's personal cloud
hosts: all
+ vars:
+ d_stuff: "/home/{{ ansible_ssh_user }}/dstuff"
tasks:
- name: Ensure Python3 is default
@@ -48,10 +50,14 @@
- docker-ce-cli
- containerd.io
- - name: Add the 'debian' user to Docker group
+ - name: Install docker-compose
+ pip:
+ name: docker-compose
+
+ - name: Add the current SSH user to Docker group
become: yes
user:
- name: debian
+ name: "{{ ansible_ssh_user }}"
groups: docker
append: yes
@@ -65,3 +71,56 @@
- name: Create a network for related containers
community.docker.docker_network:
name: web
+
+ - name: Ensure directory for stuff
+ file:
+ path: '{{ ansible_env.HOME }}/d'
+ state: directory
+
+ - name: Ensure the deploy key
+ copy:
+ src: "{{ item }}"
+ dest: "{{ ansible_env.HOME }}/.ssh/"
+ mode: 0600
+ with_fileglob:
+ - secrets/id_rsa*
+
+ - name: Clone the repository with compose files
+ git:
+ repo: 'ssh://git@git.hopeburn.eu:42367/dockerstuff/personal-cloud-docker-stuff.git'
+ dest: "{{ d_stuff }}"
+ accept_hostkey: yes
+ register: d_stuff_ret
+
+ - name: Update generic containers
+ when: d_stuff_ret.changed
+ block:
+ - name: List generic container sets
+ find:
+ paths: "{{ d_stuff }}"
+ patterns: "*"
+ recurse: no
+ file_type: directory
+ register: generic_containers
+
+
+ - name: List files
+ debug:
+ msg: "{{ [item.path] }}"
+ with_items: "{{ generic_containers.files }}"
+
+ - name: Tear down containers
+ community.docker.docker_compose:
+ project_src: "{{ [item.path] }}"
+ state: absent
+ debug: yes
+ with_items: "{{ generic_containers.files }}"
+
+ - name: Update and start containers
+ community.docker.docker_compose:
+ project_src: "{{ [item.path] }}"
+ state: present
+ stopped: yes
+ build: yes
+ pull: yes
+ with_items: "{{ generic_containers.files }}"