--- - name: "server status dirname exists '{{ nginx_serverstatus_suffix_file | dirname }}'" file: dest: "{{ nginx_serverstatus_suffix_file | dirname }}" mode: "0700" owner: root group: root state: directory - name: set nginx serverstatus suffix if provided copy: dest: "{{ nginx_serverstatus_suffix_file }}" # The last character "\u000A" is a line feed (LF), it's better to keep it content: "{{ nginx_serverstatus_suffix }}\u000A" force: yes when: nginx_serverstatus_suffix != "" - name: generate random string for server-status suffix shell: "apg -a 1 -M N -n 1 > {{ nginx_serverstatus_suffix_file }}" args: creates: "{{ nginx_serverstatus_suffix_file }}" - name: read nginx server status suffix command: "tail -n 1 {{ nginx_serverstatus_suffix_file }}" changed_when: False check_mode: no register: new_nginx_serverstatus_suffix - name: overwrite nginx_serverstatus_suffix set_fact: nginx_serverstatus_suffix: "{{ new_nginx_serverstatus_suffix.stdout }}" - debug: var: nginx_serverstatus_suffix verbosity: 1 - name: replace server-status suffix in default site index replace: dest: /var/www/index.html regexp: '__SERVERSTATUS_SUFFIX__' replace: "{{ nginx_serverstatus_suffix }}" - name: add server-status suffix in default site index if missing replace: dest: /var/www/index.html regexp: '"/nginx_status-?"' replace: '"/nginx_status-{{ nginx_serverstatus_suffix }}"' - name: add server-status suffix in default VHost replace: dest: /etc/nginx/sites-available/evolinux-default.conf regexp: 'location /nginx_status-? {' replace: 'location /nginx_status-{{ nginx_serverstatus_suffix }} {' notify: reload nginx