-
加入OpenStack社区
- https://launchpad.net/,注册用户(597092663@qq.com/Admin@123)
-
修改个人信息,配置SSH keys、OpenPGP keys,详细过程参考:
http://www.ubuntukylin.com/ukylin/forum.php?mod=viewthread&tid=23
http://serverfault.com/questions/214605/gpg-not-enough-entropy
- 记住Launchpad Id:597092663-9,修改为junneyang。
- 个人lanuchpad页面变为:https://launchpad.net/~junneyang。
- Lanuchpad账户可以单点登录review-openstack,此网站保存所有开发者提交的代码。登录,上传SSH KEY,生成HTTP密码:p3KWMfRlvN5J。申请加入OpenStack Contributors 组、获得贡献权。
-
与OpenStack社区人员交流
- 加入Openstack邮件列表、Openstack开发者邮件列表,访问https://wiki.openstack.org/wiki/Mailing_Lists,进行订阅。
- IRC(Internet Relay Chat),类似于QQ即时聊天工具。Linux用户下载x-chat工具或者使用chatzilla Firefox插件。
- 每个项目每周在线会议。https://wiki.openstack.org/wiki/Meetings。
- 代码评审交流。https://review.openstack.org/。
- 开发者交流峰会。http://www.meetup.com。
-
安装配置本地开发环境
- Linux基础知识、Python基础知识、代码版本管理Git、开发环境Eclipse+PyDev+EGit、GitHub代码下载、DevStack专用于开发环境搭建。
- 安装git:yum install git –y。
-
安装配置JDK、环境变量配置(建议直接按照java7:yum install java-1.7.0-openjdk -y):
http://blog.163.com/chendyong@126/blog/static/4226801820127953017837/。
http://www.cnblogs.com/ac-carrot/archive/2012/05/23/2514586.html。
java6下载地址:
http://www.oracle.com/technetwork/java/javase/downloads/java-archive-downloads-javase6-419409.html
# added by java
export JAVA_HOME=/usr/java/jdk1.6.0_45
export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$PATH:$JAVA_HOME/bin
- 安装桌面版(可选,可以使用xManager实现?):
yum groupinstall -y "X Window System"
yum groupinstall -y "KDE Desktop"
startkde或者startx启动桌面环境
-
安装Eclipse:yum install eclipse* –y或者下载安装
http://www.centoscn.com/image-text/config/2013/0809/1210.html
http://www.linuxidc.com/Linux/2012-11/73988.htm
http://www.eclipse.org/downloads/?osType=linux
eclipse命令启动eclipse
-
安装PyDev(注意与java版本对应关系):yum install eclipse-pydev -y
或者unzip -n PyDev 4.0.0.zip -d /usr/lib64/eclipse/
或者eclipse自助下载:http://pydev.org/updates
或者eclipse marketplace下载安装。
参考:http://www.cnblogs.com/halfacre/archive/2012/07/22/2603848.html
http://www.linuxidc.com/Linux/2011-07/39028.htm
http://wiki.eclipse.org/EGit/FAQ#Where_can_I_find_older_releases_of_EGit.3F
http://www.cnblogs.com/draem0507/archive/2013/01/14/2859954.html
-
配置python解释器:
参考:http://www.cnblogs.com/halfacre/archive/2012/07/22/2603848.html
-
安装eclipse的egit插件:http://download.eclipse.org/egit/updates
-
DevStack或者源码安装OpenStack
-
参考:
-
源码安装OpenStack
-
OpenStack源码调试
- Eclipse的Outline查看源码结构。
- use_stderr=true,运行后台进程,eclipse中查看日志输出。
- 嵌入日志输出,跟踪运行状态。
-
单步调试等调试技巧:
http://www.cnblogs.com/linyawen/archive/2012/03/14/2395533.html
-
单步调试问题(排除eventlet线程与pdb线程不一致问题):
http://adam.younglogic.com/2012/12/keystone-and-eclipse-pydev/
-
BUG提交
参考:
http://www.ibm.com/developerworks/cn/cloud/library/cl-contributecode-openstack/
-
-
附件
【OpenStack】OpenStack系列1之OpenStack本地开发环境搭建&&向社区贡献代码的更多相关文章
-
spark-windows(含eclipse配置)下本地开发环境搭建
spark-windows(含eclipse配置)下本地开发环境搭建 >>>>>>注意:这里忽略JDK的安装,JDK要求是1.8及以上版本,请通过 java ...
-
Angular入门到精通系列教程(4)- 开发环境搭建以及入手项目
1. 本地开发环境搭建 1.1. node.js 1.2. Angular CLI 2. 开发工具 - Visual Studio Code 第一个Anuglar项目 创建第一个anuglar项目 A ...
-
vue 开发系列(一) vue 开发环境搭建
概要 目前前端开发技术越来越像后台开发了,有一站式的解决方案. 1.JS包的依赖管理像MAVEN. 2.JS代码编译打包. 3.组件式的开发. vue 是一个前端的一站式的前端解决方案,从项目的初始化 ...
-
基于 Laravel 开发博客应用系列 —— 设置 Linux/Mac 本地开发环境
1.不同 Linux 发行版本的区别 不同的 Linux 发行版本之间有一些细微区别,尤其是包管理器:CentOS 和 Fedora 使用 yum 作为包管理器,而Ubuntu 使用 apt,在 O ...
-
Spark 系列(二)—— Spark开发环境搭建
一.安装Spark 1.1 下载并解压 官方下载地址:http://spark.apache.org/downloads.html ,选择 Spark 版本和对应的 Hadoop 版本后再下载: 解压 ...
-
【Android Studio安装部署系列】一、JDK开发环境搭建
版权声明:本文为HaiyuKing原创文章,转载请注明出处! 概述 Android Studio安装后自带jre,这个自带jre的版本号肯定比最新的版本号要小. 但是如果项目中没有用到新版本jdk的特 ...
-
本地开发环境搭建(windows)
一.虚拟器安装 1.概念 ・为什么要搭建搭建模拟环境 在租借服务器前用手中的PC模拟一个服务器的环境,可以打包与团队人员分享 ・什么是Vagrant https://segmentfault.com/ ...
-
Hadoop 系列(四)—— Hadoop 开发环境搭建
一.前置条件 Hadoop 的运行依赖 JDK,需要预先安装,安装步骤见: Linux 下 JDK 的安装 二.配置免密登录 Hadoop 组件之间需要基于 SSH 进行通讯. 2.1 配置映射 配置 ...
-
spark本地开发环境搭建及打包配置
在idea中新建工程 删除新项目的src,创建moudle 在父pom中添加spark和scala依赖,我们项目中用scala开发模型,建议scala,开发体验会更好(java.python也可以) ...
随机推荐
-
Goldengate进程的拆分与合并
Goldengate的拆分与合并分类: ORACLE GoldenGate 2013-10-10 15:22 721人阅读 评论(0) 收藏 举报在使用Goldengate作为复制解决方案时,随着负载 ...
-
使用自定义模板为Myeclipse添加新建Filter的功能
第一步:单击windowpreference菜单项,在打开的窗口中,依次展开Java.Editor.Templates列表项,然后在打开的Templates面板中,单击[New]按钮 使用这个模板非 ...
-
extjs DateField 的值用getValue()方法获取后是一大堆字符串,类似Tue Dec 07 2010 00:00:00 GMT 0800,这玩意存入数据库实在不好办。。。
extjs DateField 的值用getValue()方法获取后是一大堆字符串,类似Tue Dec 07 2010 00:00:00 GMT 0800,这玩意存入数据库实在不好办...所以要把它格 ...
-
IT公司100题-13-求链表中倒数第k个结点
问题描述: 输入一个单向链表,输出该链表中倒数第k个结点.链表倒数第0个节点为NULL. struct list_node { int data; list_node* next; }; 分析: 方法 ...
-
.NET中的Timer类型用法详解
这篇文章主要介绍了.NET中的Timer类型用法,较为详细的分析了Timer类型在各种环境下的用法,需要的朋友可以参考下 在.NET FrameWork中有多个Timer,那么怎么根据实际情况进行 ...
-
embed标签的使用(在网页中播放各种音频视频的插件的使用)
播放器插件使用说明: 代码:< EMBED src=“music.mid”autostart=“true”loop=“2”width=“80”height=“30”> src:音乐文件的路 ...
-
JAVA设计模式之单一职责原则
概念: 就一个类而言应该只有一个因其他变化的原因. 流程: 问题由来:设类或接口类C负责两个不同不同的职责:职责T1,职责T2.当由于职责T1需求改变进而需要修改类C时,可能导致职责T2收到不可预知的 ...
-
【转】K3Cloud 二次开发 单据转换系列
Entity, EntryEntity, SubEntryEntity 这三个对象具有继承关系:Entity 是实体基类,用于定义各种实体的公共属性:EntryEntity 是单据体实体类,从Enti ...
-
C#笔记1:异常
reference : http://www.cnblogs.com/luminji/archive/2010/10/20/1823536.html 本章概要: 1:为什么需要异常 2:finally ...
-
URAL 1297 后缀数组:求最长回文子串
思路:这题下午搞了然后一直WA,后面就看了Discuss,里面有个数组:ABCDEFDCBA,这个我输出ABCD,所以错了. 然后才知道自己写的后缀数组对这个回文子串有bug,然后就不知道怎么改了. ...