Jump to: navigation, search

Difference between revisions of "Setup keystone in Eclipse"

Line 83: Line 83:
{| border="1" cellpadding="2" cellspacing="0"
{| border="1" cellpadding="2" cellspacing="0"
* connection = mysql://root:root@localhost/keystone [identity] driver = keystone.identity.backends.sql.Identity [token] driver = keystone.token.backends.sql.Token # Amount of time a token should remain valid (in seconds) expiration = 86400 [policy] driver = keystone.policy.backends.rules.Policy [ec2]
driver = keystone.contrib.ec2.backends.sql.Ec2 ... ||
  b. setup keystone db
  b. setup keystone db
Line 116: Line 113:
run the following scripts to do the initiazing to popluate the first user "admin" with password "password":
run the following scripts to do the initiazing to popluate the first user "admin" with password "password":
{| border="1" cellpadding="2" cellspacing="0"
{| border="1" cellpadding="2" cellspacing="0"

Revision as of 03:55, 19 March 2012

This page describes how to setup Eclipse PyDev Dev Env for keystone project. Table of contents: <<TableOfContents()>>


OS: redhat 6.1 bit64

Libvirtd: libvirtd and libvirt client are installed ( use "virsh -c qemu:///system list" to test its availability)

development env: GCC and related header files (for install needed python modules)

mysql: server and client, with root password for mysql root account ( use "echo "show databases" | mysql -uroot -proot" to test it)

OS user to use: root

To setup eclipse

1.make sure there is one java available: java -version

2.download eclipse

we had better download Eclipse IDE for Java EE Developers. Please choose proper platform version according to the OS used. Unzip it into a dir, for example /root/eclipse

3. prepare PyDev

After start the Eclipse, we install pydev with p2 site “http://pydev.org/updates”. To install it, just call out Eclipse's "install" dialogue by menu "help->install new software...".

with PyDev installed, we need to configiure PyDev preference. call out preference dialogue by menu "window->preferences": {{http://wiki.openstack.org/Setup keystone in Eclipse?action=AttachFile&do=get&target=PydevPreferences.png||height="454px",width="612px"}}

4. install EGIT

install EGIT plugins into Eclipse with site "http://download.eclipse.org/egit/updates"

Play with Keystone

1. clone the client GIT repo

switch to "Git repository exploring" perspective and clone the keystoneclient Git repo "https://github.com/openstack/python-keystoneclient.git": {{http://wiki.openstack.org/gongysh@cn.ibm.com?action=AttachFile&do=get&target=gitkeystone.png||height="538px",width="572px"}}

we can see where it is cloned on local directory:


Just shown by above figure, the code is under "/root/test/git/python-keystoneclient"

2. install keystoneclient

keystoneclient will be installed on OS since in general we are not interested to have it in eclipse:

on a console, run:

"pip-python install -r tools/pip-require" is used to install pre-requisites

3. clone keystone GIT repo

clone keystone GIT repo site "https://github.com/openstack/keystone.git"

4. import it into Eclipse workspace

we will put keystone into Eclipse workspace and then start it there.

right click on "working directory" and then choose "import project..." to import keystone into Eclipse workspace as "general project" since there is no pydev project metadata in GIT:


5. set keystone project as PyDev project

Switch to PyDev perspective and set keystone project as PyDev project:


call out project's properties dialogue by right context menu propreties to set project's PYTHONPATH:


6.confiure keystone and setup db

  • a) use mysql database
b. setup keystone db

run shell scripts below to create keystone db

run the shell below to create tables for keystone

7. play with keystone

  • a) set up a debug configuration for keystone in Eclipse


b. setup debug configuration


c: launch keystone

to run we can click "Debug" button on "Debug Configuration" dialogue or run it from "Debug/Run" pull down tool bar button


d: initialize keystone with keystone client

run the following scripts to do the initiazing to popluate the first user "admin" with password "password":

To check, we can run keystone client:

List of pages in this category:

<<FullSearchCached(category:@Eclipse@ @PyDev@)>>