--- - name: Check if the role exists stat: path: "roles/{{ my_role_name }}" register: role_exists - name: Prompt for overwrite pause: prompt="Role {{ my_role_name }} exists. Overwrite? Touch any key to continue or <CTRL>-c, then a, to abort." when: role_exists.stat.exists - name: Create docker directories file: path: "../docker/{{ item }}/{{ my_role_name }}" state: directory with_items: - build - name: Create role directories file: path: "roles/{{ my_role_name }}/{{ item }}" state: directory with_items: - tasks - meta - defaults - templates/edx/app/supervisor/conf.d.available - templates/edx/app/{{ my_role_name }} - templates/edx/app/nginx/sites-available - name: Make an ansible role template: src: "{{ item }}/main.yml.j2" dest: "roles/{{ my_role_name }}/{{ item }}/main.yml" with_items: - tasks - meta - defaults - name: Update docker templates template: src: "docker/{{ item.src }}" dest: "../docker/{{ item.dest }}" with_items: - { src: 'build/ROLE_NAME/Dockerfile.j2', dest: 'build/{{ my_role_name|replace("_","-") }}/Dockerfile'} - { src: 'build/ROLE_NAME/ansible_overrides.yml.j2', dest: 'build/{{ my_role_name|replace("_","-") }}/ansible_overrides.yml'} - { src: 'build/ROLE_NAME/inventory', dest: 'build/{{ my_role_name|replace("_","-") }}/inventory'} - { src: 'plays/ROLE_NAME.yml.j2', dest: 'plays/{{ my_role_name }}.yml'} - name: Update role templates template: src: "templates/{{ item.src }}" dest: "roles/{{ my_role_name }}/templates/{{ item.dest }}" with_items: - { src: 'edx/app/supervisor/conf.d.available/ROLE_NAME.conf.j2', dest: 'edx/app/supervisor/conf.d.available/{{ my_role_name }}.conf.j2'} - { src: 'edx/app/ROLE_NAME/ROLE_NAME.sh.j2', dest: 'edx/app/{{ my_role_name }}/{{ my_role_name }}.sh.j2'} - { src: 'edx/app/ROLE_NAME/ROLE_NAME_env.j2', dest: 'edx/app/{{ my_role_name }}/{{ my_role_name }}_env.j2'} - { src: 'edx/app/ROLE_NAME/ROLE_NAME_gunicorn.py.j2', dest: 'edx/app/{{ my_role_name }}/{{ my_role_name }}_gunicorn.py.j2'} - { src: 'edx/app/ROLE_NAME/devstack.sh.j2', dest: 'edx/app/{{ my_role_name }}/devstack.sh.j2'} - { src: 'edx/app/nginx/sites-available/ROLE_NAME.j2', dest: 'edx/app/nginx/sites-available/{{ my_role_name }}.j2'}