Merge lp:~jelmer/launchpad-buildd/dpkg-buildpackage-sa into lp:launchpad-buildd

Proposed by Jelmer Vernooij
Status: Merged
Approved by: William Grant
Approved revision: 26
Merged at revision: 26
Proposed branch: lp:~jelmer/launchpad-buildd/dpkg-buildpackage-sa
Merge into: lp:launchpad-buildd
Diff against target: 25 lines (+4/-1)
2 files modified
buildrecipe (+2/-1)
debian/changelog (+2/-0)
To merge this branch: bzr merge lp:~jelmer/launchpad-buildd/dpkg-buildpackage-sa
Reviewer Review Type Date Requested Status
William Grant code Approve
Review via email: mp+82623@code.launchpad.net

Description of the change

Unconditionally include the orig tarball with a recipe build source upload.

By default, dpkg-buildpackage looks at the changelog and checks if there were older entries with the same upstream version beyond the current version [1]. If it finds older entries with the same upstream version, it doesn't bother including the orig tarball again - presumably because the archive already has it.

The -sa argument overrides this behaviour and makes dpkg-source always include the orig tarballs.

This makes it easier to upload recipe builds to PPAs even if there are previous entries in the same changelog that haven't been uploaded to that PPA.

[1] technically, beyond what is in the .changes file - but buildrecipe doesn't use -v.

To post a comment you must log in.
Revision history for this message
Martin Pool (mbp) wrote :

This looks good... couldn't including the source sometimes cause the
ppa upload to be rejected though, if that tarball is already present?
Or I guess ppas will tolerate that as long as the contents are the
same.

It may fail but probably less often.

Revision history for this message
William Grant (wgrant) :
review: Approve (code)
Revision history for this message
Jelmer Vernooij (jelmer) wrote :

> This looks good... couldn't including the source sometimes cause the
> ppa upload to be rejected though, if that tarball is already present?
> Or I guess ppas will tolerate that as long as the contents are the
> same.
>
> It may fail but probably less often.
The checksum is verified in all other situations too - the .dsc file that is generated by dpkg-source includes the orig tarball's checksum, regardless of whether it is included in the upload.

Not including the orig tarball does save some bandwidth in the normal case, but that shouldn't really be relevant inside of the data center.

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'buildrecipe'
2--- buildrecipe 2011-11-11 12:19:38 +0000
3+++ buildrecipe 2011-11-18 01:17:33 +0000
4@@ -179,7 +179,8 @@
5 :return: a retcode from dpkg-buildpackage.
6 """
7 retcode = self.chroot([
8- 'su', '-c', 'cd %s && /usr/bin/dpkg-buildpackage -i -I -us -uc -S'
9+ 'su', '-c',
10+ 'cd %s && /usr/bin/dpkg-buildpackage -i -I -us -uc -S -sa'
11 % self.source_dir_relative, self.username])
12 for filename in os.listdir(self.tree_path):
13 path = os.path.join(self.tree_path, filename)
14
15=== modified file 'debian/changelog'
16--- debian/changelog 2011-11-16 18:19:07 +0000
17+++ debian/changelog 2011-11-18 01:17:33 +0000
18@@ -5,6 +5,8 @@
19 already created at init-time.
20 * Remove unnecessary debian/launchpad-buildd.conffiles. debhelper
21 already adds the required conffiles.
22+ * In buildrecipe, pass -sa to dpkg-buildpackage so the orig tarball(s)
23+ always get included. LP: #891892
24
25 -- Jelmer Vernooij <jelmer@canonical.com> Fri, 11 Nov 2011 14:43:31 +0100
26

Subscribers

People subscribed via source and target branches