119 lines
2.8 KiB
YAML
119 lines
2.8 KiB
YAML
# create a new packages server
|
|
# NOTE: should be used with --limit most of the time
|
|
# NOTE: make sure there is room/space for this server on the vmhost
|
|
# NOTE: most of these vars_path come from group_vars/packages* or from hostvars
|
|
|
|
- name: make packages server
|
|
hosts: packages;packages-stg
|
|
user: root
|
|
gather_facts: False
|
|
|
|
vars_files:
|
|
- /srv/web/infra/ansible/vars/global.yml
|
|
- "{{ private }}/vars.yml"
|
|
- /srv/web/infra/ansible/vars/{{ ansible_distribution }}.yml
|
|
|
|
tasks:
|
|
- include: "{{ tasks }}/virt_instance_create.yml"
|
|
|
|
handlers:
|
|
- include: "{{ handlers }}/restart_services.yml"
|
|
|
|
- name: make the box be real
|
|
hosts: packages;packages-stg
|
|
user: root
|
|
gather_facts: True
|
|
|
|
vars_files:
|
|
- /srv/web/infra/ansible/vars/global.yml
|
|
- "{{ private }}/vars.yml"
|
|
- /srv/web/infra/ansible/vars/{{ ansible_distribution }}.yml
|
|
|
|
roles:
|
|
- base
|
|
- rkhunter
|
|
- denyhosts
|
|
- nagios_client
|
|
- hosts
|
|
- fas_client
|
|
- collectd/base
|
|
- rsyncd
|
|
- sudo
|
|
- { role: openvpn/client,
|
|
when: env != "staging" }
|
|
|
|
tasks:
|
|
- include: "{{ tasks }}/yumrepos.yml"
|
|
- include: "{{ tasks }}/2fa_client.yml"
|
|
- include: "{{ tasks }}/motd.yml"
|
|
- include: "{{ tasks }}/apache.yml"
|
|
- include: "{{ tasks }}/mod_wsgi.yml"
|
|
|
|
handlers:
|
|
- include: "{{ handlers }}/restart_services.yml"
|
|
|
|
- name: set up gluster server on prod
|
|
hosts: packages
|
|
user: root
|
|
gather_facts: True
|
|
|
|
vars_files:
|
|
- /srv/web/infra/ansible/vars/global.yml
|
|
- "{{ private }}/vars.yml"
|
|
- /srv/web/infra/ansible/vars/{{ ansible_distribution }}.yml
|
|
|
|
roles:
|
|
- role: gluster/server
|
|
name: gluster
|
|
username: "{{ packagesglusterusername }}"
|
|
password: "{{ packagesglusterpassword }}"
|
|
owner: root
|
|
group: root
|
|
datadir: /srv/glusterfs/packages
|
|
|
|
handlers:
|
|
- include: "{{ handlers }}/restart_services.yml"
|
|
|
|
- name: set up gluster client on prod
|
|
hosts: packages
|
|
user: root
|
|
gather_facts: True
|
|
|
|
vars_files:
|
|
- /srv/web/infra/ansible/vars/global.yml
|
|
- "{{ private }}/vars.yml"
|
|
- /srv/web/infra/ansible/vars/{{ ansible_distribution }}.yml
|
|
|
|
roles:
|
|
- role: gluster/client
|
|
name: gluster
|
|
servers:
|
|
- packages03.phx2.fedoraproject.org
|
|
- packages04.phx2.fedoraproject.org
|
|
username: "{{ packagesglusterusername }}"
|
|
password: "{{ packagesglusterpassword }}"
|
|
owner: apache
|
|
group: apache
|
|
mountdir: /var/cache/fedoracommunity
|
|
|
|
handlers:
|
|
- include: "{{ handlers }}/restart_services.yml"
|
|
|
|
- name: dole out the service specific config
|
|
hosts: packages;packages-stg
|
|
user: root
|
|
gather_facts: True
|
|
|
|
vars_files:
|
|
- /srv/web/infra/ansible/vars/global.yml
|
|
- "{{ private }}/vars.yml"
|
|
- /srv/web/infra/ansible/vars/{{ ansible_distribution }}.yml
|
|
|
|
roles:
|
|
- fedmsg/base
|
|
- packages
|
|
- collectd/fcomm-queue
|
|
|
|
handlers:
|
|
- include: "{{ handlers }}/restart_services.yml"
|