Include newsreader provisioning

This commit is contained in:
Sonny Bakker 2025-04-27 22:30:48 +02:00
parent 295f497bcf
commit e5c4cf490f
7 changed files with 162 additions and 8 deletions

58
tasks/newsreader.yml Normal file
View file

@ -0,0 +1,58 @@
- name: Create newsreader app directory
become: true
ansible.builtin.file:
path: '{{ newsreader_app_dir }}'
state: directory
owner: sonny
group: sonny
mode: '0755'
- name: Clone project
ansible.builtin.git:
repo: '{{ newsreader_app_repository }}'
dest: '{{ newsreader_app_dir }}'
version: '{{ newsreader_app_ref }}'
- name: Copy templates
ansible.builtin.template:
src: '{{ item.src }}'
dest: '{{ item.dest }}'
mode: '{{ item.mode }}'
loop:
- src: templates/newsreader/env.j2
dest: '{{ newsreader_app_dir }}/.production.env'
mode: '0750'
- src: templates/newsreader/docker-compose.j2
dest: '{{ newsreader_app_dir }}/docker-compose.resources.yml'
mode: '0750'
- name: Stop current containers
community.docker.docker_compose_v2:
project_src: '{{ newsreader_app_dir }}'
env_files:
- .production.env
state: absent
- name: Remove dangling containers
community.docker.docker_compose_v2:
project_src: '{{ newsreader_app_dir }}'
remove_orphans: true
state: absent
# Note: requires python's requests module
- name: Remove static volume
community.docker.docker_volume:
volume_name: newsreader_static-files
state: absent
- name: Start container
community.docker.docker_compose_v2:
env_files:
- .production.env
files:
- docker-compose.yml
- docker-compose.production.yml
- docker-compose.resources.yml
project_src: '{{ newsreader_app_dir }}'
build: always
state: present