"git ubuntu build-source" does not run debian/clean
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
git-ubuntu |
Fix Released
|
High
|
Nish Aravamudan |
Bug Description
"usd build-source" uses -nc. Colin Watson helpfully pointed out that on occasion packages may use the "clean" debian/rules target to do things like generating debian/control from a control.in, as the least-worst place to put such a thing.
This also means that -d is "wrong" because the clean target is entitled to expect all build dependencies to be installed.
A way of solving this might be to do all build tasks inside sbuild or lxd or similar (or both). I favour lxd because of it's automatic dtrt image management.
Importance: High because I think correctness is important here. I don't want to have to give new contributors excuses about how our tooling is fundamentally broken and needs a workaround because they hit an edge case.
Related branches
- Server Team CI bot: Approve (continuous-integration)
- Andreas Hasenack: Pending requested
- Robie Basak: Pending requested
-
Diff: 278 lines (+99/-62)2 files modifiedgitubuntu/build.py (+69/-36)
gitubuntu/buildsource.py (+30/-26)
- Server Team CI bot: Approve (continuous-integration)
- Nish Aravamudan: Approve
- Andreas Hasenack: Approve
-
Diff: 861 lines (+558/-54)4 files modifiedbin/snap/snap-git-ubuntu (+1/-0)
gitubuntu/build.py (+476/-44)
gitubuntu/buildsource.py (+68/-10)
gitubuntu/source_information.py (+13/-0)
- Server Team CI bot: Approve (continuous-integration)
- Andreas Hasenack: Pending requested
- Robie Basak: Pending requested
-
Diff: 252 lines (+77/-62)2 files modifiedgitubuntu/build.py (+71/-38)
gitubuntu/buildsource.py (+6/-24)
summary: |
- "usd build-source" does not run debian/clean + "git ubuntu build-source" does not run debian/clean |
Changed in usd-importer: | |
milestone: | none → 1.0 |
status: | New → Triaged |
Changed in usd-importer: | |
status: | Triaged → In Progress |
assignee: | nobody → Nish Aravamudan (nacc) |
Changed in usd-importer: | |
status: | In Progress → Fix Released |
This becomes more important in Artful, where we have these stray .buildinfo files and don't use -nc.
- dpkg now produces .buildinfo files by default for all uploads,
including source builds. This should, again, be mostly a no-op
for you, but there is one gotcha, which is that multiple '-nc'
runs of dpkg-buildpackage -S will produce a debian/files in
your source that shouldn't be there. We've been discussing how
to eradicate that upstream, but if you care deeply about cruft,
watch out for that.