Diff for "LaunchpadPpa"

Not logged in - Log In / Register

Differences between revisions 67 and 69 (spanning 2 versions)
Revision 67 as of 2016-11-14 04:50:03
Size: 4730
Editor: wgrant
Comment: Drop horrifyingly obsolete section on obsolete things.
Revision 69 as of 2016-11-14 05:47:07
Size: 5880
Editor: wgrant
Comment: update series policy to be vaguely more representative of reality.
Deletions are marked like this. Additions are marked like this.
Line 7: Line 7:
= Packages, All distroseries = = Launchpad-specific packages =
Line 39: Line 39:
 1. '''After it has built, go to the PPA's [[https://launchpad.net/~launchpad/+archive/ppa/+copy-packages|+copy-packages page]]. Copy the package to all the other distroseries that the trunk branch is currently serving. Use the ''copy existing binaries'' option when copying.'''
Line 41: Line 40:
After you've done this, you may need to update [[EC2Test/Image]]
Line 43: Line 41:
== pocket-lint == == launchpad-buildd ==
Line 45: Line 43:
pocket-lint is in the Ubuntu primary archive for natty, so it is only required in the PPA for lucid. This is from https://launchpad.net/launchpad-buildd.

python-lpbuildd is used by the test suite, so is part of launchpad-developer-dependencies. launchpad-buildd itself runs an actual buildd and is only needed on slaves.

