From 82cb12960635655069dadf76c59e46dcc0f85650 Mon Sep 17 00:00:00 2001 From: Pavel Raiskup Date: Mar 09 2024 15:27:15 +0000 Subject: copr-builders: patch Mock for DNF5 --allowerasing compat --- diff --git a/roles/copr/backend/files/provision/files/patches/mock-allowerasing.patch b/roles/copr/backend/files/provision/files/patches/mock-allowerasing.patch new file mode 100644 index 0000000..1c8fa78 --- /dev/null +++ b/roles/copr/backend/files/provision/files/patches/mock-allowerasing.patch @@ -0,0 +1,19 @@ +diff --git a/mock/py/mockbuild/config.py b/mock/py/mockbuild/config.py +index 67027ca6..2178c5b7 100644 +--- a/mock/py/mockbuild/config.py ++++ b/mock/py/mockbuild/config.py +@@ -328,7 +328,13 @@ def setup_default_config_opts(): + config_opts['dnf5_disable_plugins'] = [] + # No --allowerasing with remove, per + # https://github.com/rpm-software-management/dnf5/issues/729 +- config_opts["dnf5_avoid_opts"] = {"remove": ["--allowerasing"]} ++ config_opts["dnf5_avoid_opts"] = { ++ "remove": ["--allowerasing"], ++ "repoquery": ["--allowerasing"], ++ "makecache": ["--allowerasing"], ++ "search": ["--allowerasing"], ++ "info": ["--allowerasing"], ++ } + + config_opts['microdnf_command'] = '/usr/bin/microdnf' + # "dnf-install" is special keyword which tells mock to use install but with DNF diff --git a/roles/copr/backend/files/provision/provision_builder_tasks.yml b/roles/copr/backend/files/provision/provision_builder_tasks.yml index 16f8902..100bacd 100644 --- a/roles/copr/backend/files/provision/provision_builder_tasks.yml +++ b/roles/copr/backend/files/provision/provision_builder_tasks.yml @@ -229,6 +229,14 @@ # shell: /usr/bin/copr-update-builder # when: mock_updated.changed +- name: patch from https://github.com/rpm-software-management/mock/pull/1341 + patch: + src: patches/mock-allowerasing.patch + dest: /usr/lib/python3.12/site-packages/mockbuild/config.py + when: + - starting_builder + ignore_errors: true + - name: put copr-rpmbuild configuration file in the right place copy: src=files/main.ini dest=/etc/copr-rpmbuild/main.ini when: