Bug 1729216 - failed to build from dist-git using "git" protocol
Summary: failed to build from dist-git using "git" protocol
Alias: None
Product: Red Hat Internal Copr
Classification: Internal
Component: backend
Version: unspecified
Hardware: Unspecified
OS: Unspecified
Target Milestone: ---
Assignee: Copr Team
QA Contact:
Depends On:
TreeView+ depends on / blocked
Reported: 2019-07-11 15:29 UTC by Martin Pavlásek
Modified: 2020-12-11 16:25 UTC (History)
1 user (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Last Closed: 2020-12-11 16:25:08 UTC

Attachments (Terms of Use)

Description Martin Pavlásek 2019-07-11 15:29:19 UTC
Description of problem:
I couldn't build a package with dist-git source using 'git' protocol. As workaround I tried to switch to "https" protocol and it works.



Discovered by this build:

Version-Release number of selected component (if applicable):

How reproducible:

Fragment from build log:

Generated rpkg config:
preprocess_spec = True
# auto-packing is deprecated:
auto_pack = True

lookaside = git://pkgs.devel.redhat.com/repo/pkgs/%(ns1)s/%(name)s/%(filename)s/%(hashtype)s/%(hash)s/%(filename)s
anongiturl = git://pkgs.devel.redhat.com/%(module)s

Writing config into /tmp/tmpsoikufo_/.config/rpkg.conf
Running: rpkg srpm --outdir /var/lib/copr-rpmbuild/results3kv0lz7m --spec /tmp/tmpsoikufo_/python-django-mptt

cmd: ['rpkg', 'srpm', '--outdir', '/var/lib/copr-rpmbuild/results3kv0lz7m', '--spec', '/tmp/tmpsoikufo_/python-django-mptt']
cwd: /tmp/tmpsoikufo_/python-django-mptt
rc: 0
stdout: Downloading django-mptt-0.9.0.tar.gz from lookaside cache at pkgs.devel.redhat.com
stderr: (1, 'Protocol "git" not supported or disabled in libcurl')

Expected results:

Additional info:

Comment 1 Pavel Raiskup 2019-07-12 08:56:13 UTC
Ok, I though this is trivial to configure - but it's not.  Red Hat dist-git isn't
clean enough to support only one lookaside cache download pattern.  We have the
old one for e.g. RHEL 7, using md5:

and the new one for e.g. RHEL 8, using:


I can configure only one of those, not both without additional ugly patching.
Which one do you think is more valid for your use-case?

In Fedora dist-git - when they were migrating to new format -
all the old sources were hard-linked to support even the newer pattern.  So
while staying compatible with old pattern, everyone can use calmly the new

I for some time plan to implement better approach for dist-git builds, but
I'm still not there -- https://pagure.io/copr/copr/issue/529

Couldn't you work-around this problem by the approach from the following bug?

Comment 2 Martin Pavlásek 2019-07-12 12:53:53 UTC
For our purpose I'm currently interested in RHEL7, but I'm fine with workaround, that you pointed me.

Comment 3 Pavel Raiskup 2020-12-11 16:25:08 UTC
This is now fixed.  But we also have the direct dist-git support which
makes things much easier:

Note You need to log in before you can comment on or make changes to this bug.