2015-04-03 16:18 GMT-03:00 Adam Williamson <adamwill(a)fedoraproject.org>:
Hmm, let me see if I understand :)
mock should be adapted to dnf or changed to call yum-deprecated on
F22
and F23.
the 'resolvedep' command was already marked as deprecated *in yum*:
* resolvedep dep1 [dep2] [...]
(maintained for legacy reasons only - use repoquery or
yum pro‐
vides)
Apparently yum is no longer an option in rawhide. The first error I had
was because yum is now a wrapper telling yum is deprecated and
exec'ing dnf, with yum arguments, i.e. the resolvedep deprecated
option, it will just fail.
so mock really should've been ported off it a while back. If
there
isn't a bug on mock for this already, we should file one.
It was working, so, this should not really be an issue, as yum is
supposed to be slowly forgotten.
As msuchy said, the best thing to do when you encounter something
that
has been affected by the transition is to file a bug and get it fixed,
not just use an older release.
I just noticed that in f21, dnf-plugins-core actually has a lot of
files, while in rawhide it is only man pages.
There is a kind of related bug report, for f20 at
https://bugzilla.redhat.com/show_bug.cgi?id=1198769
I was wondering why, running manually
/usr/bin/dnf builddep --installroot
/var/lib/mock/fedora-rawhide-x86_64/root/ --releasever 23
/var/lib/mock/fedora-rawhide-x86_64/root/builddir/build/SRPMS/ebay-cors-filter-1.0.1-1.fc23.src.rpm
would work, while mock has this log:
DEBUG util.py:452: Executing command: ['/usr/bin/dnf', 'builddep',
'--installroot', '/var/lib/mock/fedora-rawhide-x86_64/root/',
'--releasever', '23',
'/var/lib/mock/fedora-rawhide-x86_64/root//builddir/build/SRPMS/ebay-cors-filter-1.0.1-1.fc23.src.rpm']
...
DEBUG util.py:388: No such command: builddep. Please use /usr/bin/dnf --help
DEBUG util.py:388: It could be a DNF plugin command.
and this pattern have been happening for quite some time; I think more
than one month, and I just did the simple human thing to do :), that was
to switch to "mock -o--yum", and on rhel7, where I am most time
nowadays, but still trying to do fedora packaging :-), that is the only
option anyway.
Looking at this part of the mock code:
/usr/lib/python3.4/site-packages/mockbuild/package_manager.py:36
if args[0] == 'builddep':
args = args[1:]
invocation += self.builddep_command
common_opts = self.config[self.name + '_builddep_opts']
else:
invocation = [self.command]
common_opts = self.config[self.name + '_common_opts']
invocation += ['--installroot',
self.buildroot.make_chroot_path('')]
it looks like (and in a quick test appears to be it), it would be fixed
with something like:
# echo "config_opts['dnf_builddep_command'] = '/usr/bin/dnf
builddep'"
> /etc/mock/site-defaults.cfg
I will open a bug report about it.
Thanks,
Paulo