--- - name: Ensure data directories exist ansible.builtin.file: path: "{{ container_base_dir }}/{{ item }}" state: directory mode: '0755' loop: - "data/backup" - "data/configuration" - "data/netbox" - "data/static/netbox_topology_views/img" - "data/static/netbox_topology_views/js" - "data/static/netbox_topology_views/css" - name: Ensure Docker BuildX Plugin is installed ansible.builtin.apt: package: - docker-buildx-plugin state: present cache_valid_time: 3600 - name: Copy Files ansible.builtin.copy: src: '{{ item.src }}' dest: '{{ item.dest }}' mode: "0664" loop: - {src: 'Dockerfile-Plugins', dest: '{{ container_base_dir }}/Dockerfile-Plugins'} - {src: 'plugins.py', dest: '{{ container_base_dir }}/data/configuration/plugins.py'} - {src: 'plugin_requirements.txt', dest: '{{ container_base_dir }}/data/plugin_requirements.txt'} - name: Render Template Files ansible.builtin.template: src: '{{ item.src }}' dest: '{{ item.dest }}' mode: "0664" loop: - {src: .env.j2, dest: '{{ container_base_dir }}/.env'} - {src: 'docker-compose.yml.j2', dest: '{{ container_base_dir }}/docker-compose.yml'} - name: Stop Container community.docker.docker_compose_v2: project_src: "{{ container_base_dir }}" state: absent - name: Start Container community.docker.docker_compose_v2: project_src: "{{ container_base_dir }}" state: present pull: always recreate: always