42 lines
1.2 KiB
YAML
42 lines
1.2 KiB
YAML
#!/usr/bin/ansible-playbook
|
|
# vim:ft=ansible:
|
|
---
|
|
- name: Set up webroot for {{ gitweb_repo }}
|
|
block:
|
|
- name: Set up Apache
|
|
block:
|
|
- name: Create webroot
|
|
file:
|
|
path: "{{ gitweb_webroot }}"
|
|
mode: "0755"
|
|
state: directory
|
|
- name: Clone repo
|
|
git:
|
|
repo: "{{ gitweb_repo }}"
|
|
dest: "{{ gitweb_webroot }}"
|
|
- name: Register certificates
|
|
block:
|
|
- name: Configure insecure virtual host configs
|
|
template:
|
|
src: apache2-vhost.conf
|
|
dest: "/etc/apache2/sites-enabled/{{ gitweb_url }}.conf"
|
|
- name: Generate certificate
|
|
include_role:
|
|
name: https
|
|
vars:
|
|
website_url: "{{ gitweb_url }}"
|
|
website_webroot: "{{ gitweb_webroot }}"
|
|
- name: Secure Apache
|
|
block:
|
|
# If we copied over http-only configs before, they get oblooterated now
|
|
- name: Copy over virtual host configs
|
|
template:
|
|
src: apache2-vhost-ssl.conf
|
|
dest: "/etc/apache2/sites-enabled/{{ gitweb_url }}.conf"
|
|
- name: Reload Apache
|
|
service:
|
|
name: apache2
|
|
state: reloaded
|
|
enabled: true
|
|
become: yes
|