~cjwatson/lp-archive:lpcraft

Last commit made on 2023-01-25
Get this branch:
git clone -b lpcraft https://git.launchpad.net/~cjwatson/lp-archive
Only Colin Watson can upload to this branch. If you are Colin Watson please log in for upload directions.

Branch merges

Branch information

Name:
lpcraft
Repository:
lp:~cjwatson/lp-archive

Recent commits

0c11671... by Colin Watson

Add .launchpad.yaml

Failed
[FAILED] test:0 (build)
11 of 1 result
cd4e74f... by Colin Watson

Accept SERVICE_CONFIG environment variable

This is used in some of our other services, and is easier to handle in
deployments than just reading `config.toml` from the current directory.

591d552... by Colin Watson

Require pylibmc

Needed so that `Flask-Caching` can talk to `memcached`.

4692582... by Colin Watson

Add talisker support

This is a more capable WSGI server than the Flask development server
(mainly via Gunicorn, but also with some of its own extensions), and
it's what we use in most of our other services. The Flask development
server warns on startup that it shouldn't be used in production.

559bc8c... by Colin Watson

Split primary and PPA snapshots into separate virtual hosts

This is controlled by the `LAYOUTS` array of tables in `config.toml`
(capitalized due to Flask's requirements), which might look something
like this:

    [[LAYOUTS]]
    host = "snapshot.ubuntu.test"
    purpose = "primary"

    [[LAYOUTS]]
    host = "snapshot.ppa.test"
    purpose = "ppa"

This lets us deploy something that looks a little more like the current
layout for our archive servers.

e0fc988... by Colin Watson

Cache positive authorization responses

The common case resulting from apt operations will be lots of requests
for the same archive with the same authentication parameters in
relatively quick succession, so it makes sense to cache positive
authorization responses for a short while to reduce database load.

e586b91... by Colin Watson

Add archive endpoints

If configured with a suitable Launchpad XML-RPC endpoint, this can serve
apt archives based on publishing records and the librarian without
needing access to the published archive on a local file system.

60827b9... by Colin Watson

Add basepython to coverage environment

e94df33... by Colin Watson

Add project skeleton

59dbb4d... by Colin Watson

Initial commit