de.lehmann.automation.ansib.../playbooks/setup-docker-application.yml
2024-01-26 17:56:00 +01:00

49 lines
1.5 KiB
YAML

- name: "Create application service group"
ansible.builtin.group:
name: "{{ service_group_name }}"
state: present
gid: "{{ service_group_id }}"
- name: "Create service user"
user:
name: "{{ service_user_name }}"
password: "{{ lookup('password', '/dev/null chars=ascii_lowercase,digits length=16') | string | password_hash('sha512') }}"
uid: "{{ service_user_id }}"
update_password: on_create
shell: /bin/zsh
comment: Service Account
group: "{{ service_group_name }}"
groups: docker
- name: "Create service directory"
ansible.builtin.file:
path: "{{ service_directory }}"
state: directory
mode: '0770'
owner: "{{ service_user_name }}"
group: "{{ service_group_name }}"
- block:
- name: "Create volume directories"
ansible.builtin.file:
path: "{{ service_directory }}/data/{{ item }}"
state: directory
mode: '0770'
owner: "{{ service_user_name }}"
group: "{{ service_group_name }}"
loop: '{{ service_volume_dirs }}'
- name: Copy docker compose config to target
template:
src: "../templates/{{ service_name }}/docker-compose.yml.j2"
dest: "{{ service_directory }}/docker-compose.yml"
mode: '0644'
- name: Copy .env to target
tags: always
template:
src: "../templates/{{ service_name }}/.env.j2"
dest: "{{ service_directory }}/.env"
mode: '0644'
become: yes
become_user: "{{ service_user_name }}"