~racb/git-ubuntu:test-force-push-reject

Last commit made on 2023-07-03
Get this branch:
git clone -b test-force-push-reject https://git.launchpad.net/~racb/git-ubuntu
Only Robie Basak can upload to this branch. If you are Robie Basak please log in for upload directions.

Branch merges

Branch information

Name:
test-force-push-reject
Repository:
lp:~racb/git-ubuntu

Recent commits

a384e90... by Robie Basak

Rewrite prepare-upload to fetch before push

This is a major refactoring/rewrite of the prepare-upload code. So much
changed that it didn't seem worth breaking it down. It's probably easier
to review afresh.

Functionally, what has changed is that we now fetch from the remote
using its default configured refspecs first, assuming that this will
update the remote tracking branch following normal conventions. Then we
can determine if the remote branch already contains our rich history or
not. We then only push if it does not.

In the code, this involved considerable refactoring. There is now a
Parameters namedtuple that carries the various facts around, and the
determination of these facts are moved into a classmethod constructor
method within that class. Various common steps betweent the "args" and
"mangle" operations are broken out.

Tests are updated and added accordingly.

LP: #1999177

fe21a9f... by Robie Basak

snap.sh: run snapcraft with sudo

A regression in snapcraft causes it to start failing with:

    Sorry, an error occurred in Snapcraft:
    [Errno 13] Permission denied: '/etc/apt/keyrings'

We run snapcraft with --destructive-mode. Presumably it used to use
sudo.

A workaround is to just run the whole thing with sudo ourselves.

See also my upstream report:
https://github.com/snapcore/snapcraft/issues/4225

1209559... by Robie Basak

snap.sh: do not generate gpg subkeys

snapcraft regressed in that it now rejects apt signing keys that have
subkeys. This is reported upstream, but the easiest thing to do for now
is work around by not generating them. This diverges from gpg's default,
but subkeys are not needed for apt signing keys anyway.

See my upstream reports:

https://github.com/snapcore/snapcraft/issues/4224
https://github.com/canonical/craft-archives/issues/83

8f0d8e5... by Steve Langasek

Initial support for 'gu-build' wrapper that wraps dpkg-buildpackage

This should eventually become a git-ubuntu subcommand once namespace is agreed

fd5eb67... by Steve Langasek

make the gu-build exit code match that of dpkg-buildpackage

d9c71e9... by Steve Langasek

drop stray unused variable left over from development

a4debcd... by Steve Langasek

Use the dowload cache for tarballs

Passing an empty cache dir to the launchpad download method pollutes the
working directory, causing the subsequent dpkg-buildpackage to fail.
Sidestep this bug and just use the tested code path instead.

d3dd3a3... by Robie Basak

doc: add keyring

c5d9196... by Robie Basak

doc: howtos on individual pages

5d891a9... by Steve Langasek

mk-build-deps doesn't like version 0

[rbasak] This seems like a bug in mk-build-deps. Filed
https://bugs.debian.org/1037016, but committing this as a workaround.