Page MenuHomePhabricator

Initial Debian packaging
ClosedPublic

Authored by dduvall on Nov 13 2015, 12:46 AM.

Details

Maniphest Tasks
Restricted Task
T118015: Debian Packaging for scap
Reviewers
Joe
faidon
bd808
fgiunchedi
Group Reviewers
Release-Engineering-Team
Commits
rMSCA73154370d176: Initial Debian packaging
Patch without arc
git checkout -b D46 && curl -L https://phabricator.wikimedia.org/D46?download=true | git apply
Summary

Initialized debian files using stdeb, with some cleanup according to
https://wikitech.wikimedia.org/wiki/Git-buildpackage

Test Plan

Create a tag named upstream/3.0 and build package with git-buildpackage --git-ignore-branch --git-export-dir=/tmp/build/scap -us -uc

Diff Detail

Repository
rMSCA Scap
Lint
Automatic diff as part of commit; lint not applicable.
Unit
Automatic diff as part of commit; unit tests not applicable.

Event Timeline

dduvall updated this revision to Diff 145.Nov 13 2015, 12:46 AM
dduvall retitled this revision from to Initial Debian packaging.
dduvall updated this object.
dduvall edited the test plan for this revision. (Show Details)
dduvall added a reviewer: bd808.
Restricted Application added a reviewer: Release-Engineering-Team. · View Herald TranscriptNov 13 2015, 12:46 AM

I'm sure I screwed something up here.

debian/control
13

I based these dependency versions off what's available in Precise, assuming we'd need to backport it.

dduvall edited the test plan for this revision. (Show Details)Nov 13 2015, 12:50 AM
dduvall edited edge metadata.
dduvall added a reviewer: faidon.
dduvall updated this revision to Diff 152.Nov 13 2015, 6:26 PM

Rebased

demon added a subscriber: demon.Nov 13 2015, 8:15 PM

Should be rebased since D45: Include a setup.py to help with packaging landed, don't need the setup.(py|cfg) change here anymore.

mmodell added a task: Restricted Task.Nov 13 2015, 10:27 PM
revi added a subscriber: revi.Nov 15 2015, 1:55 PM
revi added inline comments.
debian/control
14

For consistency I assume it should be changed to wikimedia or change the other one? (See another inline)

setup.py
16 ↗(On Diff #152)

For consistency it should be changed to mediawiki or change the other one? (See inline comment above)

dduvall updated this revision to Diff 162.Nov 16 2015, 4:48 PM

Trying to rebase this correctly :/

fgiunchedi edited edge metadata.Nov 17 2015, 10:29 AM

LGTM overall, will need to try to build it too

debian/compat
2

I think you can go for 9 here (latest debhelper)

debian/control
6

ditto debhelper >= 9

14

are the specific versions hard requirements? IOW we're using specific features, if not I'd just omit it from packages that don't need it

builds fine locally, lintian warnings below. debian/copyright one we should fix, ditto for description and standards-version, all fairly easy

Now running lintian...
W: scap source: changelog-should-mention-nmu
W: scap source: source-nmu-has-incorrect-version-number 3.0-1
W: scap source: no-debian-copyright
W: scap source: ancient-standards-version 3.9.3 (current is 3.9.6)
W: python-scap: new-package-should-close-itp-bug
E: python-scap: no-copyright-file
E: python-scap: extended-description-is-empty
W: python-scap: binary-without-manpage usr/bin/compile-wikiversions
W: python-scap: binary-without-manpage usr/bin/deploy
W: python-scap: binary-without-manpage usr/bin/deploy-local
W: python-scap: binary-without-manpage usr/bin/deploy-log
W: python-scap: binary-without-manpage usr/bin/hhvm-graceful-all
W: python-scap: binary-without-manpage usr/bin/mw-update-l10n
W: python-scap: binary-without-manpage usr/bin/mwversionsinuse
W: python-scap: binary-without-manpage usr/bin/scap
W: python-scap: binary-without-manpage usr/bin/scap-hhvm-restart
W: python-scap: binary-without-manpage usr/bin/scap-purge-l10n-cache
W: python-scap: binary-without-manpage usr/bin/scap-rebuild-cdbs
W: python-scap: binary-without-manpage usr/bin/sync-common
W: python-scap: binary-without-manpage usr/bin/sync-dir
W: python-scap: binary-without-manpage usr/bin/sync-docroot
W: python-scap: binary-without-manpage usr/bin/sync-file
W: python-scap: binary-without-manpage usr/bin/sync-master
W: python-scap: binary-without-manpage usr/bin/sync-wikiversions
Finished running lintian.
debian/changelog
6

Maintainer field in debian/control doesn't have "Team" so it should be consistent here

debian/control
9

just "scap" I think would be easier to find/remember as a binary package

demon added a comment.Nov 17 2015, 6:04 PM

Create a tag named upstream/3.0

I guess we need to pick an official tag point if we're going to declare 3.0 and push said tag :)

dduvall updated this revision to Diff 165.Nov 19 2015, 2:03 AM
dduvall marked an inline comment as done.
dduvall edited edge metadata.

Addressed all comments by @fgiunchedi and additionally added a patch to set a more suitable bin_dir config default for the packaged version.

dduvall marked 5 inline comments as done.Nov 19 2015, 2:09 AM
In D46#1277, @demon wrote:

Create a tag named upstream/3.0

I guess we need to pick an official tag point if we're going to declare 3.0 and push said tag :)

Indeed! Maybe we should pick a point after the scap3 docs are "finished" (i.e. drafted).

I tested the deb build, installed it, and ran deploy and deploy-log from their new homes in /usr/bin. It all went well.

dduvall added inline comments.Nov 19 2015, 2:12 AM
debian/control
20

Damn it feels good to be a gansta. Go team!

dduvall updated this revision to Diff 166.Nov 19 2015, 2:14 AM

Fixed typo

fgiunchedi accepted this revision.Nov 19 2015, 9:34 AM
fgiunchedi edited edge metadata.

LGTM, good job @dduvall !

This revision is now accepted and ready to land.Nov 19 2015, 9:34 AM
This revision was automatically updated to reflect the committed changes.