Package: git-buildpackage Version: 0.9.13 Severity: important Hi,
I found a little oddity with --overlay. If ../buildarea/<packagename>-tmp exists (because I interrupted a build early with Ctrl-C), the next build will fail because <packagename>-tmp is missing (after gbp-buildpackage successfully renamed the old bits to <packagename>-tmp.obsolete.*.*). Rerunning the command again will succeed. This seems to be reproducible with a regular (non-native) package that does not use overlay mode by just using --git-overlay, --git-export-dir, --git-tarball-dir. (The build will fail in this case, but it seems to be sufficient to reproduce.) Here is the transcript from doing this with (a properly overlayed) package nvidia-cuda-toolkit (but debian/gbp.conf removed). I also noticed that it queries the source format quite often - why isn't that cached? $ mkdir -p ../build-area/nvidia-cuda-toolkit-tmp $ gbp buildpackage --git-verbose --git-overlay --git-export-dir=../build-area --git-tarball-dir=../tarballs --git-no-pristine-tar gbp:debug: ['git', 'rev-parse', '--show-cdup'] gbp:debug: ['git', 'rev-parse', '--is-bare-repository'] gbp:debug: ['git', 'rev-parse', '--git-dir'] gbp:debug: /bin/true [] [] gbp:debug: ['git', 'status', '--porcelain'] gbp:debug: ['git', 'symbolic-ref', 'HEAD'] gbp:debug: ['git', 'show-ref', 'refs/heads/master'] gbp:debug: ['git', 'ls-tree', 'HEAD'] gbp:debug: ['git', 'show', '--pretty=medium', 'HEAD:debian/source/format'] gbp:debug: ['git', 'show', '--pretty=medium', 'HEAD:debian/changelog'] gbp:debug: ['git', 'show', '--pretty=medium', 'HEAD:debian/source/format'] gbp:debug: ['git', 'show', '--pretty=medium', 'HEAD:debian/source/format'] gbp:debug: ['git', 'show', '--pretty=medium', 'HEAD:debian/source/format'] gbp:debug: ['git', 'show', '--pretty=medium', 'HEAD:debian/source/format'] gbp:debug: ['git', 'show-ref', '--verify', 'refs/heads/pristine-tar'] gbp:debug: ['git', 'show', '--pretty=medium', 'HEAD:debian/source/format'] gbp:debug: ['git', 'show', '--pretty=medium', 'HEAD:debian/source/format'] gbp:debug: ['git', 'show', '--pretty=medium', 'HEAD:debian/source/format'] gbp:debug: ['git', 'show', '--pretty=medium', 'HEAD:debian/source/format'] gbp:debug: ['git', 'show', '--pretty=medium', 'HEAD:debian/source/format'] gbp:debug: Looking for orig tarballs 'nvidia-cuda-toolkit_9.2.148.orig.tar.gz' at '../tarballs' gbp:info: All Orig tarballs 'nvidia-cuda-toolkit_9.2.148.orig.tar.gz' found at '../tarballs' gbp:debug: ['git', 'show', '--pretty=medium', 'HEAD:debian/source/format'] gbp:debug: ['git', 'show', '--pretty=medium', 'HEAD:debian/source/format'] gbp:info: Extracting 'nvidia-cuda-toolkit_9.2.148.orig.tar.gz' to '/tmp/gbp-test/build-area/nvidia-cuda-toolkit-tmp' gbp:debug: tar ['-C', '/tmp/gbp-test/build-area/nvidia-cuda-toolkit-tmp', '-a', '-xf', '../tarballs/nvidia-cuda-toolkit_9.2.148.orig.tar.gz'] [] tar: /tmp/gbp-test/build-area/nvidia-cuda-toolkit-tmp: Cannot open: No such file or directory tar: Error is not recoverable: exiting now gbp:error: Couldn't unpack '../tarballs/nvidia-cuda-toolkit_9.2.148.orig.tar.gz': it exited with 2 $ ls -l ../build-area/ total 0 drwxr-xr-x 2 beckmann beckmann 40 Mar 19 18:57 nvidia-cuda-toolkit-tmp.obsolete.1553018428.34257 lrwxrwxrwx 1 beckmann beckmann 62 Mar 19 19:00 nvidia-cuda-toolkit_9.2.148.orig.tar.gz -> /tmp/gbp-test/tarballs/nvidia-cuda-toolkit_9.2.148.orig.tar.gz $ gbp buildpackage --git-verbose --git-overlay --git-export-dir=../build-area --git-tarball-dir=../tarballs --git-no-pristine-tar gbp:debug: ['git', 'rev-parse', '--show-cdup'] gbp:debug: ['git', 'rev-parse', '--is-bare-repository'] gbp:debug: ['git', 'rev-parse', '--git-dir'] gbp:debug: /bin/true [] [] gbp:debug: ['git', 'status', '--porcelain'] gbp:debug: ['git', 'symbolic-ref', 'HEAD'] gbp:debug: ['git', 'show-ref', 'refs/heads/master'] gbp:debug: ['git', 'ls-tree', 'HEAD'] gbp:debug: ['git', 'show', '--pretty=medium', 'HEAD:debian/source/format'] gbp:debug: ['git', 'show', '--pretty=medium', 'HEAD:debian/changelog'] gbp:debug: ['git', 'show', '--pretty=medium', 'HEAD:debian/source/format'] gbp:debug: ['git', 'show', '--pretty=medium', 'HEAD:debian/source/format'] gbp:debug: ['git', 'show', '--pretty=medium', 'HEAD:debian/source/format'] gbp:debug: ['git', 'show', '--pretty=medium', 'HEAD:debian/source/format'] gbp:debug: ['git', 'show-ref', '--verify', 'refs/heads/pristine-tar'] gbp:debug: ['git', 'show', '--pretty=medium', 'HEAD:debian/source/format'] gbp:debug: ['git', 'show', '--pretty=medium', 'HEAD:debian/source/format'] gbp:debug: ['git', 'show', '--pretty=medium', 'HEAD:debian/source/format'] gbp:debug: ['git', 'show', '--pretty=medium', 'HEAD:debian/source/format'] gbp:debug: ['git', 'show', '--pretty=medium', 'HEAD:debian/source/format'] gbp:debug: Looking for orig tarballs 'nvidia-cuda-toolkit_9.2.148.orig.tar.gz' at '../tarballs' gbp:info: All Orig tarballs 'nvidia-cuda-toolkit_9.2.148.orig.tar.gz' found at '../tarballs' gbp:debug: ['git', 'show', '--pretty=medium', 'HEAD:debian/source/format'] gbp:debug: ['git', 'show', '--pretty=medium', 'HEAD:debian/source/format'] gbp:info: Extracting 'nvidia-cuda-toolkit_9.2.148.orig.tar.gz' to '/tmp/gbp-test/build-area/nvidia-cuda-toolkit-tmp' gbp:debug: tar ['-C', '/tmp/gbp-test/build-area/nvidia-cuda-toolkit-tmp', '-a', '-xf', '../tarballs/nvidia-cuda-toolkit_9.2.148.orig.tar.gz'] [] [this time it works as expected] Andreas