ansible/roles/copr/backend/files/provision/provision_builder_tasks.yml
Miroslav Suchý ee4b94f456 copr: use mock-1.2.10
so we avoid the problem with btrfs
2015-06-16 08:43:09 +02:00

75 lines
2.7 KiB
YAML

- 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
- get_url: url=https://kojipkgs.fedoraproject.org//packages/mock/1.2.10/1.fc21/noarch/mock-1.2.10-1.fc21.noarch.rpm dest=/tmp/
- yum: state=present name=/tmp/mock-1.2.10-1.fc21.noarch.rpm
- name: make sure newest rpm
# todo: replace with dnf after ansible 1.9 is available
yum: name={{ item }} state=latest
with_items:
- rpm
- glib2
- ca-certificates
- name: put updated mock configs into /etc/mock
template: src=files/mock/{{ item }} dest=/etc/mock
with_items:
- site-defaults.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"
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-20-i386.cfg
- /etc/mock/fedora-20-x86_64.cfg
- /etc/mock/fedora-21-i386.cfg
- /etc/mock/fedora-21-x86_64.cfg
- /etc/mock/fedora-22-i386.cfg
- /etc/mock/fedora-22-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-20-i386 fedora-20-x86_64 fedora-21-i386 fedora-21-x86_64 fedora-22-i386 fedora-22-x86_64 fedora-rawhide-i386 fedora-rawhide-x86_64; 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