git-build-recipe's pristine-tar support assumes the pristine-tar branch name upstream
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
git-build-recipe |
New
|
Undecided
|
Unassigned |
Bug Description
Our git importer has to differentiate between Debian and Ubuntu, so provides two separate pristine-tar branches under two separate names. This accommodates the cases where Debian and Ubuntu did not share identical orig tarballs.
We need a mechanism to specify the remote pristine-tar branch name in a build recipe, or alternatively we need a more general mechanism to create a branch locally that tracks an arbitrary remote branch.
Use case: I'm trying to combine the server team's git importer work with automatic build recipes in order to be able to automatically maintain specific deltas against Ubuntu in PPAs. The general idea is to be able to create a delta once (by branching from the imported repository) and then to leave the rest to automation. The importer will update its git repo, which will cause the build recipe to fire, merge in the pre-determined changes and build a patched version in a PPA (with a higher version than the archive).
Expected behaviour: git-build-recipe manages to find the pristine-tar branch I wish it to use, presumably by specifying it using some appropriate syntax in the build recipe.
Actual behaviour: git-build-recipe fails to find the pristine-tar branch imported by the git importer. It either fails, or if --allow-
Sorry, I am not very acquinted with git-build-recipe, but is this issue the same cause as the problem I experience when trying to build a debian upstream git with a recipe: https:/ /code.launchpad .net/~maarten- fonville/ +recipe/ cargo-daily
and then hitting this error: -0~{revtime}
# git-build-recipe format 0.4 deb-version {debupstream}
lp:~maarten-fonville/cargo/+git/trunk debian/sid
RUN ['git-build- recipe' , '--safe', '--no-build', '--manifest', '/home/ buildd/ build-RECIPEBRA NCHBUILD- 1374084/ chroot- autobuild/ home/buildd/ work/tree/ manifest' , '--distribution', 'artful', '--allow- fallback- to-native' , '--append-version', '~ubuntu17.10.1', '/home/ buildd/ build-RECIPEBRA NCHBUILD- 1374084/ chroot- autobuild/ home/buildd/ work/recipe' , '/home/ buildd/ build-RECIPEBRA NCHBUILD- 1374084/ chroot- autobuild/ home/buildd/ work/tree' ] 85f14f42873cf61 c9575015b25^ {tree}' : unknown revision or path not in the working tree. 5f14f42873cf61c 9575015b25\ ^\{tree\ } | (cd '/tmp/pristine- tar.eECyyROHMg' && tar x) git-build- recipe" , line 9, in <module> entry_point( 'git-build- recipe= =0.1', 'console_scripts', 'git-build- recipe' )() python3/ dist-packages/ gitbuildrecipe/ main.py" , line 164, in main version. upstream_ version, working_basedir) python3/ dist-packages/ gitbuildrecipe/ deb_util. py", line 74, in extract_ upstream_ tarball python3. 5/subprocess. py", line 581, in check_call ror(retcode, cmd) CalledProcessEr ror: Command '['pristine-tar', 'checkout', '/home/ buildd/ build-RECIPEBRA NCHBUILD- 1374084/ chroot- autobuild/ home/buildd/ work/tree/ cargo_0. 17.0.orig. tar.gz' ]' returned non-zero exit status 2
fatal: ambiguous argument 'bc12196f047d03
Use '--' to separate paths from revisions, like this:
'git <command> [<revision>...] -- [<file>...]'
fatal: Not a valid object name
tar: This does not look like a tar archive
tar: Exiting with failure status due to previous errors
pristine-tar: command failed: git archive --format=tar bc12196f047d038
Traceback (most recent call last):
File "/usr/bin/
load_
File "/usr/lib/
package_
File "/usr/lib/
cwd=path)
File "/usr/lib/
raise CalledProcessEr
subprocess.