~nacc/usd-importer:lp1698402

Last commit made on 2017-07-20
Get this branch:
git clone -b lp1698402 https://git.launchpad.net/~nacc/usd-importer
Only Nish Aravamudan can upload to this branch. If you are Nish Aravamudan please log in for upload directions.

Branch merges

Branch information

Name:
lp1698402
Repository:
lp:~nacc/usd-importer

Recent commits

90a5c3d... by Nish Aravamudan on 2017-07-09

git ubuntu build: determine algorithmically what pristine-tar distribution to expect

Verify the one to use is from the same distribution. The algorith,
provided by Robie Basak, is:

1) Set "expected_distro" based on a command line override, or if not
provided, look up the target from the changelog against distro-info. If
not overriden and distro-info provides no match, explain and fail.

2) Check that only the orig tarball from expected_distro is available
(and not the other). If so, go ahead with that one, and we're done.

3) If both are available, warn that the other wasn't used, use the
expected_distro one, and we're done.

4) If only one is available but not expected_distro, explain and fail.

5) Final obvious case: if none are available, explain and fail.

d8a0cdf... by Nish Aravamudan on 2017-07-09

gitubuntu/git_repository: add helper function to search Launchpad for a specific version

5fcab40... by Nish Aravamudan on 2017-07-19

git ubuntu build: add pristine-tar support

Since the importer is now importing the orig tarballs, we can avoid some
network traffic/latency by generating the identical orig tarballs, if
possible.

However, as is currently being documented in LP #1702181, there can be
cases where the pristine-tar imports are not working. So we provide a
flag to bypass their use in those cases.

LP: #1698402

91e4f30... by Nish Aravamudan on 2017-07-19

git ubuntu import: update pristine-tar imports to use common code

1) Modify orig_imported() to take a set of paths to tarballs and a
distribution name. It will see if the given tarballs have been imported
identically to the current repository for the given distribution.

2) Use the gitubuntu/dsc.py accessors for the orig tarball and component
tarballs.

a87d896... by Nish Aravamudan on 2017-07-19

gitubuntu/git_repository: abstract pristine-tar manipulation

We expose three new APIs:

1) pristine_tar_branches - a context manager that manipulates the
per-distro pristine-tar branches

2) pristine_tar_list - returns a list of imported tarballs for a given
distro

3) pristine_tar_extract - obtains the pristine-tar tarball corresponding
to a given srcpkg and version (the srcpkg is necessary as it is in the
tarball name) in a distro

c5a3f24... by Nish Aravamudan on 2017-06-30

git ubuntu import: refactor code to pass spi to import_orig

c18969e... by Nish Aravamudan on 2017-06-28

git ubuntu import: rename GitUbuntuImport*Exception -> GitUbuntuImport*Error

0460796... by Nish Aravamudan on 2017-06-28

gitubuntu/git_repository: do not attempt to extract from environment_spi if None

We are going to use this in the importer pristine-tar logic and there is no
standard authorship information to use in that case. Calling into the helper
function leads to exceptions, as a result, so just avoid it.

7236194... by Nish Aravamudan on 2017-06-28

gitubuntu/dsc: standardize component tarball path extraction in common class

2d04e11... by Nish Aravamudan on 2017-06-28

gitubuntu/dsc: standardize orig tarball path in common class