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

Attachment: pgp1mkRWJi6Li.pgp
Description: PGP signature

Reply via email to