summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorclime <clime@redhat.com>2017-06-08 14:56:52 +0200
committerclime <clime@redhat.com>2017-06-09 08:14:38 +0200
commit11ba27ce11b98ba6dd2d4bae8b47b7523bc7e1d7 (patch)
tree43aa8cf04e66e8a3b1e1e0cc6c336a084492b173
parentbc79560132ecd6417294cede9c81ff6b9643ba5f (diff)
downloadansible-11ba27ce11b98ba6dd2d4bae8b47b7523bc7e1d7.tar.gz
ansible-11ba27ce11b98ba6dd2d4bae8b47b7523bc7e1d7.tar.xz
ansible-11ba27ce11b98ba6dd2d4bae8b47b7523bc7e1d7.zip
copr-backend: prep for release + clean-up
-rw-r--r--inventory/group_vars/copr-back1
-rw-r--r--roles/copr/backend/files/provision/builderpb.yml95
-rw-r--r--roles/copr/backend/files/provision/builderpb_nova.yml3
-rw-r--r--roles/copr/backend/files/provision/builderpb_nova_ppc64le.yml8
-rw-r--r--roles/copr/backend/files/provision/builderpb_ppc64le.yml45
-rw-r--r--roles/copr/backend/files/provision/copr.repo11
-rw-r--r--roles/copr/backend/files/provision/files/mock/custom-1-i386.cfg24
-rw-r--r--roles/copr/backend/files/provision/files/mock/custom-1-ppc64le.cfg24
-rw-r--r--roles/copr/backend/files/provision/files/mock/custom-1-x86_64.cfg24
-rw-r--r--roles/copr/backend/files/provision/files/mock/fedora-26-i386.cfg72
-rw-r--r--roles/copr/backend/files/provision/files/mock/fedora-26-ppc64le.cfg72
-rw-r--r--roles/copr/backend/files/provision/files/mock/fedora-26-x86_64.cfg72
-rw-r--r--roles/copr/backend/files/provision/provision_builder_tasks.yml90
-rw-r--r--roles/copr/backend/files/provision/provision_builder_tasks_ppc64le.yml94
-rw-r--r--roles/copr/backend/files/provision/terminatepb.yml17
-rw-r--r--roles/copr/backend/files/provision/terminatepb_ppc64le.yml30
-rw-r--r--roles/copr/backend/tasks/main.yml7
-rw-r--r--roles/copr/backend/templates/copr-be.conf.j22
-rw-r--r--roles/copr/backend/templates/provision/copr-rpmbuild/main.ini.j24
-rw-r--r--roles/copr/backend/templates/provision/fedpkg-copr.conf10
-rw-r--r--roles/copr/backend/templates/provision/nova_cloud_vars.yml2
-rw-r--r--roles/copr/backend/templates/provision/nova_cloud_vars_ppc64le.yml18
22 files changed, 28 insertions, 697 deletions
diff --git a/inventory/group_vars/copr-back b/inventory/group_vars/copr-back
index 909f14b97..9a98c7996 100644
--- a/inventory/group_vars/copr-back
+++ b/inventory/group_vars/copr-back
@@ -7,7 +7,6 @@ copr_nova_tenant_name: "copr"
copr_nova_username: "copr"
# copr_builder_image_name: "Fedora-Cloud-Base-20141203-21"
-copr_builder_image_name: "builder-f24"
copr_builder_flavor_name: "ms2.builder"
copr_builder_network_name: "copr-net"
copr_builder_key_name: "buildsys"
diff --git a/roles/copr/backend/files/provision/builderpb.yml b/roles/copr/backend/files/provision/builderpb.yml
deleted file mode 100644
index 21b0bd242..000000000
--- a/roles/copr/backend/files/provision/builderpb.yml
+++ /dev/null
@@ -1,95 +0,0 @@
----
-- name: check/create instance
- hosts: localhost
- user: copr
- gather_facts: False
-
- vars_files:
- - nova_cloud_vars.yml
-
- vars:
- - security_group: builder
- - image_id: cba0c766-84ac-4048-b0f5-6d4000af62f8
- - OS_USERNAME_OLD: msuchy
- - OS_AUTH_URL_OLD: http://172.23.0.2:5000/v2.0
- # todo: remove after transition to new cloud
-
- tasks:
- - name: generate builder name
- local_action: command echo "Copr builder {{ 999999999 | random }}"
- register: vm_name
-
- - name: spin it up
- local_action: nova_compute auth_url={{OS_AUTH_URL_OLD}} flavor_id=6 image_id={{ image_id }} key_name=buildsys login_password={{OS_PASSWORD_OLD}} login_tenant_name={{OS_TENANT_NAME}} login_username={{OS_USERNAME_OLD}} security_groups={{security_group}} wait=yes name="{{vm_name.stdout}}"
- register: nova
-
- # should be able to use nova.private_ip, but it does not work with Fedora Cloud.
- - debug: msg="IP={{ nova.info.addresses.vlannet_3[0].addr }}"
-
- - debug: msg="vm_name={{vm_name.stdout}}"
-
- - name: add it to the special group
- local_action: add_host hostname={{ nova.info.addresses.vlannet_3[0].addr }} groupname=builder_temp_group
-
- - name: wait for the host to be hot
- local_action: wait_for host={{ nova.info.addresses.vlannet_3[0].addr }} port=22 delay=5 timeout=600
-
-- hosts: builder_temp_group
- user: root
- gather_facts: True
- vars:
- - files: files/
-
- tasks:
- - name: edit hostname to be instance name
- shell: hostname `curl -s http://169.254.169.254/2009-04-04/meta-data/instance-id`
-
- - name: install pkgs
- yum: state=present pkg={{ item }}
- with_items:
- - rsync
- - openssh-clients
- - libselinux-python
- - libsemanage-python
-
- - name: add repos
- copy: src={{ files }}/{{ item }} dest=/etc/yum.repos.d/{{ item }}
- with_items:
- - epel6.repo
-
- - name: install additional pkgs
- yum: state=present pkg={{ item }}
- with_items:
- - mock
- - createrepo
- - yum-utils
- - pyliblzma
-
- - name: make sure newest rpm
- yum: name={{ item }} state=latest
- with_items:
- - rpm
- - glib2
- - ca-certificates
-
- #- yum: name=mock enablerepo=epel-testing state=latest
-
- - name: mockbuilder user
- user: name=mockbuilder groups=mock
-
- - name: mockbuilder .ssh
- file: state=directory path=/home/mockbuilder/.ssh mode=0700 owner=mockbuilder group=mockbuilder
-
- - name: mockbuilder authorized_keys
- authorized_key: user=mockbuilder key='{{ lookup('file', '/home/copr/provision/files/buildsys.pub') }}'
-
- - name: put updated mock configs into /etc/mock
- template: src={{ files }}/mock/{{ item }} dest=/etc/mock
- with_items:
- - site-defaults.cfg
-
- - lineinfile: dest=/etc/mock/fedora-rawhide-x86_64.cfg line="config_opts['package_manager'] = 'dnf'" state=absent
- - lineinfile: dest=/etc/mock/fedora-rawhide-i386.cfg line="config_opts['package_manager'] = 'dnf'" state=absent
-
- - lineinfile: dest=/etc/security/limits.conf line="* soft nofile 10240" insertafter=EOF
- - lineinfile: dest=/etc/security/limits.conf line="* hard nofile 10240" insertafter=EOF
diff --git a/roles/copr/backend/files/provision/builderpb_nova.yml b/roles/copr/backend/files/provision/builderpb_nova.yml
index 97b11e22a..11c797e6e 100644
--- a/roles/copr/backend/files/provision/builderpb_nova.yml
+++ b/roles/copr/backend/files/provision/builderpb_nova.yml
@@ -11,6 +11,7 @@
keypair: buildsys
max_spawn_time: 600
spawning_vm_user: "fedora"
+ image_name: "copr-builder-f26-x86_64-beta"
tasks:
- name: generate builder name
@@ -61,5 +62,5 @@
- nss-softokn-freebl.i686
# DNF module will not resolve the deps, we must install deps manualy!
- name: install i686 version of nosync for multilib building
- dnf: name=https://kojipkgs.fedoraproject.org//packages/nosync/1.0/5.fc24/i686/nosync-1.0-5.fc24.i686.rpm state=present
+ dnf: name=https://kojipkgs.fedoraproject.org/packages/nosync/1.0/6.fc26/i686/nosync-1.0-6.fc26.i686.rpm state=present
when: prepare_base_image is defined
diff --git a/roles/copr/backend/files/provision/builderpb_nova_ppc64le.yml b/roles/copr/backend/files/provision/builderpb_nova_ppc64le.yml
index dc91142cf..73c460670 100644
--- a/roles/copr/backend/files/provision/builderpb_nova_ppc64le.yml
+++ b/roles/copr/backend/files/provision/builderpb_nova_ppc64le.yml
@@ -3,7 +3,7 @@
gather_facts: False
vars_files:
- - nova_cloud_vars_ppc64le.yml
+ - nova_cloud_vars.yml
vars:
# _OS_AUTH_OPTS: "--os-auth-url {{OS_AUTH_URL}} --os-username {{OS_USERNAME}} --os-password {{OS_PASSWORD}} --os-tenant-name {{OS_TENANT_NAME}} --os-tenant-id {{OS_TENANT_ID}} "
@@ -11,6 +11,7 @@
keypair: buildsys
max_spawn_time: 600
spawning_vm_user: "fedora"
+ image_name: "copr-builder-f26-ppc64le-beta"
tasks:
- name: generate builder name
@@ -41,7 +42,10 @@
#prepare_base_image: True
tasks:
- - include: "provision_builder_tasks_ppc64le.yml"
+ - name: swap on /dev/vda 100GB volume for tmpfs mock plugin
+ command: swapon /dev/vda
+
+ - include: "provision_builder_tasks.yml"
- name: disable offloading
command: ethtool -K eth0 tso off gro off gso off
diff --git a/roles/copr/backend/files/provision/builderpb_ppc64le.yml b/roles/copr/backend/files/provision/builderpb_ppc64le.yml
deleted file mode 100644
index af892422c..000000000
--- a/roles/copr/backend/files/provision/builderpb_ppc64le.yml
+++ /dev/null
@@ -1,45 +0,0 @@
-- name: check/create instance
- hosts: 127.0.0.1
- gather_facts: False
-
- tasks:
- - name: add hypervisor
- local_action: add_host hostname=rh-power2.fit.vutbr.cz groupname=spinup_vm_group
-
-
-- name: spinup vm
- hosts: spinup_vm_group
- gather_facts: False
- user: msuchy
-
- tasks:
- - name: spin up VM
- shell: /home/msuchy/bin/get-one-vm.sh
- register: get_one
-
- - debug: msg="{{ get_one.stdout }}"
-
- - set_fact: builder_ip="{{ get_one.stdout|extract_ip_from_stdout() }}"
-
- - name: wait for he host to be hot
- local_action: wait_for host={{ builder_ip }} port=22 delay=1 timeout=600
-
- - name: add builder ip to the special group
- local_action: add_host hostname={{ builder_ip }} groupname=builder_temp_group
-
-- name: provision builder
- hosts: builder_temp_group
- gather_facts: True
- user: root
-
- vars:
- # pass this options if you need to create new base image from snapshot
- #prepare_base_image: True
-
- tasks:
- - include: "provision_builder_tasks.yml"
-
- - name: disable offloading
- command: ethtool -K eth0 tso off gro off gso off
-
- - yum: state=latest enablerepo="updates-testing" name=mock
diff --git a/roles/copr/backend/files/provision/copr.repo b/roles/copr/backend/files/provision/copr.repo
deleted file mode 100644
index 90aa90916..000000000
--- a/roles/copr/backend/files/provision/copr.repo
+++ /dev/null
@@ -1,11 +0,0 @@
-[Copr]
-name=Copr
-failovermethod=priority
-baseurl=https://209.132.184.48/results/@copr/copr/fedora-$releasever-x86_64/
- https://copr-be.cloud.fedoraproject.org/results/@copr/copr/fedora-$releasever-x86_64/
- https://172.25.32.109/results/@copr/copr/fedora-$releasever-x86_64/
-
-enabled=1
-gpgcheck=1
-gpgkey=https://copr-be.cloud.fedoraproject.org/results/@copr/copr/pubkey.gpg
-skip_if_unavailable=1
diff --git a/roles/copr/backend/files/provision/files/mock/custom-1-i386.cfg b/roles/copr/backend/files/provision/files/mock/custom-1-i386.cfg
deleted file mode 100644
index bccbdc9be..000000000
--- a/roles/copr/backend/files/provision/files/mock/custom-1-i386.cfg
+++ /dev/null
@@ -1,24 +0,0 @@
-config_opts['root'] = 'custom-1-i386'
-config_opts['target_arch'] = 'i686'
-config_opts['legal_host_arches'] = ('i386', 'i586', 'i686', 'x86_64')
-config_opts['chroot_setup_cmd'] = ''
-config_opts['extra_chroot_dirs'] = [ '/run/lock', ]
-config_opts['package_manager'] = 'dnf'
-
-config_opts['yum.conf'] = """
-[main]
-keepcache=1
-debuglevel=2
-reposdir=/dev/null
-logfile=/var/log/dnf.log
-retries=20
-obsoletes=1
-gpgcheck=0
-assumeyes=1
-syslog_ident=mock
-syslog_device=
-install_weak_deps=0
-metadata_expire=0
-mdpolicy=group:primary
-
-"""
diff --git a/roles/copr/backend/files/provision/files/mock/custom-1-ppc64le.cfg b/roles/copr/backend/files/provision/files/mock/custom-1-ppc64le.cfg
deleted file mode 100644
index 8742102d8..000000000
--- a/roles/copr/backend/files/provision/files/mock/custom-1-ppc64le.cfg
+++ /dev/null
@@ -1,24 +0,0 @@
-config_opts['root'] = 'custom-1-ppc64le'
-config_opts['target_arch'] = 'ppc64le'
-config_opts['legal_host_arches'] = ('ppc64le',)
-config_opts['chroot_setup_cmd'] = ''
-config_opts['extra_chroot_dirs'] = [ '/run/lock', ]
-config_opts['package_manager'] = 'dnf'
-
-config_opts['yum.conf'] = """
-[main]
-keepcache=1
-debuglevel=2
-reposdir=/dev/null
-logfile=/var/log/dnf.log
-retries=20
-obsoletes=1
-gpgcheck=0
-assumeyes=1
-syslog_ident=mock
-syslog_device=
-install_weak_deps=0
-metadata_expire=0
-mdpolicy=group:primary
-
-"""
diff --git a/roles/copr/backend/files/provision/files/mock/custom-1-x86_64.cfg b/roles/copr/backend/files/provision/files/mock/custom-1-x86_64.cfg
deleted file mode 100644
index 43554b106..000000000
--- a/roles/copr/backend/files/provision/files/mock/custom-1-x86_64.cfg
+++ /dev/null
@@ -1,24 +0,0 @@
-config_opts['root'] = 'custom-1-x86_64'
-config_opts['target_arch'] = 'x86_64'
-config_opts['legal_host_arches'] = ('x86_64',)
-config_opts['chroot_setup_cmd'] = ''
-config_opts['extra_chroot_dirs'] = [ '/run/lock', ]
-config_opts['package_manager'] = 'dnf'
-
-config_opts['yum.conf'] = """
-[main]
-keepcache=1
-debuglevel=2
-reposdir=/dev/null
-logfile=/var/log/dnf.log
-retries=20
-obsoletes=1
-gpgcheck=0
-assumeyes=1
-syslog_ident=mock
-syslog_device=
-install_weak_deps=0
-metadata_expire=0
-mdpolicy=group:primary
-
-"""
diff --git a/roles/copr/backend/files/provision/files/mock/fedora-26-i386.cfg b/roles/copr/backend/files/provision/files/mock/fedora-26-i386.cfg
deleted file mode 100644
index bf5d9abc2..000000000
--- a/roles/copr/backend/files/provision/files/mock/fedora-26-i386.cfg
+++ /dev/null
@@ -1,72 +0,0 @@
-config_opts['root'] = 'fedora-26-i386'
-config_opts['target_arch'] = 'i686'
-config_opts['legal_host_arches'] = ('i386', 'i586', 'i686', 'x86_64')
-config_opts['chroot_setup_cmd'] = 'install @buildsys-build'
-config_opts['dist'] = 'fc26' # only useful for --resultdir variable subst
-config_opts['extra_chroot_dirs'] = [ '/run/lock', ]
-config_opts['releasever'] = '26'
-config_opts['package_manager'] = 'dnf'
-
-config_opts['yum.conf'] = """
-[main]
-keepcache=1
-debuglevel=2
-reposdir=/dev/null
-logfile=/var/log/yum.log
-retries=20
-obsoletes=1
-gpgcheck=0
-assumeyes=1
-syslog_ident=mock
-syslog_device=
-install_weak_deps=0
-metadata_expire=0
-mdpolicy=group:primary
-best=1
-
-# repos
-
-[fedora]
-name=fedora
-metalink=https://mirrors.fedoraproject.org/metalink?repo=fedora-$releasever&arch=$basearch
-failovermethod=priority
-gpgkey=file:///usr/share/distribution-gpg-keys/fedora/RPM-GPG-KEY-fedora-26-primary
-gpgcheck=1
-
-[updates]
-name=updates
-metalink=https://mirrors.fedoraproject.org/metalink?repo=updates-released-f$releasever&arch=$basearch
-failovermethod=priority
-gpgkey=file:///usr/share/distribution-gpg-keys/fedora/RPM-GPG-KEY-fedora-26-primary
-gpgcheck=1
-
-[updates-testing]
-name=updates-testing
-metalink=https://mirrors.fedoraproject.org/metalink?repo=updates-testing-f$releasever&arch=$basearch
-failovermethod=priority
-enabled=0
-
-[local]
-name=local
-baseurl=https://kojipkgs.fedoraproject.org/repos/f26-build/latest/i386/
-cost=2000
-enabled=0
-
-[fedora-debuginfo]
-name=fedora-debuginfo
-metalink=https://mirrors.fedoraproject.org/metalink?repo=fedora-debug-$releasever&arch=$basearch
-failovermethod=priority
-enabled=0
-
-[updates-debuginfo]
-name=updates-debuginfo
-metalink=https://mirrors.fedoraproject.org/metalink?repo=updates-released-debug-f$releasever&arch=$basearch
-failovermethod=priority
-enabled=0
-
-[updates-testing-debuginfo]
-name=updates-testing-debuginfo
-metalink=https://mirrors.fedoraproject.org/metalink?repo=updates-testing-debug-f$releasever&arch=$basearch
-failovermethod=priority
-enabled=0
-"""
diff --git a/roles/copr/backend/files/provision/files/mock/fedora-26-ppc64le.cfg b/roles/copr/backend/files/provision/files/mock/fedora-26-ppc64le.cfg
deleted file mode 100644
index dfb36e46e..000000000
--- a/roles/copr/backend/files/provision/files/mock/fedora-26-ppc64le.cfg
+++ /dev/null
@@ -1,72 +0,0 @@
-config_opts['root'] = 'fedora-26-ppc64le'
-config_opts['target_arch'] = 'ppc64le'
-config_opts['legal_host_arches'] = ('ppc64le',)
-config_opts['chroot_setup_cmd'] = 'install @buildsys-build'
-config_opts['dist'] = 'fc26' # only useful for --resultdir variable subst
-config_opts['extra_chroot_dirs'] = [ '/run/lock', ]
-config_opts['releasever'] = '26'
-config_opts['package_manager'] = 'dnf'
-
-config_opts['yum.conf'] = """
-[main]
-keepcache=1
-debuglevel=1
-reposdir=/dev/null
-logfile=/var/log/yum.log
-retries=20
-obsoletes=1
-gpgcheck=0
-assumeyes=1
-syslog_ident=mock
-syslog_device=
-install_weak_deps=0
-metadata_expire=0
-mdpolicy=group:primary
-best=1
-
-# repos
-
-[fedora]
-name=fedora
-metalink=https://mirrors.fedoraproject.org/metalink?repo=fedora-$releasever&arch=$basearch
-failovermethod=priority
-gpgkey=file:///usr/share/distribution-gpg-keys/fedora/RPM-GPG-KEY-fedora-26-primary
-gpgcheck=1
-
-[updates]
-name=updates
-metalink=https://mirrors.fedoraproject.org/metalink?repo=updates-released-f$releasever&arch=$basearch
-failovermethod=priority
-gpgkey=file:///usr/share/distribution-gpg-keys/fedora/RPM-GPG-KEY-fedora-26-primary
-gpgcheck=1
-
-[updates-testing]
-name=updates-testing
-metalink=https://mirrors.fedoraproject.org/metalink?repo=updates-testing-f$releasever&arch=$basearch
-failovermethod=priority
-enabled=0
-
-[local]
-name=local
-baseurl=http://ppcpkgs.fedoraproject.org/repos/f26-build/latest/ppc64le/
-cost=2000
-enabled=0
-
-[fedora-debuginfo]
-name=fedora-debuginfo
-metalink=https://mirrors.fedoraproject.org/metalink?repo=fedora-debug-$releasever&arch=$basearch
-failovermethod=priority
-enabled=0
-
-[updates-debuginfo]
-name=updates-debuginfo
-metalink=https://mirrors.fedoraproject.org/metalink?repo=updates-released-debug-f$releasever&arch=$basearch
-failovermethod=priority
-enabled=0
-
-[updates-testing-debuginfo]
-name=updates-testing-debuginfo
-metalink=https://mirrors.fedoraproject.org/metalink?repo=updates-testing-debug-f$releasever&arch=$basearch
-failovermethod=priority
-enabled=0
-"""
diff --git a/roles/copr/backend/files/provision/files/mock/fedora-26-x86_64.cfg b/roles/copr/backend/files/provision/files/mock/fedora-26-x86_64.cfg
deleted file mode 100644
index 6ba4d1eed..000000000
--- a/roles/copr/backend/files/provision/files/mock/fedora-26-x86_64.cfg
+++ /dev/null
@@ -1,72 +0,0 @@
-config_opts['root'] = 'fedora-26-x86_64'
-config_opts['target_arch'] = 'x86_64'
-config_opts['legal_host_arches'] = ('x86_64',)
-config_opts['chroot_setup_cmd'] = 'install @buildsys-build'
-config_opts['dist'] = 'fc26' # only useful for --resultdir variable subst
-config_opts['extra_chroot_dirs'] = [ '/run/lock', ]
-config_opts['releasever'] = '26'
-config_opts['package_manager'] = 'dnf'
-
-config_opts['yum.conf'] = """
-[main]
-keepcache=1
-debuglevel=2
-reposdir=/dev/null
-logfile=/var/log/yum.log
-retries=20
-obsoletes=1
-gpgcheck=0
-assumeyes=1
-syslog_ident=mock
-syslog_device=
-install_weak_deps=0
-metadata_expire=0
-mdpolicy=group:primary
-best=1
-
-# repos
-
-[fedora]
-name=fedora
-metalink=https://mirrors.fedoraproject.org/metalink?repo=fedora-$releasever&arch=$basearch
-failovermethod=priority
-gpgkey=file:///usr/share/distribution-gpg-keys/fedora/RPM-GPG-KEY-fedora-26-primary
-gpgcheck=1
-
-[updates]
-name=updates
-metalink=https://mirrors.fedoraproject.org/metalink?repo=updates-released-f$releasever&arch=$basearch
-failovermethod=priority
-gpgkey=file:///usr/share/distribution-gpg-keys/fedora/RPM-GPG-KEY-fedora-26-primary
-gpgcheck=1
-
-[updates-testing]
-name=updates-testing
-metalink=https://mirrors.fedoraproject.org/metalink?repo=updates-testing-f$releasever&arch=$basearch
-failovermethod=priority
-enabled=0
-
-[local]
-name=local
-baseurl=https://kojipkgs.fedoraproject.org/repos/f26-build/latest/x86_64/
-cost=2000
-enabled=0
-
-[fedora-debuginfo]
-name=fedora-debuginfo
-metalink=https://mirrors.fedoraproject.org/metalink?repo=fedora-debug-$releasever&arch=$basearch
-failovermethod=priority
-enabled=0
-
-[updates-debuginfo]
-name=updates-debuginfo
-metalink=https://mirrors.fedoraproject.org/metalink?repo=updates-released-debug-f$releasever&arch=$basearch
-failovermethod=priority
-enabled=0
-
-[updates-testing-debuginfo]
-name=updates-testing-debuginfo
-metalink=https://mirrors.fedoraproject.org/metalink?repo=updates-testing-debug-f$releasever&arch=$basearch
-failovermethod=priority
-enabled=0
-"""
diff --git a/roles/copr/backend/files/provision/provision_builder_tasks.yml b/roles/copr/backend/files/provision/provision_builder_tasks.yml
index f3de7bbe6..982a1011e 100644
--- a/roles/copr/backend/files/provision/provision_builder_tasks.yml
+++ b/roles/copr/backend/files/provision/provision_builder_tasks.yml
@@ -1,109 +1,51 @@
-- name: install copr repo
- copy: src="copr.repo" dest="/etc/yum.repos.d/copr.repo"
+- shell: dnf -y upgrade
+ when: prepare_base_image is defined
- name: set bigger timeout for yum
ini_file: dest=/etc/yum.conf section=main option=timeout value=1000
+- name: set bigger timeout for dnf
+ ini_file: dest=/etc/dnf/dnf.conf section=main option=timeout value=1000
+
- name: install pkgs
- yum: state=present pkg={{ item }}
+ dnf: state=present pkg={{ item }}
with_items:
- dnf
- dnf-plugins-core
- mock
-# - mock-lvm
- createrepo_c
- yum-utils
- pyliblzma
- rsync
- openssh-clients
- - rsync
- libselinux-python
- libsemanage-python
- yum
- scl-utils-build
- ethtool
-# - fedpkg-copr
- nosync
- expect
-- name: set bigger timeout for dnf
- ini_file: dest=/etc/dnf/dnf.conf section=main option=timeout value=1000
-
-# this comes from https://copr-be.cloud.fedoraproject.org/results/%40copr/copr/fedora-23-x86_64/00179756-fedpkg-copr/fedpkg-copr-0.3-1.fc23.noarch.rpm
-# TODO put it in correct place
-# BZ 1241507
-- shell: yum-deprecated install -y fedpkg-copr || yum install -y fedpkg-copr
-
-- shell: yum-deprecated install -y fedpkg || yum install -y fedpkg
-
-# This needs to be updated for python-fedora
-- shell: yum-deprecated update -y python-requests || yum install -y python-requests
+- name: enable @copr/copr for now
+ shell: dnf copr -y enable @copr/copr
- name: make sure newest rpm
- dnf: name={{ item }} state=latest
+ dnf: state=latest pkg={{ item }}
with_items:
- rpm
- glib2
- ca-certificates
- mock
- dnf
- - koji
- - dnf-plugins-core
- - libsolv
- - hawkey
-
-- copy: src=files/fedpkg-copr.conf dest=/etc/rpkg/fedpkg-copr.conf
+ - copr-rpmbuild
- name: put updated mock configs into /etc/mock
template: src=files/mock/{{ item }} dest=/etc/mock
with_items:
- site-defaults.cfg
- - custom-1-x86_64.cfg
- - custom-1-i386.cfg
- - custom-1-ppc64le.cfg
- - fedora-26-x86_64.cfg
- - fedora-26-i386.cfg
-
-# TODO: file globs or ansible escaping works strange, now using predefined file location
-#- name: "fix mock configs to use nearest mirror"
-# # Affects only some fedora configs ... repo urls are tricky. TODO: add for epel
-# shell: "ls -1 /etc/mock/fedora*.cfg"
-# register: mock_fedora_configs_to_patch
-
-- name: "patch mock.cfg (updates)"
- replace: >
- dest={{ item }}
- regexp='^metalink=https://mirrors.fedoraproject.org/metalink\?repo=updates-released-f\$releasever&arch=\$basearch'
- replace='baseurl=http://infrastructure.fedoraproject.org/pub/fedora/linux/updates/$releasever/$basearch/'
- with_items: #mock_fedora_configs_to_patch.stdout_lines
- - /etc/mock/fedora-24-i386.cfg
- - /etc/mock/fedora-24-x86_64.cfg
- - /etc/mock/fedora-25-i386.cfg
- - /etc/mock/fedora-25-x86_64.cfg
- - /etc/mock/fedora-26-i386.cfg
- - /etc/mock/fedora-26-x86_64.cfg
-
-- name: "patch mock.cfg (main)"
- replace: >
- dest={{ item }}
- regexp='^metalink=https://mirrors.fedoraproject.org/metalink\?repo=fedora-f\$releasever&arch=\$basearch'
- replace='baseurl=http://infrastructure.fedoraproject.org/pub/fedora/linux/releases/$releasever/Everything/$basearch/os/'
- with_items: #mock_fedora_configs_to_patch.stdout_lines
- - /etc/mock/fedora-24-i386.cfg
- - /etc/mock/fedora-24-x86_64.cfg
- - /etc/mock/fedora-25-i386.cfg
- - /etc/mock/fedora-25-x86_64.cfg
- - /etc/mock/fedora-26-i386.cfg
- - /etc/mock/fedora-26-x86_64.cfg
-
-
-# ansible doesn't support simultaneously usage of async and with_* options
-# it's not even planned for implementation, see https://github.com/ansible/ansible/issues/5841
-- name: prepare cache
- when: prepare_base_image is defined
- async: 14400
- shell: "for i in epel-5-i386 epel-5-x86_64 epel-6-i386 epel-6-x86_64 epel-7-x86_64 fedora-23-i386 fedora-23-x86_64 fedora-24-i386 fedora-24-x86_64 fedora-25-i386 fedora-25-x86_64 fedora-26-i386 fedora-26-x86_64 fedora-rawhide-i386 fedora-rawhide-x86_64; do mock --init -r $i; done"
+- name: put copr-rpmbuild configuration file in the right place
+ copy: src=files/main.ini dest=/etc/copr-rpmbuild/main.ini
- name: mockbuilder user
user: name=mockbuilder groups=mock
@@ -122,11 +64,3 @@
- name: disable core dumps
ini_file: dest=/etc/systemd/coredump.conf section=Coredump option=Storage value=none
-# notify:
-# - systemctl daemon-reload
-
-- name: 'Remove %_install_langs from /etc/rpm/macros.image-language-conf so that `yum-deprecated --installroot=<chroot-path> install glibc-all-langpacks` installs all possible locale into build chroots'
- lineinfile:
- dest: '/etc/rpm/macros.image-language-conf'
- regexp: '^%_install_lang.*'
- state: 'absent'
diff --git a/roles/copr/backend/files/provision/provision_builder_tasks_ppc64le.yml b/roles/copr/backend/files/provision/provision_builder_tasks_ppc64le.yml
deleted file mode 100644
index 5ef7791eb..000000000
--- a/roles/copr/backend/files/provision/provision_builder_tasks_ppc64le.yml
+++ /dev/null
@@ -1,94 +0,0 @@
-- name: install copr repo
- copy: src="copr.repo" dest="/etc/yum.repos.d/copr.repo"
-
-- name: set bigger timeout for yum
- ini_file: dest=/etc/yum.conf section=main option=timeout value=1000
-
-- name: install pkgs
- yum: state=present pkg={{ item }}
- with_items:
- - dnf
- - dnf-plugins-core
- - mock
-# - mock-lvm
- - createrepo_c
- - yum-utils
- - pyliblzma
- - rsync
- - openssh-clients
- - rsync
- - libselinux-python
- - libsemanage-python
- - yum
- - scl-utils-build
- - ethtool
-# - fedpkg-copr
- - nosync
- - expect
-
-- name: set bigger timeout for dnf
- ini_file: dest=/etc/dnf/dnf.conf section=main option=timeout value=1000
-
-# this comes from https://copr-be.cloud.fedoraproject.org/results/%40copr/copr/fedora-23-x86_64/00179756-fedpkg-copr/fedpkg-copr-0.3-1.fc23.noarch.rpm
-# TODO put it in correct place
-# BZ 1241507
-- shell: yum-deprecated install -y fedpkg-copr || yum install -y fedpkg-copr
-
-- shell: yum-deprecated install -y fedpkg || yum install -y fedpkg
-
-# This needs to be updated for python-fedora
-- shell: yum-deprecated update -y python-requests || yum install -y python-requests
-
-- name: make sure newest rpm
- dnf: name={{ item }} state=latest
- with_items:
- - rpm
- - glib2
- - ca-certificates
- - mock
- - dnf
- - koji
- - dnf-plugins-core
- - libsolv
- - hawkey
-
-- copy: src=files/fedpkg-copr.conf dest=/etc/rpkg/fedpkg-copr.conf
-
-- name: put updated mock configs into /etc/mock
- template: src=files/mock/{{ item }} dest=/etc/mock
- with_items:
- - fedora-26-ppc64le.cfg
- - site-defaults.cfg
-
-# ansible doesn't support simultaneously usage of async and with_* options
-# it's not even planned for implementation, see https://github.com/ansible/ansible/issues/5841
-- name: prepare cache
- when: prepare_base_image is defined
- async: 14400
- shell: "for i in fedora-23-ppc64le fedora-24-ppc64le fedora-25-ppc64le fedora-26-ppc64le fedora-rawhide-ppc64le; do mock --init -r $i; done"
-
-- name: mockbuilder user
- user: name=mockbuilder groups=mock
-
-- name: mockbuilder .ssh
- file: state=directory path=/home/mockbuilder/.ssh mode=0700 owner=mockbuilder group=mockbuilder
-
-- name: mockbuilder authorized_keys
- authorized_key: user=mockbuilder key='{{ lookup('file', '/home/copr/provision/files/buildsys.pub') }}'
-
-- name: root authorized_keys
- authorized_key: user=root key='{{ lookup('file', '/home/copr/provision/files/buildsys.pub') }}'
-
-- lineinfile: dest=/etc/security/limits.conf line="* soft nofile 10240" insertafter=EOF
-- lineinfile: dest=/etc/security/limits.conf line="* hard nofile 10240" insertafter=EOF
-
-- name: disable core dumps
- ini_file: dest=/etc/systemd/coredump.conf section=Coredump option=Storage value=none
-# notify:
-# - systemctl daemon-reload
-
-- name: 'Remove %_install_langs from /etc/rpm/macros.image-language-conf so that `yum-deprecated --installroot=<chroot-path> install glibc-all-langpacks` installs all possible locale into build chroots'
- lineinfile:
- dest: '/etc/rpm/macros.image-language-conf'
- regexp: '^%_install_lang.*'
- state: 'absent'
diff --git a/roles/copr/backend/files/provision/terminatepb.yml b/roles/copr/backend/files/provision/terminatepb.yml
deleted file mode 100644
index 372c50394..000000000
--- a/roles/copr/backend/files/provision/terminatepb.yml
+++ /dev/null
@@ -1,17 +0,0 @@
----
-- name: terminate instance
- hosts: all
- user: root
- gather_facts: False
-
- vars_files:
- - nova_cloud_vars.yml
-
- vars:
- - OS_USERNAME_OLD: msuchy
- - OS_AUTH_URL_OLD: http://172.23.0.2:5000/v2.0
- # todo: remove after transition to new cloud
-
- tasks:
- - name: terminate it
- local_action: nova_compute auth_url={{OS_AUTH_URL_OLD}} login_password={{OS_PASSWORD}} login_tenant_name={{OS_TENANT_NAME}} login_username={{OS_USERNAME_OLD}} name="{{copr_task.vm_name}}" state=absent
diff --git a/roles/copr/backend/files/provision/terminatepb_ppc64le.yml b/roles/copr/backend/files/provision/terminatepb_ppc64le.yml
deleted file mode 100644
index c04fabd87..000000000
--- a/roles/copr/backend/files/provision/terminatepb_ppc64le.yml
+++ /dev/null
@@ -1,30 +0,0 @@
-- name: terminate instance
- hosts: 127.0.0.1
- gather_facts: False
-
- tasks:
- - name: add hypervisor
- local_action: add_host hostname=rh-power2.fit.vutbr.cz groupname=terminate_vm_group
-
-
-- name: terminate vm
- hosts: terminate_vm_group
- gather_facts: False
- user: msuchy
-
- tasks:
- - name: terminating vm26
- shell: /home/msuchy/bin/virsh-destroy-vm26.sh; /home/msuchy/bin/reinit-vm26.sh
- when: copr_task.vm_name == "rh-power-vm26.fit.vutbr.cz"
-
- - name: terminating vm27
- shell: /home/msuchy/bin/virsh-destroy-vm27.sh; /home/msuchy/bin/reinit-vm27.sh
- when: copr_task.vm_name == "rh-power-vm27.fit.vutbr.cz"
-
- - name: terminating vm28
- shell: /home/msuchy/bin/virsh-destroy-vm28.sh; /home/msuchy/bin/reinit-vm28.sh
- when: copr_task.vm_name == "rh-power-vm28.fit.vutbr.cz"
-
- - name: terminating vm29
- shell: /home/msuchy/bin/virsh-destroy-vm29.sh; /home/msuchy/bin/reinit-vm29.sh
- when: copr_task.vm_name == "rh-power-vm29.fit.vutbr.cz"
diff --git a/roles/copr/backend/tasks/main.yml b/roles/copr/backend/tasks/main.yml
index 956decb24..2270dbf4a 100644
--- a/roles/copr/backend/tasks/main.yml
+++ b/roles/copr/backend/tasks/main.yml
@@ -130,14 +130,11 @@
tags:
- provision_config
-- name: put some files into the provision subdir
- template: src="provision/nova_cloud_vars_ppc64le.yml" dest="/home/copr/provision/nova_cloud_vars_ppc64le.yml" owner=copr group=copr
+- name: put copr-rpmbuild configuration file into the provision subdir
+ template: src="provision/copr-rpmbuild/main.ini.j2" dest="/home/copr/provision/files/main.ini" owner=copr group=copr
tags:
- provision_config
-- name: put fedpkg-copr.conf into the provision files
- template: src="provision/fedpkg-copr.conf" dest="/home/copr/provision/files/fedpkg-copr.conf" owner=copr group=copr
-
- name: testing fixture
copy: dest="/home/copr/cloud/ec2rc.variable" content=""
when: devel
diff --git a/roles/copr/backend/templates/copr-be.conf.j2 b/roles/copr/backend/templates/copr-be.conf.j2
index 0bed0583a..f3276db88 100644
--- a/roles/copr/backend/templates/copr-be.conf.j2
+++ b/roles/copr/backend/templates/copr-be.conf.j2
@@ -110,5 +110,7 @@ timeout=86400
# utilized by /usr/bin/check_consecutive_build_fails.py
consecutive_failure_threshold=30
+builder_perl=True
+
[ssh]
builder_config=/home/copr/.ssh/config
diff --git a/roles/copr/backend/templates/provision/copr-rpmbuild/main.ini.j2 b/roles/copr/backend/templates/provision/copr-rpmbuild/main.ini.j2
new file mode 100644
index 000000000..9fa623ebc
--- /dev/null
+++ b/roles/copr/backend/templates/provision/copr-rpmbuild/main.ini.j2
@@ -0,0 +1,4 @@
+[main]
+frontend_url = http://{{ frontend_base_url }}/
+distgit_lookaside_url = http://{{ dist_git_base_url }}/repo/pkgs/
+distgit_clone_url = http://{{ dist_git_base_url }}/git/
diff --git a/roles/copr/backend/templates/provision/fedpkg-copr.conf b/roles/copr/backend/templates/provision/fedpkg-copr.conf
deleted file mode 100644
index 5a13ca7ba..000000000
--- a/roles/copr/backend/templates/provision/fedpkg-copr.conf
+++ /dev/null
@@ -1,10 +0,0 @@
-[fedpkg-copr]
-lookaside = http://{{ dist_git_base_url }}/repo/pkgs
-lookasidehash = md5
-lookaside_cgi = http://{{ dist_git_base_url }}/repo/pkgs/upload.cgi
-gitbaseurl = ssh://%(user)s@{{ dist_git_base_url }}/%(module)s
-anongiturl = git://{{ dist_git_base_url }}/%(module)s
-tracbaseurl = https://%(user)s:%(password)s@fedorahosted.org/rel-eng/login/xmlrpc
-branchre = f\d$|f\d\d$|el\d$|olpc\d$|master$
-kojiconfig = /etc/koji.conf
-build_client = koji
diff --git a/roles/copr/backend/templates/provision/nova_cloud_vars.yml b/roles/copr/backend/templates/provision/nova_cloud_vars.yml
index d426e8a4c..1135504f4 100644
--- a/roles/copr/backend/templates/provision/nova_cloud_vars.yml
+++ b/roles/copr/backend/templates/provision/nova_cloud_vars.yml
@@ -10,8 +10,6 @@ OS_USERNAME: "{{ copr_nova_username }}"
OS_PASSWORD_OLD: "{{ copr_nova_password|default('variable OS_PASSWORD_OLD is undefined') }}"
OS_PASSWORD: "{{ copr_password|default('variable OS_PASSWORD is undefined')}}"
-
-image_name: "{{ copr_builder_image_name }}"
flavor_name: "{{ copr_builder_flavor_name }}"
network_name: "{{ copr_builder_network_name }}"
key_name: "{{ copr_builder_key_name }}"
diff --git a/roles/copr/backend/templates/provision/nova_cloud_vars_ppc64le.yml b/roles/copr/backend/templates/provision/nova_cloud_vars_ppc64le.yml
deleted file mode 100644
index f84fa797e..000000000
--- a/roles/copr/backend/templates/provision/nova_cloud_vars_ppc64le.yml
+++ /dev/null
@@ -1,18 +0,0 @@
----
-OS_AUTH_URL: "{{ copr_nova_auth_url }}"
-
-OS_TENANT_ID: "{{ copr_nova_tenant_id }}"
-OS_TENANT_NAME: "{{ copr_nova_tenant_name }}"
-
-OS_USERNAME: "{{ copr_nova_username }}"
-
-# remove default values after transition to the new cloud is finished
-OS_PASSWORD_OLD: "{{ copr_nova_password|default('variable OS_PASSWORD_OLD is undefined') }}"
-OS_PASSWORD: "{{ copr_password|default('variable OS_PASSWORD is undefined')}}"
-
-
-image_name: "builder-f24-ppc64le-swapmounted-freshmockconfigs"
-flavor_name: "{{ copr_builder_flavor_name }}"
-network_name: "{{ copr_builder_network_name }}"
-key_name: "{{ copr_builder_key_name }}"
-security_groups: "{{ copr_builder_security_groups }}"