Docker env for Debian packaging on non-Debian systems
ClosedPublic

Authored by dduvall on Nov 27 2017, 8:21 PM.

Details

Reviewers
thcipriani
akosiaris
hashar
Group Reviewers
Release-Engineering-Team
Commits
rGBLBR8d61f8a6d8a5: Docker env for Debian packaging on non-Debian systems
Patch without arc
git checkout -b D899 && curl -L https://phabricator.wikimedia.org/D899?download=true | git apply
Summary

Provide a Makefile and Dockerfile for easy generation of
debian/changelog entries on non-Debian systems and consistent testing
of package building.

e.g. Generate a new (uncommitted) debian/changelog section

make -f debian/Makefile changelog NEW_VERSION=0.2.0-2

e.g. Create a new deb and friends and copy the files back to the host

make -f debian/Makefile package
Test Plan

Run make -f debian/Makefile changelog NEW_VERSION=0.2.0-2 and verify the new
debian/changelog section. Run make -f debian/Makefile package and verify
the debian_* files copied back to the host's project directory.

Diff Detail

Repository
rGBLBR Blubber
Lint
Automatic diff as part of commit; lint not applicable.
Unit
Automatic diff as part of commit; unit tests not applicable.
dduvall created this revision.Nov 27 2017, 8:21 PM
Restricted Application added a reviewer: Release-Engineering-Team. · View Herald TranscriptNov 27 2017, 8:21 PM
Restricted Application added a project: Release-Engineering-Team. · View Herald Transcript
thcipriani accepted this revision.Nov 27 2017, 11:09 PM

Seems to work. I'm eager to get the debian/source/options merged. I do have a few nits inline.

debian/Makefile
26

This may end up a little confusing. If I made changes to the debian directory to try to fiddle with packaging and this undoes my fiddling.

49

nitpick: -N -> long version for clarity --new-version. Also, why is --ignore-branch needed if this is on the debian branch?

debian/source/options
3

\o/

This revision is now accepted and ready to land.Nov 27 2017, 11:09 PM
dduvall added inline comments.Nov 29 2017, 12:31 AM
debian/Makefile
26

Yeah, I thought about that. However, uncommitted things were messing with the package build when I was testing it, so I guess it can be confusing either way.

49

Good point on --new-version. I change that.

I think I added --ignore-branch because I developed it all on a feature branch.

dduvall updated this revision to Diff 2367.Nov 29 2017, 12:33 AM

Use --new-version instead of -N

dduvall updated this revision to Diff 2368.Nov 29 2017, 12:34 AM
dduvall edited the summary of this revision. (Show Details)

Remove superfluous comma in commit msg. :)

thcipriani accepted this revision.Nov 29 2017, 12:40 AM
thcipriani added inline comments.
debian/Makefile
26

fair enough

49

I think I added --ignore-branch because I developed it all on a feature branch.

That makes sense :)

dduvall updated this revision to Diff 2369.Nov 29 2017, 12:40 AM

Exclude debian/* files from git clean within container, allowing for tweaks and testing of control files without having to commit them

dduvall added inline comments.Nov 29 2017, 12:41 AM
debian/Makefile
27

I was able to exclude the debian directory \o/

dduvall marked 2 inline comments as done.Nov 29 2017, 12:42 AM
This revision was automatically updated to reflect the committed changes.