LocalSetup

Revision 2 as of 2015-11-17 07:19:22

Clear message

This page describes how to set up proposed-migration on a clean system.

Installability checks and autopkgtests

In the simplest case you just want to reproduce the "first stage" of britney2-ubuntu, which checks that -proposed packages were built on all expected architectures, are installable by themselves, issue autopkgtests, collect their test results, and produce a production-like excuses.html and excuses.yaml.

  • Check out the code:
    bzr branch lp:~ubuntu-release/britney/britney2-ubuntu
    cd britney2-ubuntu
    wget http://people.canonical.com/~pitti/scripts/britney-indexes

    The britney-indexes script downloads the source and binary package indexes to data/<series> and data/<series>-proposed.

  • The default ./britney.conf contains the production values for the architecture list, autopkgtest AMQP server (but without the actual password) and swift. For a purely local run you need to install the rabbitmq-server package, either locally or into a container, and adjust ADT_AMQP accordingly; use amqp://localhost or amqp://10.0.3.XXX respectively (this will use the default guest user of RabbitMQ).

  • If care about inspecting the issued autopkgtest requests in the AMQP queues, you need to declare them for a particular Ubuntu series:
    sudo apt-get install -y amqp-tools
    for arch in i386 amd64 armhf ppc64el; do amqp-declare-queue -u amqp://<server IP> -d -q debci-xenial-$arch; done
    You can skip this step, then the test requests will simply go into the void. You can
  • Download archive indexes for the desired Ubuntu series:
    ./britney-indexes xenial
  • Run britney for the same series:
    ./britney.py -c britney.conf --series=xenial -v

    You will then have the excuses.* and some other files in output/xenial/.

  • The list of issued test requests can be found in data/xenial-proposed/autopkgtest/pending.txt. If you declared AMQP queues above, you can also read/flush them, e. g.

    while amqp-get -u amqp://<server IPP> -q debci-xenial-armhf; do echo; done

Full Ubuntu production setup

The full Ubuntu production setup is done by britney1-ubuntu. This creates the archive index lists, per-series configuration files, calls the first and second stages of britney2-ubuntu, and issues the actual copying of packages from -proposed to -release. It assumes having a local mirror and a helper script promote-to-release which does the actual copying.

TODO: Fully document and/or provide charm for this.