diff options
-rw-r--r-- | inventory/group_vars/composers | 72 | ||||
-rw-r--r-- | inventory/group_vars/releng-compose | 61 | ||||
-rw-r--r-- | inventory/group_vars/releng-stg (renamed from inventory/group_vars/composers-stg) | 0 | ||||
-rw-r--r-- | inventory/inventory | 14 | ||||
-rw-r--r-- | playbooks/groups/composers.yml | 83 | ||||
-rw-r--r-- | playbooks/groups/releng-compose.yml | 31 | ||||
-rw-r--r-- | roles/releng/tasks/main.yml | 6 |
7 files changed, 97 insertions, 170 deletions
diff --git a/inventory/group_vars/composers b/inventory/group_vars/composers deleted file mode 100644 index 7976593db..000000000 --- a/inventory/group_vars/composers +++ /dev/null @@ -1,72 +0,0 @@ ---- -# common items for the releng-* boxes -lvm_size: 100000 -mem_size: 16384 -num_cpus: 16 -nm: 255.255.255.0 -gw: 10.5.125.254 -dns: 10.5.126.21 - -ks_url: http://10.5.126.23/repo/rhel/ks/kvm-fedora-23 -ks_repo: http://10.5.126.23/pub/fedora/linux/releases/23/Server/x86_64/os/ -virt_install_command: "{{ virt_install_command_two_nic }}" - -# With 16 cpus, theres a bunch more kernel threads -nrpe_procs_warn: 900 -nrpe_procs_crit: 1000 - -sudoers: "{{ private }}/files/sudo/00releng-sudoers" - -host_group: releng - -# These are consumed by a task in roles/fedmsg/base/main.yml -fedmsg_certs: -- service: shell - owner: root - group: root - can_send: - - logger.log -- service: releng - owner: root - group: masher - can_send: - - compose.branched.complete - - compose.branched.mash.complete - - compose.branched.mash.start - - compose.branched.image.complete - - compose.branched.image.start - - compose.branched.pungify.complete - - compose.branched.pungify.start - - compose.branched.rsync.complete - - compose.branched.rsync.start - - compose.branched.start - - compose.epelbeta.complete - - compose.rawhide.complete - - compose.rawhide.mash.complete - - compose.rawhide.mash.start - - compose.rawhide.image.complete - - compose.rawhide.image.start - - compose.rawhide.pungify.complete - - compose.rawhide.pungify.start - - compose.rawhide.rsync.complete - - compose.rawhide.rsync.start - - compose.rawhide.start - # Then there are *all these* make-updates things from releng+cloudsig - - compose.23.make-updates.start - - compose.23.make-updates.done - - compose.23.cloudimg-build.start - - compose.23.cloudimg-build.done - - compose.23.mash-atomic.start - - compose.23.mash-atomic.stop - - compose.23.atomic-lorax.start - - compose.23.atomic-lorax.done - - compose.23.cloudimg-checksum.start - - compose.23.cloudimg-checksum.done - - compose.23.cloudimg-staging.start - - compose.23.cloudimg-staging.done - -nfs_mount_opts: "rw,hard,bg,intr,noatime,nodev,nosuid,nfsvers=3" - -koji_server_url: "http://koji.fedoraproject.org/kojihub" -koji_weburl: "http://koji.fedoraproject.org/koji" -koji_topurl: "http://kojipkgs.fedoraproject.org/" diff --git a/inventory/group_vars/releng-compose b/inventory/group_vars/releng-compose index f19d9fec9..de27e5a19 100644 --- a/inventory/group_vars/releng-compose +++ b/inventory/group_vars/releng-compose @@ -1,9 +1,23 @@ --- +# common items for the releng-* boxes +lvm_size: 100000 +mem_size: 16384 +num_cpus: 16 +nm: 255.255.255.0 +gw: 10.5.125.254 +dns: 10.5.126.21 + +# With 16 cpus, theres a bunch more kernel threads +nrpe_procs_warn: 900 +nrpe_procs_crit: 1000 + host_group: releng fas_client_groups: sysadmin-releng freezes: true sudoers: "{{ private }}/files/sudo/00releng-sudoers" +nfs_mount_opts: "rw,hard,bg,intr,noatime,nodev,nosuid,nfsvers=3" + # For the mock config kojipkgs_url: kojipkgs.fedoraproject.org kojihub_url: koji.fedoraproject.org/kojihub @@ -13,3 +27,50 @@ kojihub_scheme: https koji_server_url: "http://koji.fedoraproject.org/kojihub" koji_weburl: "http://koji.fedoraproject.org/koji" koji_topurl: "http://kojipkgs.fedoraproject.org/" + +# These are consumed by a task in roles/fedmsg/base/main.yml +fedmsg_certs: +- service: shell + owner: root + group: root + can_send: + - logger.log +- service: releng + owner: root + group: masher + can_send: + - compose.branched.complete + - compose.branched.mash.complete + - compose.branched.mash.start + - compose.branched.image.complete + - compose.branched.image.start + - compose.branched.pungify.complete + - compose.branched.pungify.start + - compose.branched.rsync.complete + - compose.branched.rsync.start + - compose.branched.start + - compose.epelbeta.complete + - compose.rawhide.complete + - compose.rawhide.mash.complete + - compose.rawhide.mash.start + - compose.rawhide.image.complete + - compose.rawhide.image.start + - compose.rawhide.pungify.complete + - compose.rawhide.pungify.start + - compose.rawhide.rsync.complete + - compose.rawhide.rsync.start + - compose.rawhide.start + # Then there are *all these* make-updates things from releng+cloudsig + - compose.23.make-updates.start + - compose.23.make-updates.done + - compose.23.cloudimg-build.start + - compose.23.cloudimg-build.done + - compose.23.mash-atomic.start + - compose.23.mash-atomic.stop + - compose.23.atomic-lorax.start + - compose.23.atomic-lorax.done + - compose.23.cloudimg-checksum.start + - compose.23.cloudimg-checksum.done + - compose.23.cloudimg-staging.start + - compose.23.cloudimg-staging.done + diff --git a/inventory/group_vars/composers-stg b/inventory/group_vars/releng-stg index 121e44e61..121e44e61 100644 --- a/inventory/group_vars/composers-stg +++ b/inventory/group_vars/releng-stg diff --git a/inventory/inventory b/inventory/inventory index 54d205525..2b92f11a1 100644 --- a/inventory/inventory +++ b/inventory/inventory @@ -31,11 +31,16 @@ arm03-qa01.cloud.fedoraproject.org [releng-compose] compose-x86-01.phx2.fedoraproject.org +branched-composer.phx2.fedoraproject.org +rawhide-composer.phx2.fedoraproject.org [releng-secondary] compose-aarch64-01.arm.fedoraproject.org compose-ppc64-01.ppc.fedoraproject.org -# compose-ppc64le-01.ppc.fedoraproject.org +compose-ppc64le-01.ppc.fedoraproject.org + +[releng-stg] +composer.stg.phx2.fedoraproject.org [retrace] arm01-retrace01.arm.fedoraproject.org @@ -210,13 +215,6 @@ bodhi-backend02.phx2.fedoraproject.org [bodhi-backend-stg] bodhi-backend01.stg.phx2.fedoraproject.org -[composers] -branched-composer.phx2.fedoraproject.org -rawhide-composer.phx2.fedoraproject.org - -[composers-stg] -composer.stg.phx2.fedoraproject.org - [sign-bridge] sign-bridge01.phx2.fedoraproject.org sign-bridge01.stg.phx2.fedoraproject.org diff --git a/playbooks/groups/composers.yml b/playbooks/groups/composers.yml deleted file mode 100644 index 4f198e7ab..000000000 --- a/playbooks/groups/composers.yml +++ /dev/null @@ -1,83 +0,0 @@ -# create a new releng system -# NOTE: should be used with --limit most of the time -# NOTE: make sure there is room/space for this instance on the buildvmhost -# NOTE: most of these vars_path come from group_vars/releng or from hostvars - -- include: "/srv/web/infra/ansible/playbooks/include/virt-create.yml myhosts=composers:composers-stg" - -# Once the instance exists, configure it. - -- name: make releng server system - hosts: composers:composers-stg - 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: - - base - - nagios/client - - collectd/base - - hosts - - builder_repo - - role: nfs/client - mnt_dir: '/pub' - nfs_src_dir: 'fedora_ftp/fedora.redhat.com/pub' - when: datacenter != 'staging' - - role: nfs/client - mnt_dir: '/mnt/fedora_koji' - nfs_src_dir: 'fedora_koji' - when: datacenter != 'staging' - - role: nfs/client - mnt_dir: '/mnt/fedora_koji' - nfs_src_dir: 'fedora_koji' - when: datacenter == 'staging' - - role: nfs/client - mnt_dir: '/mnt/fedora_koji_prod' - nfs_src_dir: 'fedora_koji' - nfs_mount_opts: 'ro,hard,bg,intr,noatime,nodev,nosuid,nfsvers=3' - when: datacenter == 'staging' - - releng - - fedmsg/base - - sudo - - tasks: - - include: "{{ tasks }}/yumrepos.yml" - - include: "{{ tasks }}/motd.yml" - - handlers: - - include: "{{ handlers }}/restart_services.yml" - -- name: put fasClient and 2fa on the staging releng systems - # Staging only, for debugging please. - hosts: composers-stg - 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: - - fas_client - - sudo - - tasks: - - include: "{{ tasks }}/2fa_client.yml" - - handlers: - - include: "{{ handlers }}/restart_services.yml" - - -- name: Install the fedmsg-atomic-composer - # Staging only, for now. - hosts: composers-stg - user: root - gather_facts: True - - roles: - - atomic-composer diff --git a/playbooks/groups/releng-compose.yml b/playbooks/groups/releng-compose.yml index 0d0646521..087f2bfb8 100644 --- a/playbooks/groups/releng-compose.yml +++ b/playbooks/groups/releng-compose.yml @@ -1,7 +1,12 @@ -- include: "/srv/web/infra/ansible/playbooks/include/virt-create.yml myhosts=compose-x86-01.phx2.fedoraproject.org:compose-ppc64-01.ppc.fedoraproject.org:compose-ppc64le-01.ppc.fedoraproject.org" +# create a new releng system +# NOTE: should be used with --limit most of the time +# NOTE: make sure there is room/space for this instance on the buildvmhost +# NOTE: most of these vars_path come from group_vars/releng or from hostvars + +- include: "/srv/web/infra/ansible/playbooks/include/virt-create.yml myhosts=releng-compose:releng-secondary:releng-stg" - name: Setup releng compose hosts - hosts: releng-compose:releng-secondary + hosts: releng-compose:releng-secondary:releng-stg user: root gather_facts: True tags: @@ -19,19 +24,33 @@ - fas_client - rkhunter - nagios/client + - collectd/base - sudo - - { role: nfs/client, when: inventory_hostname.startswith('compose-x86') , mnt_dir: '/mnt/fedora_koji', nfs_src_dir: 'fedora_koji' } - - { role: nfs/client, when: inventory_hostname.startswith('compose-x86') , mnt_dir: '/pub', nfs_src_dir: 'fedora_ftp/fedora.redhat.com/pub' } + - fedmsg/base + - { role: nfs/client, when: "'releng-compose' in group_names", mnt_dir: '/mnt/fedora_koji', nfs_src_dir: 'fedora_koji' } + - { role: nfs/client, when: "'releng-compose' in group_names", mnt_dir: '/pub', nfs_src_dir: 'fedora_ftp/fedora.redhat.com/pub' } - { role: nfs/client, when: inventory_hostname.startswith('compose-aarch64-01') , mnt_dir: '/mnt/fedora_koji', nfs_src_dir: 'fedora_arm/data' } - - { role: nfs/client, when: inventory_hostname.startswith('compose-ppc64') , mnt_dir: '/mnt/fedora_koji', nfs_src_dir: 'fedora_ppc/data' } - - role: fedmsg/base + - { role: nfs/client, when: inventory_hostname.startswith('compose-ppc64le-01') , mnt_dir: '/mnt/fedora_koji', nfs_src_dir: 'fedora_arm/data' } + - { role: nfs/client, when: inventory_hostname.startswith('compose-ppc64-01') , mnt_dir: '/mnt/fedora_koji', nfs_src_dir: 'fedora_ppc/data' } + - { role: nfs/client, when: inventory_hostname.startswith('compose-s390-01') , mnt_dir: '/mnt/fedora_koji', nfs_src_dir: 'fedora_s390/data' } + - { role: nfs/client, when: "'releng-stg' in group_names", mnt_dir: '/mnt/fedora_koji_prod', nfs_src_dir: 'fedora_koji' } - releng tasks: # this is how you include other task lists + - include: "{{ tasks }}/yumrepos.yml" - include: "{{ tasks }}/2fa_client.yml" - include: "{{ tasks }}/motd.yml" - include: "{{ tasks }}/common_scripts.yml" handlers: - include: "{{ handlers }}/restart_services.yml" + +- name: Install the fedmsg-atomic-composer + # Staging only, for now. + hosts: releng-stg + user: root + gather_facts: True + + roles: + - atomic-composer diff --git a/roles/releng/tasks/main.yml b/roles/releng/tasks/main.yml index 08d0b1825..3981886e3 100644 --- a/roles/releng/tasks/main.yml +++ b/roles/releng/tasks/main.yml @@ -86,6 +86,9 @@ - pykickstart - pyliblzma - httpd + - hardlink + - pungi + - compose-utils when: ansible_distribution_major_version|int < 22 - name: add pkgs @@ -103,9 +106,10 @@ - createrepo - pykickstart - pyliblzma + - httpd + - hardlink - pungi - compose-utils - - httpd when: ansible_distribution_major_version|int > 21 - name: copy over our mash.conf |