跳转到: 导航, 搜索

在 Eclipse 中设置 Keystone

此页面描述了如何为 Keystone 项目设置 Eclipse PyDev 开发环境。

前提条件

操作系统:redhat 6.1 bit64

Libvirtd:已安装 libvirtd 和 libvirt 客户端(使用 "virsh -c qemu:///system list" 测试其可用性)

开发环境:GCC 和相关头文件(用于安装所需的 Python 模块)

MySQL:服务器和客户端,以及 MySQL root 账户的 root 密码(使用 "echo "show databases" | mysql -uroot -proot" 测试它)

使用的操作系统用户:root

设置 Eclipse

1. 确保已安装 Java:java -version。

2. 下载 Eclipse

我们最好下载 Eclipse IDE for Java EE Developers。请根据使用的操作系统选择合适的平台版本。将其解压缩到一个目录,例如 /root/eclipse。

3. 准备 PyDev

启动 Eclipse 后,我们使用 p2 站点 http://pydev.org/updates 安装 pydev。要安装它,只需通过菜单 "help->install new software..." 调用 Eclipse 的 "install" 对话框。

安装 PyDev 后,我们需要配置 PyDev 首选项。通过菜单 "window->preferences" 调用首选项对话框

PydevPreferences.png

4. 安装 EGIT

使用站点 http://download.eclipse.org/egit/updates 将 EGIT 插件安装到 Eclipse 中。

使用 Keystone

克隆客户端 GIT 仓库

切换到 "Git 仓库浏览" 透视图并克隆 keystoneclient Git 仓库 "https://github.com/openstack/python-keystoneclient.git"

Gitkeystone.png

我们可以在本地目录中看到它克隆到哪里

Gitclientdir.png

如上图所示,代码位于 "/root/test/git/python-keystoneclient" 下。

安装 Keystoneclient

Keystoneclient 将安装在操作系统上,因为通常我们不希望将其安装在 Eclipse 中。

在控制台中运行

pip install -r tools/pip-require 
用于安装先决条件。

克隆 Keystone GIT 仓库

克隆 keystone GIT 仓库站点 "https://github.com/openstack/keystone.git"。

将其导入到 Eclipse 工作区

我们将把 keystone 放入 Eclipse 工作区,然后在那里启动它。

右键单击 "工作目录",然后选择 "import project..." 将 keystone 导入到 Eclipse 工作区作为 "general project",因为 GIT 中没有 PyDev 项目元数据

Keystone.png

将 Keystone 项目设置为 PyDev 项目

切换到 PyDev 透视图并将 keystone 项目设置为 PyDev 项目

Pydevkeystone.png

通过右键单击上下文菜单 properties 调用项目的属性对话框以设置项目的 PYTHONPATH

Keystonepythonpath.png

配置 Keystone 并设置数据库

  • a) 使用 mysql 数据库
  • b) 设置 keystone 数据库

运行以下 shell 脚本创建 keystone 数据库


并运行以下 shell 脚本创建 keystone 表

使用 Keystone

  • a) 在 Eclipse 中为 keystone 设置调试配置

Keystonedebugconfigure.png


  • b) 设置调试配置

Keystoneworkdir.png


  • c) 启动 Keystone

要运行,我们可以单击 "Debug Configuration" 对话框上的 "Debug" 按钮,或从 "Debug/Run" 下拉工具栏按钮运行它

Runningkeystone.png


  • d) 使用 keystone 客户端初始化 keystone

运行以下脚本以完成初始化,用密码 "password" 填充第一个用户 "admin"

要检查,我们可以运行 keystone 客户端