133 lines
3.7 KiB
YAML
133 lines
3.7 KiB
YAML
---
|
|
# create a new qadevel server
|
|
# NOTE: make sure there is room/space for this server on the vmhost
|
|
# NOTE: most of these vars_path come from group_vars/mirrorlist or from hostvars
|
|
|
|
- include: "/srv/web/infra/ansible/playbooks/include/virt-create.yml myhosts=qadevel"
|
|
|
|
- name: make the box be real
|
|
hosts: qadevel
|
|
user: root
|
|
gather_facts: True
|
|
|
|
vars_files:
|
|
- /srv/web/infra/ansible/vars/global.yml
|
|
- "/srv/private/ansible/vars.yml"
|
|
- /srv/web/infra/ansible/vars/{{ ansible_distribution }}.yml
|
|
|
|
roles:
|
|
- { role: base, tags: ['base'] }
|
|
- { role: rkhunter, tags: ['rkhunter'] }
|
|
- { role: nagios_client, tags: ['nagios_client'] }
|
|
- hosts
|
|
- { role: fas_client, tags: ['fas_client'] }
|
|
- { role: collectd/base, tags: ['collectd_base'] }
|
|
- { role: yum-cron, tags: ['yumcron'] }
|
|
- { role: sudo, tags: ['sudo'] }
|
|
- apache
|
|
|
|
tasks:
|
|
# this is how you include other task lists
|
|
- include: "{{ tasks }}/yumrepos.yml"
|
|
- include: "{{ tasks }}/2fa_client.yml"
|
|
- include: "{{ tasks }}/motd.yml"
|
|
|
|
handlers:
|
|
- include: "{{ handlers }}/restart_services.yml"
|
|
|
|
- name: configure phabricator
|
|
hosts: qadevel
|
|
user: root
|
|
|
|
gather_facts: True
|
|
|
|
vars_files:
|
|
- /srv/web/infra/ansible/vars/global.yml
|
|
- "/srv/private/ansible/vars.yml"
|
|
- /srv/web/infra/ansible/vars/{{ ansible_distribution }}.yml
|
|
|
|
roles:
|
|
- { role: mariadb_server, tags: ['mariadb'] }
|
|
- { role: phabricator, tags: ['phabricator'] }
|
|
|
|
handlers:
|
|
- include: "{{ handlers }}/restart_services.yml"
|
|
|
|
|
|
- name: configure qadevel buildmaster
|
|
hosts: qadevel
|
|
user: root
|
|
gather_facts: True
|
|
|
|
vars_files:
|
|
- /srv/web/infra/ansible/vars/global.yml
|
|
- "/srv/private/ansible/vars.yml"
|
|
- /srv/web/infra/ansible/vars/{{ ansible_distribution }}.yml
|
|
|
|
roles:
|
|
- { role: taskotron/buildmaster, tags: ['buildmaster'] }
|
|
- { role: taskotron/buildmaster-configure, tags: ['buildmasterconfig'] }
|
|
|
|
handlers:
|
|
- include: "{{ handlers }}/restart_services.yml"
|
|
|
|
- name: configure qadevel local slave
|
|
hosts: qadevel
|
|
user: root
|
|
gather_facts: True
|
|
|
|
vars_files:
|
|
- /srv/web/infra/ansible/vars/global.yml
|
|
- "/srv/private/ansible/vars.yml"
|
|
- /srv/web/infra/ansible/vars/{{ ansible_distribution }}.yml
|
|
|
|
roles:
|
|
- { role: taskotron/buildslave, tags: ['buildslave'] }
|
|
- { role: taskotron/buildslave-configure, tags: ['buildslaveconfig'] }
|
|
|
|
handlers:
|
|
- include: "{{ handlers }}/restart_services.yml"
|
|
|
|
- name: configure static sites for qadevel
|
|
hosts: qadevel
|
|
user: root
|
|
gather_facts: True
|
|
|
|
vars_files:
|
|
- /srv/web/infra/ansible/vars/global.yml
|
|
- "/srv/private/ansible/vars.yml"
|
|
- /srv/web/infra/ansible/vars/{{ ansible_distribution }}.yml
|
|
|
|
tasks:
|
|
- name: ensure ServerName is set in ssl.conf
|
|
replace: dest=/etc/httpd/conf.d/ssl.conf regexp='^#ServerName .*$' replace='ServerName {{ external_hostname }}:443'
|
|
notify:
|
|
- restart httpd
|
|
tags:
|
|
- qastaticsites
|
|
|
|
- name: ensure ServerName is set in httpd.conf
|
|
replace: dest=/etc/httpd/conf/httpd.conf regexp='^#ServerName .*$' replace='ServerName {{ external_hostname }}:443'
|
|
notify:
|
|
- restart httpd
|
|
tags:
|
|
- qastaticsites
|
|
|
|
- name: create dirs for static sites
|
|
file: path={{ item.document_root }} state=directory owner=apache group=apache mode=1755
|
|
with_items: static_sites
|
|
tags:
|
|
- qastaticsites
|
|
|
|
- name: generate virtualhosts for static sites
|
|
template: src={{ files }}/httpd/newvirtualhost.conf.j2 dest=/etc/httpd/conf.d/{{ item.name }}.conf owner=root group=root mode=0644
|
|
with_items: static_sites
|
|
notify:
|
|
- restart httpd
|
|
tags:
|
|
- qastaticsites
|
|
|
|
handlers:
|
|
- include: "{{ handlers }}/restart_services.yml"
|
|
|
|
|