init
All checks were successful
continuous-integration/drone/push Build is passing

This commit is contained in:
decentral1se
2022-05-30 16:57:39 +02:00
commit b5c3ce2ec4
16 changed files with 219 additions and 0 deletions

15
tasks/group.yml Normal file
View File

@ -0,0 +1,15 @@
---
- name: Setup user for docker usage
block:
- name: Check if user exists
getent:
database: passwd
key: "{{ user.username }}"
register: user_exists
ignore_errors: true
- name: Add user to docker group
user:
name: "{{ item.username }}"
group: docker
when: user_exists is not failed

37
tasks/main.yml Normal file
View File

@ -0,0 +1,37 @@
---
- name: Ensure mandatory variables are configured
assert:
that: "{{ item }} is defined"
fail_msg: "You must define the '{{ item }}' variable"
with_items:
- members
- name: Include resource variables
include_vars: "{{ members }}"
tags:
# Note(d1): we already load in converge.yml so skip here
- molecule-notest
# Note(decentral1se): Done in this way because Ansible...
# Please see this SO answer https://stackoverflow.com/a/39041069
- name: Include user group tasks
include: group.yml user={{ item }}
with_items: "{{ members }}"
- name: Ensure Docker python dependencies are installed
package:
name: "{{ item }}"
state: present
with_items:
- python3-docker
- name: Initialise docker swarm
docker_swarm:
state: present
advertise_addr: "{{ hostvars[inventory_hostname]['ansible_default_ipv4']['address'] }}"
- name: Initialise proxy for traefik
docker_network:
name: proxy
driver: overlay
when: swarm_single_node_enable_proxy