Re: Cleaning salsa build cache before a new build
Le 01/10/2025 à 19:20, Otto Kekäläinen a écrit :
Hi!
So turns out the "hand-made tarball" is not manually created by you, but simply the upstream release tarball as-is.
Seems to me your scenario is just a basic upstream import which will be fully automatic with `gbp import-orig --uscan` as long as the debian/gbp.conf, debian/watch (and debian/upstream/metadata + upstreamvcs remote) are correctly configured. See explanation in eg https://optimizedbyotto.com/post/debian-source-package-git/ <https://optimizedbyotto.com/post/debian-source-package-git/>
I will try to send you a MR with these fixed later in the week if I have time.
I found my problem: after fixing my initial mistake, I force-push all branches.
But I forgot to force-push tags. And upstream/3.7.8 was pointing to the previous (wrong) state.
Restarting the failed CI jobs make them pass. :-)
That said, there is still something strange for me. During my debug, I cloned the salsa-ci-team/pipeline project in order to add some debug stuff in the CI process (and changes the CI setup for taktuk)
I've been able to look at the state of the git repo. And I see in the logs (putting only the relevant parts, script is executed with "set -x") :
++ ls -lh /builds/debian/taktuk/build/
total 0
++ git branch -a -v --list
* (HEAD detached at 0ad4086) 0ad4086 for debug
master 8556c2c Fix filename with uscan
pristine-tar 9459f96 pristine-tar data for taktuk_3.7.8.orig.tar.gz
upstream a8e451b New upstream version 3.7.8
remotes/origin/HEAD -> origin/master
remotes/origin/fix-salsa 0ad4086 for debug
remotes/origin/jessie 0deac07 Rebuild for jessie-backports-sloppy.
remotes/origin/master 8556c2c Fix filename with uscan
remotes/origin/patch-queue/master de02849 Fix some typos in docs
remotes/origin/pristine-tar 9459f96 pristine-tar data for taktuk_3.7.8.orig.tar.gz
remotes/origin/stretch 9af48d4 Rebuild for stretch-backports.
remotes/origin/upstream a8e451b New upstream version 3.7.8
++ git status
HEAD detached at 0ad4086
Untracked files:
(use "git add <file>..." to include in what will be committed)
ccache.env
salsa.env
nothing added to commit but untracked files present (use "git add" to track)
++ gbp export-orig --tarball-dir=/builds/debian/taktuk/build/
gbp:info: All Orig tarballs 'taktuk_3.7.8.orig.tar.gz' found at '/builds/debian/taktuk/build/'
gbp:info: Creating taktuk_3.7.8.orig.tar.gz from 'upstream/3.7.8'
++ ls -lh /builds/debian/taktuk/build/
total 604K
-rw-r--r-- 1 root root 603K Oct 1 22:39 taktuk_3.7.8.orig.tar.gz
++ md5sum /builds/debian/taktuk/build//taktuk_3.7.8.orig.tar.gz
1599c0849df3e5c10a595be692220723 /builds/debian/taktuk/build//taktuk_3.7.8.orig.tar.gz
So, the 603K tarball was extracted from my git repo
It was not a previous file kept on the disk as I was thinking.
And the md5sum shows me that this is not the hand-made tarball version neither.
Now, cloning the salsa repo locally, I only copy-paste the output of relevant commands:
$ mkdir tmp
$ cd tmp
$ git clone git@salsa.debian.org:debian/taktuk.git
$ cd taktuk
$ git checkout pristine-tar
$ git checkout upstream
$ git checkout 0ad4086
$ git branch -a --list -v
* (HEAD détachée sur 0ad4086) 0ad4086 for debug
master 8556c2c Fix filename with uscan
pristine-tar 9459f96 pristine-tar data for taktuk_3.7.8.orig.tar.gz
upstream a8e451b New upstream version 3.7.8
remotes/origin/HEAD -> origin/master
remotes/origin/fix-salsa ef103f1 for debug
remotes/origin/jessie 0deac07 Rebuild for jessie-backports-sloppy.
remotes/origin/master 8556c2c Fix filename with uscan
remotes/origin/patch-queue/master de02849 Fix some typos in docs
remotes/origin/pristine-tar 9459f96 pristine-tar data for taktuk_3.7.8.orig.tar.gz
remotes/origin/stretch 9af48d4 Rebuild for stretch-backports.
remotes/origin/upstream a8e451b New upstream version 3.7.8
$ gbp export-orig --tarball-dir=$(pwd)/..
gbp:info: All Orig tarballs 'taktuk_3.7.8.orig.tar.gz' found at '/home/vdanjean/debian/mainteneur/taktuk/tmp/taktuk/..'
gbp:info: Creating /home/vdanjean/debian/mainteneur/taktuk/tmp/taktuk_3.7.8.orig.tar.gz
$ ls -l ..
total 132
drwxr-xr-x 10 vdanjean vdanjean 4096 2 oct. 01:07 taktuk
-rw-r--r-- 1 vdanjean vdanjean 126630 2 oct. 01:07 taktuk_3.7.8.orig.tar.gz
So, "git branch -a --list -v" shows me exactly the same state as the one on salsa CI
But "gbp export-orig --tarball-dir=..." leads to different tarballs on salsa CI and locally
In the (locally) cloned repo from salsa, the upstream/3.7.8 tag were wrong at this time.
So, I do not understand why, on salsa CI, "gbp export-orig" seems to use the "upstream/3.7.8" tag
but locally, "gbp export-orig" seems to rely on the branches (not the tag).
Different versions of gdb or pristine-tar?
Regards
Vincent
Reply to: