--- # Creates /srv/app/{production,staging} owned by the deploy user - name: Ensure /srv/app exists ansible.builtin.file: path: /srv/app state: directory owner: "{{ deploy_user }}" group: "{{ deploy_user }}" mode: "0750" - name: Create per-environment directories ansible.builtin.file: path: "/srv/app/{{ item }}" state: directory owner: "{{ deploy_user }}" group: "{{ deploy_user }}" mode: "0750" loop: "{{ app_environments }}" - name: Add README so the directories aren't mysterious ansible.builtin.copy: dest: "/srv/app/{{ item }}/README" owner: "{{ deploy_user }}" group: "{{ deploy_user }}" mode: "0640" content: | {{ item }} environment ---------------------- docker-compose.yml — compose file for this environment .env.{{ item }} — secrets .env — required by docker's arg variables valkey.conf — valkey config loop: "{{ app_environments }}" - name: Ensure /srv/static exists for thesis ansible.builtin.file: path: /srv/static state: directory owner: "{{ deploy_user }}" group: nginx mode: "0750"