system-config/doc/source/ppa.rst
Ian Wienand 667e0dffa0 Add some pointers on the OpenDev PPA
The OpenStack/OpenDev PPA repositories are currently undocumented.
Add some information on where to find things.

Change-Id: Iea03c5d558b3dd6af9f7c860dfcc75a71dc59d9f
2019-07-22 10:58:54 +10:00

73 lines
2.4 KiB
ReStructuredText

:title: OpenDev PPA
.. _opendev_ppa:
OpenDev PPA details
###################
There are various utilities where the OpenDev infrastructure requires
tools or utilities with updates, bug fixes or are otherwise not
packaged by upstream.
Since our standard server environment is Ubuntu, we utilise shared
`PPA <https://launchpad.net/ubuntu/+ppas>`__ repositories to build and
provide these updated packages.
It is generally our intention to work with upstream to make all
relevant changes in a generic fashion. Unfortunately the reality of
also running production systems sometimes interferes with this goal!
Any packages coming from the OpenDev PPA are therefore rather ad-hoc,
and depend on circumstances resulting in needing a new package. Some
will incorporate a patch or bug fix, others may back port new versions
of software, it may be software that is not available in the upstream
distribution for various reasons.
Generally any specifics relating to the packages in the various PPA's
under the OpenStack CI Core team's purview will be documented in the
playbooks, roles or scripts that are using the PPA.
At a Glance
===========
:Hosts:
* Various
:Ansible:
* Various
:Projects:
* https://launchpad.net/~openstack-ci-core
Permissions
===========
To have permissions to create a new PPA in the ``openstack-ci-core``
team, or work existing PPA's you need to be added as a member. Any
current member of the team, or the parent `OpenStack Administrators
<https://launchpad.net/~openstack-admins>`__ group can add a person to
the PPA.
This can be arranged via discussion in #openstack-infra, on the infra
mailing list or perhaps via a topic discussion in the weekly meeting.
Uploading
=========
Debian packaging can get quite complex, and you will need an
understanding of how to create ``.deb`` packages, sign them and use
tools to upload into the PPA. There are many various guides
* http://shallowsky.com/blog/programming/packaging-launchpad-ppas.html
* https://askubuntu.com/questions/71510/how-do-i-create-a-ppa/493577#493577
* https://wiki.debian.org/HowToPackageForDebian
Note you will have to have your GPG key in your launchpad profile, and
upload the source packages signed with that key for them to be
accepted and built.
Usage
=====
Generally the PPA will be used in Ansible roles via the inbuilt
``apt_repository`` task. Once the PPA is added standard install
mechanisms are used for the package install.