Bug#731633: dgit ignores my .gbp.conf settings [and 1 more messages]

2013-12-08 Thread Antoine Beaupré
On 2013-12-07 21:32:29, Ian Jackson wrote:
 Antoine Beaupré writes (Bug#731633: dgit ignores my .gbp.conf settings):
 Minor really. I usually build my git packages using cowbuilder, and I
 have a rather convoluted setup to build packages, on my wheezy box, in
 a sid chroot to (a) get a clean environment and (b) to build against
 sid for uploads.

 Thanks for the report.

 Right.  As the manpage says, you may use any technique you like to do
 the build, provided it results in a .dsc which matches your git tree
 exactly.

Ah right.

 So it's not necessary for the building functions in dgit to support
 every possible workflow.  However, I'm certainly open to improving
 dgit's build functions if it would be possible and useful.

Of course.

 My setup is a mix of those:
 ...
 dpkg-buildpackage: paquet source bugs-everywhere
 dpkg-buildpackage: version source 1.1.1-3
 dpkg-buildpackage: source changé par Antoine Beaupré anar...@debian.org
 dpkg-buildpackage: architecture hôte amd64
  dpkg-source -i.git/ -I.git --before-build bugs-everywhere-1.1.1
 dpkg-source: info: utilisation des options depuis 
 bugs-everywhere-1.1.1/debian/source/options : --single-debian-patch
 dpkg-checkbuilddeps : dépendances de construction non trouvées : tla darcs 
 monotone rcs python-numpydoc
 dpkg-buildpackage: avertissement: dépendances de construction et conflits 
 non satisfaits ; échec.
 dpkg-buildpackage: avertissement: (Utilisez l'option -d pour forcer.)
 gbp:error: Couldn't run 'dpkg-buildpackage -i\.git/ -I.git -us -uc 
 -v1.1.1-2': dpkg-buildpackage -i\.git/ -I.git return
 git-buildpackage: failed command: git-buildpackage -us -uc 
 --git-no-sign-tags '--git-builder=dpkg-buildpackage -i'\\'.g
 dgit: subprocess failed with error exit status 1

 So I think you are right that the problem here is that dgit is
 overriding --git-builder.  dgit needs to do this because the default
 ignore rules are not correct: git-buildpackage (and various other
 tools) ignore .gitignore (and perhaps other things) by default, which
 is not correct with dgit.

Uh. That's weird. Seems like a bug in git-buildpackage...

 As far as I know the only way to specify a different set of ignore
 rules with git-buildpackage is to override --git-builder.

Yeah, I have this in my .gbp.conf:

[DEFAULT]
cleaner = fakeroot debian/rules clean
postbuild = lintian $GBP_CHANGES_FILE
builder = /usr/bin/git-pbuilder

[git-buildpackage]
export-dir = ../build-area/

[git-import-orig]
dch = False

 As it happens, I think you can achieve the same effect with dgit's
 subcommand override options.  If I UTSL I see this in cmd_git_build:
 my @cmd =
 (qw(git-buildpackage -us -uc --git-no-sign-tags),
  --git-builder=@dpkgbuildpackage);

 So it may work to say something like:
 dgit --dpkg-buildpackage=git-pbuilder git-build

 I appreciate that this isn't particularly discoverable, but the
 ability to override dpkg-buildpackage is documented in the manual
 and if you run dgit with the -D option it will show you the commands
 it's running.  (Would it have been better to show this particular
 command by default?)

That would have been useful yes. But yeah, I must admit that I filed
those bugs without RTFM... my bad.

 This seems to work a little better here:
 DIST=sid ARCH=amd64 dgit git-build --git-builder=git-pbuilder
 It seems to me this shouldn't be hardcoded.

 I assume that this works only because something else is somehow
 overriding the dropping of .gitignore.

Hum... Not sure. In fact, I am not sure I understand what you mean about
that .gitignore thing... You're saying git-buildpackage doesn't
*respect* or *package* the .gitignore file?

 Later in this bug you followed up:

 Antoine Beaupré writes:
 Ah, after more complete testing, it seems that push fails with packages
 built through pbuilder, because it can't find the .dsc file:
 ...
 dgit: looked for .dsc bugs-everywhere_1.1.1-3.dsc, but Aucun fichier ou 
 dossier de ce type; maybe you forgot to build
 
 Indeed, the files are in ../build-area. But after moving the files into
 place (in ../), the push proceeds further. Maybe there should be an
 option to specify the build directory?

 I think that would be a good idea.  (I won't yet clone this bug report
 for that, because I want to finish the whole conversation before
 deciding what's best to do.)

Right. Or maybe look at gbp's config? Just brainstorming here...

 (But: there is already an option to specify the .changes file.  Does
 using it make dgit work in this case?  I ask because I have a feeling
 it might not...)

Crap, I missed that option too... I guess I'll try again during the next
upload! Maybe that's all that's needed really...

A.

-- 
Si Dieu existe, j'espère qu'Il a une excuse valable
- Daniel Pennac


pgp1mkRWJi6Li.pgp
Description: PGP signature


Bug#731633: dgit ignores my .gbp.conf settings

2013-12-07 Thread Antoine Beaupré
Package: dgit
Version: 0.19
Severity: minor

Minor really. I usually build my git packages using cowbuilder, and I
have a rather convoluted setup to build packages, on my wheezy box, in
a sid chroot to (a) get a clean environment and (b) to build against
sid for uploads.

My setup is a mix of those:

https://wiki.debian.org/PbuilderTricks
https://wiki.debian.org/PackagingWithGit#pbuilder
https://wiki.debian.org/cowbuilder#Using_with_git-buildpackage

Anyways, the point is I have this line in my .gbp.conf setting:

builder = /usr/bin/git-pbuilder

But when I try to build using dgit git-build, I get:

anarcat@marcos:bugs-everywhere$ dgit git-build
Format `3.0 (quilt)', urgh
dpkg-source: info: utilisation des options depuis 
bugs-everywhere/debian/source/options : --single-debian-patch
dpkg-source: avertissement: suppression du répertoire update-copyright ignorée
dpkg-source: info: aucune modification locale à enregistrer
nothing quilty to commit, ok.
canonical suite name for unstable is sid
changelog will contain changes since 1.1.1-2
dh clean --with=python2
   dh_testdir
   debian/rules override_dh_auto_clean
make[1]: entrant dans le répertoire « /home/anarcat/src/bugs-everywhere »
dh_auto_clean
make[2]: entrant dans le répertoire « /home/anarcat/src/bugs-everywhere »
/bin/rm -rf build libbe/_version.py doc/man/be.1 doc/man/be.1.html
make -C doc clean
make[3]: entrant dans le répertoire « /home/anarcat/src/bugs-everywhere/doc »
/bin/rm -rf .build libbe
make[3]: quittant le répertoire « /home/anarcat/src/bugs-everywhere/doc »
make[2]: quittant le répertoire « /home/anarcat/src/bugs-everywhere »
rm -f libbe/_version.py
make[1]: quittant le répertoire « /home/anarcat/src/bugs-everywhere »
   dh_clean
gbp:info: Exporting 'HEAD' to '/home/anarcat/src/build-area/bugs-everywhere-tmp'
gbp:info: Moving '/home/anarcat/src/build-area/bugs-everywhere-tmp' to 
'/home/anarcat/src/build-area/bugs-everywhere-1.
dpkg-buildpackage: paquet source bugs-everywhere
dpkg-buildpackage: version source 1.1.1-3
dpkg-buildpackage: source changé par Antoine Beaupré anar...@debian.org
dpkg-buildpackage: architecture hôte amd64
 dpkg-source -i.git/ -I.git --before-build bugs-everywhere-1.1.1
dpkg-source: info: utilisation des options depuis 
bugs-everywhere-1.1.1/debian/source/options : --single-debian-patch
dpkg-checkbuilddeps : dépendances de construction non trouvées : tla darcs 
monotone rcs python-numpydoc
dpkg-buildpackage: avertissement: dépendances de construction et conflits non 
satisfaits ; échec.
dpkg-buildpackage: avertissement: (Utilisez l'option -d pour forcer.)
gbp:error: Couldn't run 'dpkg-buildpackage -i\.git/ -I.git -us -uc -v1.1.1-2': 
dpkg-buildpackage -i\.git/ -I.git return
git-buildpackage: failed command: git-buildpackage -us -uc --git-no-sign-tags 
'--git-builder=dpkg-buildpackage -i'\\'.g
dgit: subprocess failed with error exit status 1

I notice --git-builder=dpkg-buildpackage seems hardcoded - why?

This seems to work a little better here:

DIST=sid ARCH=amd64 dgit git-build --git-builder=git-pbuilder

It seems to me this shouldn't be hardcoded.

A.

-- System Information:
Debian Release: 7.2
  APT prefers stable
  APT policy: (500, 'stable'), (500, 'oldstable')
Architecture: amd64 (x86_64)

Kernel: Linux 3.2.0-4-amd64 (SMP w/2 CPU cores)
Locale: LANG=fr_FR.utf8, LC_CTYPE=fr_FR.utf8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash


-- 
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Bug#731633: dgit ignores my .gbp.conf settings [and 1 more messages]

2013-12-07 Thread Ian Jackson
Antoine Beaupré writes (Bug#731633: dgit ignores my .gbp.conf settings):
 Minor really. I usually build my git packages using cowbuilder, and I
 have a rather convoluted setup to build packages, on my wheezy box, in
 a sid chroot to (a) get a clean environment and (b) to build against
 sid for uploads.

Thanks for the report.

Right.  As the manpage says, you may use any technique you like to do
the build, provided it results in a .dsc which matches your git tree
exactly.

So it's not necessary for the building functions in dgit to support
every possible workflow.  However, I'm certainly open to improving
dgit's build functions if it would be possible and useful.

 My setup is a mix of those:
...
 dpkg-buildpackage: paquet source bugs-everywhere
 dpkg-buildpackage: version source 1.1.1-3
 dpkg-buildpackage: source changé par Antoine Beaupré anar...@debian.org
 dpkg-buildpackage: architecture hôte amd64
  dpkg-source -i.git/ -I.git --before-build bugs-everywhere-1.1.1
 dpkg-source: info: utilisation des options depuis 
 bugs-everywhere-1.1.1/debian/source/options : --single-debian-patch
 dpkg-checkbuilddeps : dépendances de construction non trouvées : tla darcs 
 monotone rcs python-numpydoc
 dpkg-buildpackage: avertissement: dépendances de construction et conflits non 
 satisfaits ; échec.
 dpkg-buildpackage: avertissement: (Utilisez l'option -d pour forcer.)
 gbp:error: Couldn't run 'dpkg-buildpackage -i\.git/ -I.git -us -uc 
 -v1.1.1-2': dpkg-buildpackage -i\.git/ -I.git return
 git-buildpackage: failed command: git-buildpackage -us -uc --git-no-sign-tags 
 '--git-builder=dpkg-buildpackage -i'\\'.g
 dgit: subprocess failed with error exit status 1

So I think you are right that the problem here is that dgit is
overriding --git-builder.  dgit needs to do this because the default
ignore rules are not correct: git-buildpackage (and various other
tools) ignore .gitignore (and perhaps other things) by default, which
is not correct with dgit.

As far as I know the only way to specify a different set of ignore
rules with git-buildpackage is to override --git-builder.

As it happens, I think you can achieve the same effect with dgit's
subcommand override options.  If I UTSL I see this in cmd_git_build:
my @cmd =
(qw(git-buildpackage -us -uc --git-no-sign-tags),
 --git-builder=@dpkgbuildpackage);

So it may work to say something like:
dgit --dpkg-buildpackage=git-pbuilder git-build

I appreciate that this isn't particularly discoverable, but the
ability to override dpkg-buildpackage is documented in the manual
and if you run dgit with the -D option it will show you the commands
it's running.  (Would it have been better to show this particular
command by default?)

 This seems to work a little better here:
 DIST=sid ARCH=amd64 dgit git-build --git-builder=git-pbuilder
 It seems to me this shouldn't be hardcoded.

I assume that this works only because something else is somehow
overriding the dropping of .gitignore.


Later in this bug you followed up:

Antoine Beaupré writes:
 Ah, after more complete testing, it seems that push fails with packages
 built through pbuilder, because it can't find the .dsc file:
...
 dgit: looked for .dsc bugs-everywhere_1.1.1-3.dsc, but Aucun fichier ou 
 dossier de ce type; maybe you forgot to build
 
 Indeed, the files are in ../build-area. But after moving the files into
 place (in ../), the push proceeds further. Maybe there should be an
 option to specify the build directory?

I think that would be a good idea.  (I won't yet clone this bug report
for that, because I want to finish the whole conversation before
deciding what's best to do.)

(But: there is already an option to specify the .changes file.  Does
using it make dgit work in this case?  I ask because I have a feeling
it might not...)

Ian.


--
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org