Jump to: navigation, search

Packaging/SUSE

< Packaging
Revision as of 13:37, 5 April 2012 by Berendt (talk)

SUSE packaging

B1 Systems provides OpenStack packages for OpenSUSE and SLE through the openSUSE Build Service.

You can find all the packages in the subprojects from isv:B1-Systems:OpenStack.

Development packages (normally the latest succeeded builds from Jenkins) are located in the project isv:B1-Systems:OpenStack:devel.

Packages of milestones (isv:B1-Systems:OpenStack:milestone) and releases (isv:B1-Systems:OpenStack:release) are also available.

For all our packages we suggest to use the requirements provided in the project isv:B1-Systems:OpenStack:requirements and to not use other packages (we only test those packages).

The B1 Systems provides a technical whitepaper in german language which describes the setup of OpenStack on top of SUSE Linux Enterprise Server 11 SP1 using Diablo. The whitepaper is available here.

At the moment we provide packages for the following projects:

This packaging work is thanks to the efforts of:

Usage

After adding our repositories like described here and running zypper ref you can find all openstack packages by searching for "openstack" (zypper search openstack)

VERY IMPORTANT NOTE: It's not possible to use OpenStack on top of SLES11 SP2 at the moment, because there are several unfixed issues in the delivered Python interpreter. Please have a look at the section "Python @ SLES11 SP2" on this wiki page for details and how to resolve the issues.

openSUSE 12.1

First you have to import several GPG public keys:


rpm --import http://download.opensuse.org/repositories/isv:/B1-Systems:/OpenStack:/release:/Essex/openSUSE_12.1/repodata/repomd.xml.key
rpm --import http://download.opensuse.org/repositories/isv:/B1-Systems:/OpenStack:/release:/Essex:/requirements/openSUSE_12.1/repodata/repomd.xml.key


Then you can add the repositories using zypper:


zypper ar http://download.opensuse.org/repositories/isv:/B1-Systems:/OpenStack:/release:/Essex/openSUSE_12.1/isv:B1-Systems:OpenStack:release:Essex.repo
zypper ar http://download.opensuse.org/repositories/isv:/B1-Systems:/OpenStack:/release:/Essex:/requirements/openSUSE_12.1/isv:B1-Systems:OpenStack:release:Essex:requirements.repo


SLES11 SP2

First you have to import several GPG public keys:


rpm --import http://download.opensuse.org/repositories/isv:/B1-Systems:/OpenStack:/release:/Essex/SLE_11_SP2/repodata/repomd.xml.key
rpm --import http://download.opensuse.org/repositories/isv:/B1-Systems:/OpenStack:/release:/Essex:/requirements/SLE_11_SP2/repodata/repomd.xml.key


Then you can add the repositories using zypper:


zypper ar http://download.opensuse.org/repositories/isv:/B1-Systems:/OpenStack:/release:/Essex/SLE_11_SP2/isv:B1-Systems:OpenStack:release:Essex.repo
zypper ar http://download.opensuse.org/repositories/isv:/B1-Systems:/OpenStack:/release:/Essex:/requirements/SLE_11_SP2/isv:B1-Systems:OpenStack:release:Essex:requirements.repo


RabbitMQ

You can find an up to date version of RabbitMQ in the project "isv:B1-Systems:OpenStack:tools:rabbitmq" for SLES11 SP2 and openSUSE 12.1. Add the public GPG key and the repository on your queuing system this way:

openSUSE 12.1

rpm --import http://download.opensuse.org/repositories/isv:/B1-Systems:/OpenStack:/tools:/rabbitmq/openSUSE_12.1/repodata/repomd.xml.key
zypper ar http://download.opensuse.org/repositories/isv:/B1-Systems:/OpenStack:/tools:/rabbitmq/openSUSE_12.1/isv:B1-Systems:OpenStack:tools:rabbitmq.repo


SLES11 SP2

rpm --import http://download.opensuse.org/repositories/isv:/B1-Systems:/OpenStack:/tools:/rabbitmq/SLE_11_SP2/repodata/repomd.xml.key
zypper ar http://download.opensuse.org/repositories/isv:/B1-Systems:/OpenStack:/tools:/rabbitmq/SLE_11_SP2/isv:B1-Systems:OpenStack:tools:rabbitmq.repo


Python @ SLES11 SP2

Unfortunately there are two issues in the Python interpreter delivered with SLES11 SP2 avoiding it to run OpenStack on top. We're providing patched packages for the Python interpreter. Please contact os at openstack@b1-systems.de to receive a copy of them.

You can check if the python interpreter of SLES11 SP2 still contains issues using this script. We hope that SUSE will deliver an update or upgrade soon so that it's no more necessary to use a patched version of the Python interpreter.


#!/usr/bin/python

## vim: set syn=on ts=4 sw=4 sts=0 noet foldmethod=indent:
## purpose: check if python interpreter contains blocking issues for OpenStack
## copyright: B1 Systems GmbH <info@b1-systems.de>, 2012.
## license: GPLv3+, http://www.gnu.org/licenses/gpl-3.0.html
## author: Christian Berendt <berendt@b1-systems.de>, 2012.

print "test if keyword arguments with unicode keys are working without problems"
print "expected result: {u'key': 'value'}"
print

def testing(**kwargs):
    print kwargs

try:
    testing(**{u'key': 'value'})
except TypeError:
    print "ERROR: catched TypeError, keyword arguments with unicode keys are NOT working"


print
print "test if ident of thread is working without problems"
print "expected result: a long integer (for example: 140630265239296)"
print

import threading
t = threading.current_thread()
ident = t.ident
if ident == None:
    print "ERROR: ident of current thread is None, ident of threads is NOT working"
else:
    print ident


If everything is fine you should receive a similiar output:


test if keyword arguments with unicode keys are working without problems
expected result: {u'key': 'value'}

{u'key': 'value'}

test if ident of thread is working without problems
expected result: a long integer (for example: 140630265239296)

140516648064768


If the issues are still there the output would look like this one:


test if keyword arguments with unicode keys are working without problems
expected result: {u'key': 'value'}

ERROR: catched TypeError, keyword arguments with unicode keys are NOT working

test if ident of thread is working without problems
expected result: a long integer (for example: 140630265239296)

ERROR: ident of current thread is None, ident of threads is NOT working