#741 `mbs-build local` gets confused about which dist-git branch to use
Closed: Invalid Opened by ncoghlan.

Attempting to fix an issue in the python3-ecosystem module, I'm hitting a problem where:

  • the local build is picking up a Rawhide dist-git change to the python-cryptography SRPM
  • the build environment is NOT picking up the corresponding update to python-cryptography-vectors for inclusion in the build environment

As a result, the build fails as described in https://github.com/modularity-modules/python3/issues/7 :

ERROR: Command failed: 
 # /usr/bin/dnf builddep --installroot /var/lib/mock/module-python3-ecosystem-make-requests-installable-20171011080225-Thread-32/root/ /var/lib/mock/module-python3-ecosystem-make-requests-installable-20171011080225-Thread-32/root//builddir/build/SRPMS/python-cryptography-2.1-1.module+557d1ef8.src.rpm
Last metadata expiration check: 0:00:00 ago on Tue 17 Oct 2017 18:59:21 AEST.
No matching package to install: 'python2-cryptography-vectors = 2.1'
No matching package to install: 'python3-cryptography-vectors = 2.1'
Package python3-setuptools-36.2.0-7.fc28.noarch is already installed, skipping.
Not all dependencies satisfied
Error: Some packages could not be found.

create empty commit and resubmit?

An empty commit where, though, as this is with an unmodified clone of the python3-ecosystem repo at https://src.fedoraproject.org/modules/python3-ecosystem

It does occur to me that I tried building that from a local bugfixing branch, so I'll see if going back to master helps at all.

It's also possible that this use case (building from a local bugfixing branch) is a variant of https://pagure.io/fm-orchestrator/issue/727 where I don't want the stream name to be derived from the current branch, I want to be able to specify it.

Looks like the issue isn't branch specific - even after switching back to master I get the same error.

I'm trying the empty-commit-and-rebuild approach to see if that at least restores consistency and picks up the latest SRPM version in both places.

Same symptoms with a forced empty commit - the python-cryptography 2.1 SRPM is pulled from the dist-git master branch, but there's no python-cyryptography-vectors 2.1 RPM available for installation into the module build environment.

Noting the relevant commits that seem to be preventing building the module:

  • python-cryptography: https://src.fedoraproject.org/rpms/python-cryptography/c/8a8b99cdc919c80a2190ec77fd66d0b8bb1b1592?branch=master
  • python-cryptography-vectors: https://src.fedoraproject.org/rpms/python-cryptography-vectors/c/c78fdd23ad8d961666d3351de1a57de15c391dbf?branch=master

It doesn't look like either of those has been rebuilt and pushed through bodhi yet, so perhaps the problem is with MBS retrieving module SRPMs directly from dist-git, but only allowing build dependencies to be satisfied by released RPMs?

Digging into this further, it looks like it can be classified as a problem in the way the python3-ecosystem module is defined: the python-cryptography component is listed as pulling from the RPM's master branch, but python-cryptography-vectors isn't explicitly listed in the module as a build dependency.

If I'm right about that, then this is less a bug report, and more "this is confusing" :)

Metadata Update from @ncoghlan:
- Issue close_status updated to: Invalid
- Issue status updated to: Closed (was: Open)

See also #742.

This issue has been migrated to Fedora Forge:
https://forge.fedoraproject.org/koji/mbs/issues/741

Please continue any further discussion there.

Metadata