keystone install from source docs missing required steps
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
OpenStack Identity (keystone) |
Expired
|
Low
|
Unassigned | ||
PBR |
Invalid
|
Undecided
|
Unassigned |
Bug Description
The following is completely reproducible using Vagrant and the hashicorp/precise64 image.
Following the install instructions here: http://
There are several issues:
"python setup.py install" fails with these missing dependencies:
* missing Python.h
* missing libxml/xmlversion.h
Once those dependencies are taken care of by installing python-dev, libxml2-devm and libxslt1-dev, you can complete "setup.py install"
Running "keystone" at that point gets an error because pbr.version is not present.
pbr.version is listed in requirements.txt, but is not installed by "setup.py install" for some reason. Installing it resolves this issue.
Running keystone-manage and keystone-all gives an error because repoze.lru is not installed. Repoze.lru is a dependency of Routes, which is installed by setup.py. For some reason, when setup.py installs Routes, it does not install the dependency. if, AFTER running setup.py, you attempt to "pip install -r requirements.txt" it will not install repoze.lru because Routes is already installed, and pip doesn't detect that the dependency is not installed.
The following steps work reproducibly to install keystone from source on a completely clean hashicorp/
# Vagrant setup in an empty directory
vagrant init hashicorp/precise64
vagrant up
vagrant ssh
# Generic Ubuntu Precise instructions begin here.
sudo su
apt-get update
apt-get install -y git python-setuptools python-dev libxml2-dev libxslt1-dev
easy_install pip
cd /root
git clone https:/
cd keystone
pip install -r requirements.txt
python setup.py install
At that point all three executables (keystone, keystone-manage, and keystone-all) will execute and display their non-configured / help message without dependency errors.
Changed in pbr: | |
status: | Incomplete → Invalid |
Changed in keystone: | |
assignee: | nobody → Ankur (ankur-gupta-f) |
Most of the issues described here are resolved by following the dev docs [1] instead of the "install from source" docs. I think it would be best to merge these two documents, or just outright nuke the "install from packaging" [2] page since that should really be documented downstream, or in openstack-manuals, anyway (not sure there's any unique value on that page that's not redundant with other doc sources).
The issue with pbr.version is odd. I can reproduce it if I use "setup.py install" but "setup.py develop" seems to work fine. Running "setup.py install" a second time after "setup.py install" has failed once also seems to resolve the issue.
[1] http:// docs.openstack. org/developer/ keystone/ setup.html docs.openstack. org/developer/ keystone/ installing. html
[2] http://