submit: Allow reviewer to be specified via a .gitconfig setting
Look in the .gitconfig for a parameter named
`gitubuntu.submit.defaultReviewer` and use that rather than
ubuntu-sponsors if no --reviewer option is used. In general, some
Canonical distro teams do MP reviews internally, so this allows these
packagers to set their team as the default reviewer without needing
to specify --reviewer every time. For example:
Note that this can also be specified on a per-repository basis via
.git/config, so if a packager works on packages maintained by a variety
of teams they can set the default reviewer differently for different
packages.
Multiple reviewers can be specified as comma-delimited values, so for
example, one could add to a package repository's .git/config:
In this case, the MP will be filed with all three teams as potential
reviewers.
Also, this branch refactors the software's default reviewer to the
DEFAULT_MP_REVIEWER global constant, and uses it if there isn't a
setting in the ~/.gitconfig or repo .git/config.
Of course, use of --reviewer bypasses all of the above and allows
discrete control of what team(s) and user(s) to set as the requested MP
reviewers on initial MP submission. And one can also add further
reviewers from the Launchpad web page for the merge proposal.
Robie is leaving Canonical, so as part of the handover, switch the "ping
Robie" to something more generic. Andreas will monitor git-ubuntu-help
for now.
I keep bumping into issues with the user's bash configuration colliding
with the classic snap, due to configuration which depends on things not
present within the snap environment.
It's easier to use dash instead, so switch everything that doesn't
specifically need bash to use /usr/bin/sh as supplied by the dash
package, and stage that package to make it available within the snap.
The one thing that actually needs bash is the self-test. Here, use
`--noprofile --norc` and `unset command_not_found_handle` to detach
ourselves as much as possible from the user's bash configuration.
Since override-prime doesn't work with enable-patchelf[1], fall back to
override-stage instead. This works just as well for what we need, except
that it's one step further away when developing and debugging the snap.
This means that the awk symlink is best created in a separate part, so
that we can prime the symlink without messing with the prime file list
generated by stage-packages.
The pip check was useful, but is broken on Noble due to LP: #2084358, so
make it informative only and not fail the entire self-test due to this
failure.