From b37b1a52ead13e680e877cefe4e2e6c78dda38af Mon Sep 17 00:00:00 2001 From: Fabien Boucher Date: Feb 05 2020 16:03:26 +0000 Subject: mock-build: use -a to set intermediary repos instead of copyin --- diff --git a/roles/mock-build/tasks/main.yaml b/roles/mock-build/tasks/main.yaml index 90bded5..d92ba2a 100644 --- a/roles/mock-build/tasks/main.yaml +++ b/roles/mock-build/tasks/main.yaml @@ -1,33 +1,32 @@ --- - name: Set mock options fact set_fact: - mock_opts: "-v -r {{ mock_config }} --resultdir {{ ansible_user_dir }}/repo" + mock_opts: "-v -r {{ mock_config }} --localrepo {{ ansible_user_dir }}/repo" - name: Init the mock chroot command: mock {{ mock_opts }} --init -- name: Create intermediary repositories yum repos file - blockinfile: - path: "{{ ansible_user_dir }}/artifacts.repo" - create: true - content: | - {% for artifact in zuul.artifacts|default([]) %}{% if artifact.name == 'repo' %} - [{{ artifact.project | regex_replace('/', '_') }}-{{ artifact.change }}-{{ artifact.patchset }}] - name={{ artifact.project }}-{{ artifact.change }}-{{ artifact.patchset }} - enabled=1 - baseurl={{ artifact.url }} - gpgcheck=0 - +- name: Create intermediary repos baseurls for mock + set_fact: + baseurls: > + {% for artifact in zuul.artifacts|default([]) %} + {% if artifact.name == 'repo' %} -a {{ artifact.url }} {% endif %}{% endfor %} -- name: Copy artifacts.repo in the mock root +- name: Build the RPM shell: > - mock {{ mock_opts }} - --copyin {{ ansible_user_dir }}/artifacts.repo /etc/yum.repos.d/ + mock {{ mock_opts }} {{ baseurls|trim }} --postinstall --chain {{ srpm }} -- name: Build the RPM +- name: Copy results shell: > - mock {{ mock_opts }} --postinstall --rebuild {{ srpm }} + find {{ ansible_user_dir }}/repo/results/ -name {{ item }} + -exec cp {} {{ ansible_user_dir }}/repo/ \; + loop: + - "*.rpm" + - "*.log" + +- name: Remove results directory created by mock + command: rm -Rf {{ ansible_user_dir }}/repo/results - name: Create repository command: createrepo .