blob: ad73f341fbb5bdc1a6eeb0f33dff4ac23aef7b98 [file] [log] [blame]
- name: Create project pages directory
file:
path: "{{ zuul_pagesserver_root }}/{{ zuul.project.name }}"
state: directory
recurse: yes
mode: '0775'
- name: Check fqdn and vhost_name variables
fail:
msg: "Fail as fqdn and vhost_name are not set"
when: (not vhost_name is defined or not vhost_name or
not fqdn is defined or not fqdn)
- name: Check for letsencrypt TLS certificate
stat:
path: "/etc/letsencrypt/pem/{{ vhost_name }}.{{ fqdn }}.pem"
register: tls_letsencrypt_cert
- name: Check for static TLS certificate
stat:
path: "/etc/pki/tls/certs/{{ vhost_name }}.{{ fqdn }}.crt"
register: tls_static_cert
- name: Create vhost file
template:
src: templates/vhost.conf.j2
dest: "{{ zuul_pagesvhosts_root }}/pages-{{ zuul.project.name | regex_replace('/', '_') | regex_replace('\\.\\.', '') }}.conf"
mode: '0644'
register: apache_conf
- name: Upload website to publication server
synchronize:
src: "{{ zuul.executor.log_root }}/pages/"
dest: "{{ zuul_pagesserver_root }}/{{ zuul.project.name }}/"
delete: yes
recursive: yes
no_log: true
# pageuser must be authorized to reload
# httpd via sudo. However using become and systemd
# facility fails to match the sudoerd rule.
- name: reload httpd
command: sudo /bin/systemctl reload httpd
when: apache_conf is changed