#241 fedpkg (new-)sources should fail with git tracked files
Closed: Fixed by onosek. Opened by churchyard.

It is currently possible to upload a git tracked file (such as the specfile) to lookaside cache via fedpkg new-sources. Later, if somebody changes the specfile in git and doesn't upload a newer version, the changes are overridden by fedpkg sources.

See https://pagure.io/fedora-infrastructure/issue/7049

It should be and error when somebody tries to upload/download a git tracked file from/to lookaside cache:

Error: Attempting a download FILENAME that would override a git tracked file. Either remove the corresponding line from sources file to keep the git tracked one or git rm the file to allow the download.

Error: Attempting to upload a git tracked file FILENAME. Only upload files not tracked by git. You can use git rm --cached to untrack a file from git. Hint: Use git for text files like the spec file, patches or helper scripts. Use the lookaside cache for binary blobs, usually upstream source tarballs.


Metadata Update from @cqi:
- Issue set to the milestone: NEXT
- Issue tagged with: RFE

Metadata Update from @cqi:
- Issue tagged with: rpkg

Commit 8f9dbd86 fixes this issue

Thank You \o/

FTR that commit is in rpkg repo, https://pagure.io/rpkg/c/8f9dbd86

Metadata Update from @onosek:
- Issue set to the milestone: 1.38 (was: NEXT)

Hi, I hit in this issue

I have a script which automatically read the spec sources for upload it .
is someting lik:
rfpkg new-sources spectool -l gstreamer1-libav.spec | grep / | sed 's/.*\///'
when the spec have a patch with a full URL (https://gitlab.freedesktop.org/gstreamer/gst-libav/-/merge_requests/139.patch) it gives me
Could not execute new_sources: Error: Attempting to upload a git tracked file '139.patch'.

So instead error I prefer just a warning and skip the file in question , is that possible ?

Hi, I hit in this issue

I have a script which automatically read the spec sources for upload it .
is someting lik:
rfpkg new-sources spectool -l gstreamer1-libav.spec | grep / | sed 's/.*\///'
when the spec have a patch with a full URL (https://gitlab.freedesktop.org/gstreamer/gst-libav/-/merge_requests/139.patch) it gives me
Could not execute new_sources: Error: Attempting to upload a git tracked file '139.patch'.

So instead error I prefer just a warning and skip the file in question , is that possible ?

JFTR
I could solved my problem mention in previous comment adding option --sources to spectool
spectool -l --sources gstreamer1-libav.spec | grep / | sed 's/.*\///'

Metadata
Related Pull Requests