~racb/git-ubuntu:importer-service-db

Last commit made on 2018-11-01
Get this branch:
git clone -b importer-service-db 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:
importer-service-db
Repository:
lp:~racb/git-ubuntu

Recent commits

d672edb... by Robie Basak

Mark "running" imports as errored on restart

01f4ae8... by Robie Basak

Add --only-request-new-imports-once option

d17507e... by Robie Basak

Drop --dry-run function

As discussed in the MP, this doesn't really make sense any more.

30ac86f... by Robie Basak

Store pending package import status

Decouple the determination of packages that need importing from the
actual importing of them by relaying this information via persistent
state.

This shouldn't result in any functional changes.

This will later allow us to put the two things into separate processes,
so that a problem with one part need not affect the other. Further in
the future we will also be able to arrange separate worker processes for
individual import runs using this structure.

602546a... by Robie Basak

Move timestamp storage to sqlite3 database

Switch to using a database to store persistent information, since we
will soon persist more data than just the current last-seen timestamp
information.

This should not change any existing behaviour except to persist the data
in a database called db instead of a text file called
import-source-packages-log.

There is no consideration for migration of existing persisted data. The
existing git ubuntu importer service operator (me) will have to handle
this by hand.

The replacement implementation is in gitubuntu/importer_service.py so
that it can be tested using the existing framework. In time, I expect to
move more implementation detail into gitubuntu/, leaving bin/ containing
the argparse stubs only.

436f789... by Robie Basak

Use persistent state directory

Move the directory in which we keep persistent state into the one
specified by --data-directory, defaulting to /var/local/git-ubuntu.

This directory must exist.

This moves the previously used directory /tmp into somewhere that can
be expected to persist. This impacts git-ubuntu importer operators,
since they now need to make sure that a persistent area is ready before
use.

This applies to the importer service only. Users of the "git-ubuntu" CLI
tool, as opposed to the operators of the importer, are not affected.

14caab8... by Robie Basak

Pin keyring version to work around regression

63f0b90... by Robie Basak

Use the keyring package from git-ubuntu only

launchpadlib pulls in its own keyring package which is fine for the
build but has had some issues with the version of keyrings.alt we use.
Instead, use git-ubuntu's keyring package only in the final snap. This
avoids a conflict when we pin git-ubuntu's keyring package version due
to upstream regressions in the interaction between keyring and
keyrings.alt.

Basic keyring functionality is already smoke tested in
gitubuntu/source_information_test.py::test_keyring_backend_found

d810605... by Robie Basak

Merge remote-tracking branch 'smoser/cleanup/build-cleanups-redux' into HEAD

https://code.launchpad.net/~smoser/usd-importer/+git/usd-importer/+merge/355804

4993db2... by Robie Basak

Add nsd to whitelist