Jump to: navigation, search

Setup keystone in Eclipse

This page describes how to setup Eclipse PyDev Dev Env for keystone project.

Assumptions

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 preferably download Eclipse IDE for Java EE Developers. Please choose the 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 configure PyDev preference. call out preference dialogue by menu "window->preferences":

PydevPreferences.png

4. Install EGIT

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

Play with Keystone

Clone the client GIT repo

Switch to "Git repository exploring" perspective and clone the keystoneclient Git repo "https://github.com/openstack/python-keystoneclient.git":

Gitkeystone.png

We can see where it is cloned on local directory:

Gitclientdir.png

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

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 install -r tools/pip-require 
is used to install pre-requisites.

Clone keystone GIT repo

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

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:

Keystone.png

Set keystone project as PyDev project

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

Pydevkeystone.png

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

Keystonepythonpath.png

Configure keystone and setup db

  • a) Use mysql database
  • b) setup keystone db

Run shell scripts below to create keystone db:


And Run the shell below to create tables for keystone:

Play with keystone

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

Keystonedebugconfigure.png


  • b) Setup debug configuration

Keystoneworkdir.png


  • 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:

Runningkeystone.png


  • d) Initialize keystone with keystone client

Run the following scripts to do the initializing to populate the first user "admin" with password "password":

To check, we can run keystone client: