Jump to: navigation, search

Difference between revisions of "Packaging/Ubuntu"

(Added instructions for generating the packages.)
 
(26 intermediate revisions by 11 users not shown)
Line 1: Line 1:
__NOTOC__
 
Ubuntu is the reference platform for [[OpenStack]]. We follow the Ubuntu release cycle very closely, and do most of our QA on Ubuntu.
 
  
If you want to run [[OpenStack]] on Ubuntu, there are a few options, depending on
+
= Ubuntu packaging =
your stability requirements and which version of Ubuntu you're running.
 
  
{| border="1" cellpadding="2" cellspacing="0"
+
OpenStack packages for Ubuntu are published in Ubuntu ''main'' repository and maintained by Ubuntu core developers.
Ubuntu version   
 
|  Only what is in Ubuntu  
 
|  Only stable releases           
 
|-
 
|  10.04 LTS (Lucid)
 
|          N/A         
 
|  [[#Release_PPA|Release PPA]]   
 
|-
 
|  10.10 (Maverick) 
 
|    Pre-Austin snapshot 
 
|  [[#Release_PPA|Release PPA]]   
 
|-
 
|  11.04 (Natty)   
 
|  Frequent snapshots.<<BR>>Cactus expected in final release 
 
|  [[#Release_PPA|Release PPA]]
 
|}
 
  
= Trunk PPA =
+
See [http://www.ubuntu.com/download/cloud/install-ubuntu-cloud Installing Ubuntu Cloud] for official Ubuntu documentation on how to install OpenStack from packages.
  
A PPA<<[[FootNote]](Personal Package Archive: an extra apt repository you can add to your sources.list to get access to software not in Ubuntu.)>> where we will upload a new version for every single commit on trunk.
+
== Cloud Archive ==
  
Information and instructions for use can be found on [https://launchpad.net/~nova-core/+archive/trunk Launchpad] for Nova, and similarly for [https://launchpad.net/~swift-core/+archive/trunk Swift] and [https://launchpad.net/~glance-core/+archive/trunk Glance].
+
Canonical’s Ubuntu Cloud archive allows users the ability to install newer releases of [[OpenStack]] on Ubuntu Server 12.04 LTS (and the dependencies) as they become available up through the next Ubuntu LTS release (presumably 14.04).  
  
The packages are built by grabbing the latest tarball from http://nova.openstack.org/tarballs/ and adding [https://code.launchpad.net/~openstack-ubuntu-packagers/ubuntu/natty/nova/ubuntu lp:~openstack-ubuntu-packagers/ubuntu/natty/nova/ubuntu] on top of it, and adding a changelog entry.
+
See https://wiki.ubuntu.com/ServerTeam/CloudArchive for more details.
  
= Release PPA =
+
Report any bugs that you find in packages from the Cloud Archive to https://bugs.launchpad.net/cloud-archive/+filebug
  
Information and instructions for use can be found on [https://launchpad.net/~nova-core/+archive/release Launchpad] for Nova, and similarly for [https://launchpad.net/~swift-core/+archive/release Swift] and [https://launchpad.net/~glance-core/+archive/release Glance]..
+
In terms of communication around the Cloud Archive, general announcements about milestone and release availability will be made on
 +
ubuntu-cloud-anounce@lists.ubuntu.com: https://lists.ubuntu.com/mailman/listinfo/ubuntu-cloud-announce
  
A PPA<<[[FootNote]](Personal Package Archive: an extra apt repository you can add to your sources.list to get access to software not in Ubuntu.)>> where we will upload only final releases.
+
Canonical has also set-up a new mailing list which will be higher volume, per upload notifications as new and updated packages land in the Cloud Archive: https://lists.ubuntu.com/mailman/listinfo/cloud-archive-changes
  
= Generating packages by hand =
+
== Package pages ==
  
Ubuntu is the reference platform for [[OpenStack]]. We follow the Ubuntu release cycle very closely, and do most of our QA on Ubuntu.
+
* https://launchpad.net/ubuntu/+source/ceilometer
 +
* https://launchpad.net/ubuntu/+source/python-ceilometerclient
 +
* https://launchpad.net/ubuntu/+source/cinder
 +
* https://launchpad.net/ubuntu/+source/python-cinderclient
 +
* https://launchpad.net/ubuntu/+source/glance
 +
* https://launchpad.net/ubuntu/+source/python-glanceclient
 +
* https://launchpad.net/ubuntu/+source/heat
 +
* https://launchpad.net/ubuntu/+source/python-heatclient
 +
* https://launchpad.net/ubuntu/+source/horizon
 +
* https://launchpad.net/ubuntu/+source/keystone
 +
* https://launchpad.net/ubuntu/+source/python-keystoneclient
 +
* https://launchpad.net/ubuntu/+source/neutron
 +
* https://launchpad.net/ubuntu/+source/python-neutronclient
 +
* https://launchpad.net/ubuntu/+source/nova
 +
* https://launchpad.net/ubuntu/+source/python-novaclient
 +
* https://launchpad.net/ubuntu/+source/swift
 +
* https://launchpad.net/ubuntu/+source/python-swiftclient
  
If you want to run [[OpenStack]] on Ubuntu, there are a few options, depending on
+
== Packaging branches ==
your stability requirements and which version of Ubuntu you're running.
 
  
{| border="1" cellpadding="2" cellspacing="0"
+
Packaging branches are maintained in bzr under Launchpad. Click on "Code" on the above pages.
|  Ubuntu version   
 
|  Only what is in Ubuntu
 
|  Only stable releases           
 
|-
 
|  10.04 LTS (Lucid)
 
|          N/A         
 
|  [[#Release_PPA|Release PPA]]   
 
|-
 
|  10.10 (Maverick) 
 
|    Pre-Austin snapshot 
 
|  [[#Release_PPA|Release PPA]]   
 
|-
 
|  11.04 (Natty)   
 
|  Frequent snapshots.<<BR>>Cactus expected in final release 
 
|  [[#Release_PPA|Release PPA]]
 
|}
 
  
= Trunk PPA =
+
== Packaging bugs ==
  
A PPA<<[[FootNote]](Personal Package Archive: an extra apt repository you can add to your sources.list to get access to software not in Ubuntu.)>> where we will upload a new version for every single commit on trunk.
+
Packaging bugs are tracked using Launchpad. Click on "Bugs" on the above pages.
  
Information and instructions for use can be found on [https://launchpad.net/~nova-core/+archive/trunk Launchpad] for Nova, and similarly for [https://launchpad.net/~swift-core/+archive/trunk Swift] and [https://launchpad.net/~glance-core/+archive/trunk Glance].
+
== PPAs ==
  
The packages are built by grabbing the latest tarball from http://nova.openstack.org/tarballs/ and adding [https://code.launchpad.net/~openstack-ubuntu-packagers/ubuntu/natty/nova/ubuntu lp:~openstack-ubuntu-packagers/ubuntu/natty/nova/ubuntu] on top of it, and adding a changelog entry.
+
Various PPAs with bleeding edge packages are maintained by the [https://launchpad.net/~openstack-ubuntu-testing OpenStack Ubuntu Testers] team. See [[PPAs]] for details. The Jenkins server can be found at https://jenkins.qa.ubuntu.com/view/Openstack_Testing
  
= Release PPA =
+
== Cloud Archive Source Packages ==
  
Information and instructions for use can be found on [https://launchpad.net/~nova-core/+archive/release Launchpad] for Nova, and similarly for [https://launchpad.net/~swift-core/+archive/release Swift] and [https://launchpad.net/~glance-core/+archive/release Glance]..
 
  
A PPA<<[[FootNote]](Personal Package Archive: an extra apt repository you can add to your sources.list to get access to software not in Ubuntu.)>> where we will upload only final releases.
+
The cloud-archive repository is actually just a backport of an
 +
associated Ubuntu release, so the primary source is actually in
 +
Ubuntu.  The source package branches are all owned by the
 +
ubuntu-server-dev team - for example if you wanted to checkout the
 +
Nova package for Juno, which was released alongside Ubuntu 14.10:
  
= Generating packages by hand =
+
    bzr branch lp:~ubuntu-server-dev/nova/juno nova-juno
  
Combine the main nova code with the packaging scripts:
+
or for kilo:
  
 +
    bzr branch lp:~ubuntu-server-dev/nova/kilo nova-kilo
  
<pre><nowiki>
+
you can then build a source package by using:
bzr export nova lp:nova
 
bzr export nova-packaging lp:~openstack-ubuntu-packagers/ubuntu/natty/nova/ubuntu
 
mv nova-packaging/debian nova
 
</nowiki></pre>
 
  
 +
    bzr bd -S
  
Edit the changelog entry. The following commands will specify a Lucid package with version "2011.1-0ubuntu2-local1" and a changelog entry "Local build for internal testing"
+
(that's part of the bzr-builddeb plugin).
  
 +
These branches are where the Ubuntu Server team drives all of its
 +
packaging efforts from including our branch package builds - so you
 +
may find some unreleased changes from time-to-time.
  
<pre><nowiki>
+
Hopefully that gives you a good pointer - there are more details at
cd nova
+
https://wiki.ubuntu.com/ServerTeam/OpenStack - if you have a change that is useful, please just proposed your
dch -v 2011.1-0ubuntu2-local1 -D lucid "Local build for internal testing"
+
changes back against those branches:
</nowiki></pre>
 
  
 +
    bzr push lp:~mylpid/nova/my-great-update
 +
    bzr lp-propose
  
Generate the packages:
+
This will generate a merge proposal on launchpad that the team will review.
 
 
 
 
<pre><nowiki>
 
./builddeb.sh
 
</nowiki></pre>
 
 
 
 
 
The packages will appear in the parent of the nova directory.
 

Latest revision as of 04:23, 10 February 2015

Ubuntu packaging

OpenStack packages for Ubuntu are published in Ubuntu main repository and maintained by Ubuntu core developers.

See Installing Ubuntu Cloud for official Ubuntu documentation on how to install OpenStack from packages.

Cloud Archive

Canonical’s Ubuntu Cloud archive allows users the ability to install newer releases of OpenStack on Ubuntu Server 12.04 LTS (and the dependencies) as they become available up through the next Ubuntu LTS release (presumably 14.04).

See https://wiki.ubuntu.com/ServerTeam/CloudArchive for more details.

Report any bugs that you find in packages from the Cloud Archive to https://bugs.launchpad.net/cloud-archive/+filebug

In terms of communication around the Cloud Archive, general announcements about milestone and release availability will be made on ubuntu-cloud-anounce@lists.ubuntu.com: https://lists.ubuntu.com/mailman/listinfo/ubuntu-cloud-announce

Canonical has also set-up a new mailing list which will be higher volume, per upload notifications as new and updated packages land in the Cloud Archive: https://lists.ubuntu.com/mailman/listinfo/cloud-archive-changes

Package pages

Packaging branches

Packaging branches are maintained in bzr under Launchpad. Click on "Code" on the above pages.

Packaging bugs

Packaging bugs are tracked using Launchpad. Click on "Bugs" on the above pages.

PPAs

Various PPAs with bleeding edge packages are maintained by the OpenStack Ubuntu Testers team. See PPAs for details. The Jenkins server can be found at https://jenkins.qa.ubuntu.com/view/Openstack_Testing

Cloud Archive Source Packages

The cloud-archive repository is actually just a backport of an associated Ubuntu release, so the primary source is actually in Ubuntu. The source package branches are all owned by the ubuntu-server-dev team - for example if you wanted to checkout the Nova package for Juno, which was released alongside Ubuntu 14.10:

   bzr branch lp:~ubuntu-server-dev/nova/juno nova-juno

or for kilo:

   bzr branch lp:~ubuntu-server-dev/nova/kilo nova-kilo

you can then build a source package by using:

   bzr bd -S

(that's part of the bzr-builddeb plugin).

These branches are where the Ubuntu Server team drives all of its packaging efforts from including our branch package builds - so you may find some unreleased changes from time-to-time.

Hopefully that gives you a good pointer - there are more details at https://wiki.ubuntu.com/ServerTeam/OpenStack - if you have a change that is useful, please just proposed your changes back against those branches:

   bzr push lp:~mylpid/nova/my-great-update
   bzr lp-propose

This will generate a merge proposal on launchpad that the team will review.