adding the rest of the things for taskotron-prod and resultsdb-prod
This commit is contained in:
parent
86f587fdae
commit
1b0b262e47
6 changed files with 239 additions and 0 deletions
29
inventory/group_vars/resultsdb-prod
Normal file
29
inventory/group_vars/resultsdb-prod
Normal file
|
@ -0,0 +1,29 @@
|
|||
---
|
||||
# common items for the releng-* boxes
|
||||
lvm_size: 50000
|
||||
mem_size: 4096
|
||||
num_cpus: 4
|
||||
# for systems that do not match the above - specify the same parameter in
|
||||
# the host_vars/$hostname file
|
||||
|
||||
tcp_ports: [ 80, 443, "{{ resultsdb_db_port }}" ]
|
||||
fas_client_groups: sysadmin-qa
|
||||
nrpe_procs_warn: 250
|
||||
nrpe_procs_crit: 300
|
||||
|
||||
virt_install_command: /usr/sbin/virt-install -n {{ inventory_hostname }} -r {{ mem_size }}
|
||||
--disk bus=virtio,path={{ volgroup }}/{{ inventory_hostname }}
|
||||
--vcpus={{ num_cpus }} -l {{ ks_repo }} -x
|
||||
"ksdevice=eth0 ks={{ ks_url }} console=tty0 console=ttyS0
|
||||
hostname={{ inventory_hostname }} nameserver={{ dns }}
|
||||
ip={{ eth0_ip }}::{{ gw }}:{{ nm }}:{{ inventory_hostname }}:eth0:none"
|
||||
--network=bridge=br0,model=virtio --autostart --noautoconsole
|
||||
|
||||
deployment_type: prod
|
||||
resultsdb_db_host: db-qa01.qa.fedoraproject.org
|
||||
resultsdb_db_port: 5432
|
||||
resultsdb_endpoint: '/resultsdb_api'
|
||||
resultsdb_fe_endpoint: '/resultsdb'
|
||||
resultsdb_db_name: resultsdb
|
||||
allowed_hosts:
|
||||
- 10.5.124
|
27
inventory/group_vars/taskotron-prod
Normal file
27
inventory/group_vars/taskotron-prod
Normal file
|
@ -0,0 +1,27 @@
|
|||
---
|
||||
grokmirror_basedir: /var/lib/git/mirror
|
||||
grokmirror_user: grokmirror
|
||||
grokmirror_repos:
|
||||
- { name: fedoraqa/rpmlint, url: 'https://bitbucket.org/fedoraqa/task-rpmlint.git'}
|
||||
- { name: fedoraqa/depcheck, url: 'https://bitbucket.org/fedoraqa/task-depcheck.git'}
|
||||
- { name: fedoraqa/upgradepath, url: 'https://bitbucket.org/fedoraqa/task-upgradepath.git'}
|
||||
settings_dir: /etc/taskotron
|
||||
buildmaster_db_host: db-qa01.qa.fedoraproject.org
|
||||
buildmaster_db_name: buildmaster
|
||||
buildmaster_template: taskotron.master.cfg.j2
|
||||
buildmaster_endpoint: taskmaster
|
||||
buildslave_ssh_pubkey: ''
|
||||
buildslave_port: 9989
|
||||
cgit_root_title: "Taskotron Git Mirror"
|
||||
buildmaster_dir: /home/buildmaster/master
|
||||
buildslave_dir: /home/buildslave/slave
|
||||
master_dir: /home/buildmaster/master
|
||||
master_user: buildmaster
|
||||
external_hostname: taskotron.fedoraproject.org
|
||||
resultsdb_url: http://resultsdb01.qa.fedoraproject.org/resultsdb/api/v1.0
|
||||
resultsdb_frontend_url: http://resultsdb01.qa.fedoraproject.org/
|
||||
resultsdb_external_url: https://taskotron.fedoraproject.org/resultsdb/
|
||||
resultsdb_endpoint: resultsdb
|
||||
landingpage_title: "Taskotron"
|
||||
deployment_type: prod
|
||||
tcp_ports: [ 80, 443, "{{ buildslave_port }}" ]
|
10
inventory/host_vars/resultsdb01.qa.fedoraproject.org
Normal file
10
inventory/host_vars/resultsdb01.qa.fedoraproject.org
Normal file
|
@ -0,0 +1,10 @@
|
|||
---
|
||||
nm: 255.255.255.0
|
||||
gw: 10.5.124.254
|
||||
dns: 10.5.126.21
|
||||
ks_url: http://10.5.126.23/repo/rhel/ks/kvm-fedora-20
|
||||
ks_repo: http://10.5.126.23/pub/fedora/linux/releases/20/Fedora/x86_64/os/
|
||||
volgroup: /dev/VirtGuests
|
||||
eth0_ip: 10.5.124.207
|
||||
vmhost: virthost-comm02.qa.fedoraproject.org
|
||||
datacenter: phx2
|
43
inventory/host_vars/taskotron01.qa.fedoraproject.org
Normal file
43
inventory/host_vars/taskotron01.qa.fedoraproject.org
Normal file
|
@ -0,0 +1,43 @@
|
|||
---
|
||||
nm: 255.255.255.0
|
||||
gw: 10.5.124.254
|
||||
dns: 10.5.126.21
|
||||
ks_url: http://10.5.126.23/repo/rhel/ks/kvm-fedora-20
|
||||
ks_repo: http://10.5.126.23/pub/fedora/linux/releases/20/Fedora/x86_64/os/
|
||||
volgroup: /dev/Guests00
|
||||
eth0_ip: 10.5.124.206
|
||||
vmhost: virthost-comm01.qa.fedoraproject.org
|
||||
datacenter: phx2
|
||||
fas_client_groups: sysadmin-qa,sysadmin-main
|
||||
|
||||
# default virt install command is for a single nic-device
|
||||
# define in another group file for more nics (see buildvm)
|
||||
virt_install_command: /usr/sbin/virt-install -n {{ inventory_hostname }} -r {{ mem_size }}
|
||||
--disk bus=virtio,path={{ volgroup }}/{{ inventory_hostname }}
|
||||
--vcpus={{ num_cpus }} -l {{ ks_repo }} -x
|
||||
"ks={{ ks_url }} ip={{ eth0_ip }} netmask={{ nm }}
|
||||
gateway={{ gw }} dns={{ dns }} console=tty0 console=ttyS0
|
||||
hostname={{ inventory_hostname }}"
|
||||
--network=bridge=br0 --autostart --noautoconsole
|
||||
|
||||
public_hostname: taskotron.fedoraproject.org
|
||||
fake_fedorainfra_endpoint: fakefedorainfra
|
||||
buildmaster: 10.5.124.206
|
||||
|
||||
buildslaves:
|
||||
- taskotron-client11
|
||||
- taskotron-client12
|
||||
- taskotron-client13
|
||||
- taskotron-client14
|
||||
- taskotron-client19
|
||||
- taskotron-client20
|
||||
- taskotron-client21
|
||||
i386_buildslaves:
|
||||
- taskotron-client12
|
||||
- taskotron-client14
|
||||
- taskotron-client19
|
||||
x86_64_buildslaves:
|
||||
- taskotron-client11
|
||||
- taskotron-client13
|
||||
- taskotron-client20
|
||||
- taskotron-client21
|
55
playbooks/groups/resultsdb-prod.yml
Normal file
55
playbooks/groups/resultsdb-prod.yml
Normal file
|
@ -0,0 +1,55 @@
|
|||
---
|
||||
# create a new resultsdb production 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
|
||||
|
||||
- name: make resultsdb production
|
||||
hosts: resultsdb-prod
|
||||
user: root
|
||||
gather_facts: False
|
||||
accelerate: "{{ accelerated }}"
|
||||
|
||||
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: resultsdb-prod
|
||||
user: root
|
||||
gather_facts: True
|
||||
accelerate: "{{ accelerated }}"
|
||||
|
||||
vars_files:
|
||||
- /srv/web/infra/ansible/vars/global.yml
|
||||
- "{{ private }}/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'] }
|
||||
- { role: taskotron/resultsdb-backend, tags: ['resultsdb-be'] }
|
||||
- { role: taskotron/resultsdb-frontend, tags: ['resultsdb-fe'] }
|
||||
|
||||
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"
|
||||
|
||||
|
75
playbooks/groups/taskotron-prod.yml
Normal file
75
playbooks/groups/taskotron-prod.yml
Normal file
|
@ -0,0 +1,75 @@
|
|||
---
|
||||
# create a new taskotron production 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
|
||||
|
||||
- name: make taskotron production
|
||||
hosts: taskotron-prod
|
||||
user: root
|
||||
gather_facts: False
|
||||
accelerate: "{{ accelerated }}"
|
||||
|
||||
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: taskotron-prod
|
||||
user: root
|
||||
gather_facts: True
|
||||
accelerate: "{{ accelerated }}"
|
||||
|
||||
vars_files:
|
||||
- /srv/web/infra/ansible/vars/global.yml
|
||||
- "{{ private }}/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'] }
|
||||
|
||||
tasks:
|
||||
# this is how you include other task lists
|
||||
- include: "{{ tasks }}/yumrepos.yml"
|
||||
- include: "{{ tasks }}/2fa_client.yml"
|
||||
- include: "{{ tasks }}/motd.yml"
|
||||
- include: "{{ tasks }}/apache.yml"
|
||||
|
||||
handlers:
|
||||
- include: "{{ handlers }}/restart_services.yml"
|
||||
|
||||
- name: configure taskotron master
|
||||
hosts: taskotron-prod
|
||||
user: root
|
||||
gather_facts: True
|
||||
accelerate: "{{ accelerated }}"
|
||||
|
||||
vars_files:
|
||||
- /srv/web/infra/ansible/vars/global.yml
|
||||
- "{{ private }}/vars.yml"
|
||||
- /srv/web/infra/ansible/vars/{{ ansible_distribution }}.yml
|
||||
|
||||
roles:
|
||||
- { role: taskotron/grokmirror, tags: ['grokmirror'] }
|
||||
# - { role: taskotron/cgit, tags: ['cgit'] }
|
||||
- { role: taskotron/buildmaster, tags: ['buildmaster'] }
|
||||
- { role: taskotron/buildmaster-configure, tags: ['buildmasterconfig'] }
|
||||
- { role: taskotron/taskotron-trigger, tags: ['trigger'] }
|
||||
- { role: taskotron/taskotron-frontend, tags: ['frontend'] }
|
||||
- { role: taskotron/fake_fedorainfra, tags: ['fakefedorainfra'] }
|
||||
|
||||
handlers:
|
||||
- include: "{{ handlers }}/restart_services.yml"
|
Loading…
Add table
Add a link
Reference in a new issue