[[https://code.launchpad.net/~launchpad/+recipe/launchpad-buildd-daily|The package is built daily or on request by a recipe]]


== html5-browser ==

??


== lpsetup ==

?? (probably only used by parallel buildbot slaves, which are probably using the puppet fork anyway)


== mmm-archive-manager ==

??


= Backported or patched Ubuntu packages =

== pocket-lint (precise) ==

pocket-lint is in the Ubuntu primary archive, but the PPA upgrades precise's 0.5.30 to 0.5.31.
Line 51: Line 75:
== python-lpbuildd and launchpad-buildd == == postgresql-9.3, postgresql-common, postgresql-debversion, slony1-2 (precise) ==
Line 53: Line 77:
These are also from https://launchpad.net/launchpad-buildd and they actually run a buildd. Straight backports of PostgreSQL 9.3 and paraphernalia from trusty to precise, since LP no longer runs on PostgreSQL 9.1.
Line 55: Line 79:
The Python modules are needed to run Launchpad integration tests and are part of launchpad-developer-dependencies.
The actual launchpad-buildd package is only needed to run the slaves.
Line 58: Line 80:
[[https://code.launchpad.net/~launchpad/+recipe/launchpad-buildd-daily|They are built daily or on request by a recipe]] == pgbouncer (precise, trusty) ==

Trusty's pgbouncer with wgrant's ENABLE/DISABLE patch as required by full-update.py, and additionally backported to precise. For the benefit of launchpad-dependencies, the patched package additionally Provides pgbouncer-with-disconnect.

The ENABLE/DISABLE patch is included upstream in pgbouncer 1.6, so xenial's primary archive version is fine.


== libsodium (precise, trusty) ==

Straight backports of wily's libsodium, for pymacaroons.


== cgit, libgit2, python-pygit2, git (trusty) ==

Backported dependencies of turnip (for git.launchpad.net), not LP itself.

libgit2 and python-pygit2 sometimes have minor backports from master.


== git (precise) ==

Cherrypicks of remote symbolic ref features for the LP git codeimport workers.


== convoy ==

??


== debian-archive-keyring (precise) ==

Straight backport for new Debian archive keys for gina's mirror.


== debmirror (precise) ==

Straight backport to allow us to mirror [[Debian's newly SHA256-only archive|https://lists.debian.org/debian-devel-announce/2016/03/msg00006.html]] for gina.


== apt, python-apt (precise, trusty) ==

Trusty's apt with apt-ftparchive source package caching backported, and additionally backported to precise.

python-apt is additionally backported to precise (with Python 3 support dropped and some test fixes) to cope with the new libapt-pkg.


== python-debian (precise, trusty) ==

?? (backports from wily, but why?)


== git-build-recipe ==

[[https://code.launchpad.net/~launchpad/+recipe/git-build-recipe-daily|Daily builds of lp:git-build-recipe]] for buildds.


== sbuild ==

??
Line 61: Line 142:
At any given time, we will be supporting multiple Ubuntu series in the PPA:
 * The current development series - to permit Ubuntu developers on the bleeding edge to develop Launchpad (currently: oneiric).
  * Use pragmatism in deciding when to start supporting a new development series - almost certainly not until alpha 1, at least.
 * The current release - most developers run it (currently: natty).
 * The current LTS - the datacentre either runs it, or is going to be running it shortly (currently: lucid).
 * The next older LTS, if it's still in use on production datacentre machines (currently: none).
 * As many other older releases as it is reasonably practicable to do so, to accommodate developers on older releases (currently: maverick),

== Stable ==
 * precise (current production LTS)
 * trusty (next production LTS)


== In progress ==
 * xenial (next, next production LTS?)
 * yakkety (current development series)

This page is documentation for uploaders to the Launchpad PPA.

The Launchpad PPA (https://launchpad.net/~launchpad/+archive/ppa) contains dependencies for running Launchpad.

Launchpad-specific packages

bzr-lpreview-body

This package contains the lpreview_body plugin for Bazaar. The packaging can be found in lp:~launchpad/lpreview-body/packaging.

bzr-pqm

bzr-pqm contains various plugins like lp-land. It needs to be maintained for all distroseries that we support development on.

This package is maintained through a recipe. See: https://code.launchpad.net/~launchpad-committers/+recipe/bzr-pqm-launchpad-ppa

geoip-data-city-lite

This package is a single data file, which upstream publishes updates to monthly. Why haven't we updated it since 2008?

  • Because we are using it only for tests and updating too frequently may actually break some tests (we've seen it happen). It's no big deal if developers don't get the fully up-to-date geoIP DB. Production uses the proprietary geoIP DB instead. — Danilo (2010-01-21)

launchpad-dependencies

The launchpad-dependencies source is managed in Bazaar branches at https://code.launchpad.net/meta-lp-deps.

Policy/procedure for updates:

  1. You will need bzr-builddeb and debhelper packages installed.
  2. Edit debian/control to add or change the dependencies.
  3. Set the DEBEMAIL and DEBFULLNAME environment variables. Your name and email address must match an identity in your GPG key exactly. You may want to put this in your shell rc file so you don't have to set it manually every time.
  4. Run 'debchange -i' in the root to increment the version number and add a changelog entry in the correct format. Remember that launchpad-dependencies should not have an ubuntu1 suffix on its version number, so if debchange -i adds that for you, take it out again and increment the unsuffixed version number instead.
  5. debcommit or bzr commit
  6. Exercise personal judgment on whether your change merits a merge proposal, or is sufficiently trivial to just be committed directly.
  7. If preparing a merge proposal, please ensure your branch for review contains a complete debian/changelog entry ready for release.
  8. Go to the trunk (or older distro) branch and merge / commit or pull changes ready to build.
  9. Test-build your package:

    bzr builddeb
  10. Since the package has a Launchpad build recipe, you only need to push the branch to Launchpad:

    bzr push lp:meta-lp-deps

launchpad-buildd

This is from https://launchpad.net/launchpad-buildd.

python-lpbuildd is used by the test suite, so is part of launchpad-developer-dependencies. launchpad-buildd itself runs an actual buildd and is only needed on slaves.

The package is built daily or on request by a recipe

html5-browser

??

lpsetup

?? (probably only used by parallel buildbot slaves, which are probably using the puppet fork anyway)

mmm-archive-manager

??

Backported or patched Ubuntu packages

pocket-lint (precise)

pocket-lint is in the Ubuntu primary archive, but the PPA upgrades precise's 0.5.30 to 0.5.31.

You can build trunk on demand using a recipe https://code.launchpad.net/~sinzui/+recipe/pocket-lint-daily

postgresql-9.3, postgresql-common, postgresql-debversion, slony1-2 (precise)

Straight backports of PostgreSQL 9.3 and paraphernalia from trusty to precise, since LP no longer runs on PostgreSQL 9.1.

pgbouncer (precise, trusty)

Trusty's pgbouncer with wgrant's ENABLE/DISABLE patch as required by full-update.py, and additionally backported to precise. For the benefit of launchpad-dependencies, the patched package additionally Provides pgbouncer-with-disconnect.

The ENABLE/DISABLE patch is included upstream in pgbouncer 1.6, so xenial's primary archive version is fine.

libsodium (precise, trusty)

Straight backports of wily's libsodium, for pymacaroons.

cgit, libgit2, python-pygit2, git (trusty)

Backported dependencies of turnip (for git.launchpad.net), not LP itself.

libgit2 and python-pygit2 sometimes have minor backports from master.

git (precise)

Cherrypicks of remote symbolic ref features for the LP git codeimport workers.

convoy

??

debian-archive-keyring (precise)

Straight backport for new Debian archive keys for gina's mirror.

debmirror (precise)

Straight backport to allow us to mirror https://lists.debian.org/debian-devel-announce/2016/03/msg00006.html for gina.

apt, python-apt (precise, trusty)

Trusty's apt with apt-ftparchive source package caching backported, and additionally backported to precise.

python-apt is additionally backported to precise (with Python 3 support dropped and some test fixes) to cope with the new libapt-pkg.

python-debian (precise, trusty)

?? (backports from wily, but why?)

git-build-recipe

Daily builds of lp:git-build-recipe for buildds.

sbuild

??

Distro series support

Stable

  • precise (current production LTS)
  • trusty (next production LTS)

In progress

  • xenial (next, next production LTS?)
  • yakkety (current development series)

When the supported series change, remember to also update Getting and Running.

LaunchpadPpa (last edited 2021-08-24 10:48:34 by cjwatson)