上一篇博文为大家简单介绍了一下Bluemix的DevOps,
今天我们来具体的看一下如何实践, 和大家一起学习分享。
当然在开始之前, 还是需要大家了解一下什么是DevOps的。 同时, 您如果想一遍看一遍学习的话, 最好自己创建一个Bluemix账号。
浏览和克隆示例项目
1.如果您想知道您即将生成的app是什么样的, 您可以点击下面的地址查看一下,
http://sentiment-ua.mybluemix.net/。 这个app分析了Twitter用户关于您输入的关键字的集体情绪。
2.如果您想知道您即将生成的项目是什么样的, 您可以点击下面的地址查看一下,
https://hub.jazz.net/project/ibmdevopsservices/Sentiment%20Analysis%20App/overview
3.点击下面的图片来clone一个您自己的版本。
4.如果您还没有登录, 这里会提示您登录。
5.点击DEPLOY
6.当项目被克隆完并且部署完毕后, 点击EDIT CODE 继续
修改您的项目
通过DevOps里面的Track&Plan功能, 您可以使用agile方式管理您的项目。您可以创建sprints和rank并分配story,
task和defect给您的开发组成员。
打开Track&Plan功能
1.在项目的Overview页, 点击Project settings图标。
2.点击OPTIONS
3.选择Enable Track & Plan.
4.点击SAVE
浏览Track&Plan视图
1.在本页的最上角, 点击TRACK & PLAN.
2.如果您没有看到“OPEN and IN PROGRESS”,请点击Display
as lanes
3.然后点击Create a work item。
新建任务
您可以按照自己的计划来选择不同的项目。例如, 描述一个简单的的功能更新, 您可以创建一个任务项(Task)。
用来跟踪一个问题的解决, 您可以创建一个defect项。
在实例中的Sentiment Analysis App, 您可以点击Create a work item
来新增加一个工作项。例如:
1.在Create a work item里, 输入enter Update
default search topic,hen deploy app作为您的工作项简介。 当然您也可以输入不同的内容,
例如作者, 优先级等等
将“Task“类型分配给工作项。 在描述后面要加一个空格然后输入*task.
将工作项非配给您自己: @:<Your Username>.
分配一个高优先级的项目: $high.
2.点击”CREATE“。 您的心工作项就如下图一样显示出来了。
现在您的项目有如下一个工作项: 更新app默认搜索话题的任务。该任务有最高优先级,
所以您需要赶紧处理
修改任务状态
1.在task里点击”Status“
2.点击Start Working。 这项任务将从OPEN状态改为IN
PROGRESS 。
3.记下您任务的工作项号码, 譬如咱们例子里面的437. 后面您在commit
Git时候需要用到这个号码。
修改项目代码
按照之前介绍的, 我们现在已经有了一个示例项目和任务可以试着练习一下。 您可以通过浏览器使用DevOps
Service Web IDE 来做修改。
1.点击EDIT CODE. Web IDE就会打开而且直接带您到项目根目录。
2.打开app.js文件。
3.在文件的第6行, 找到DEFAULT_TOPIC变量 。 该变量是您程序sentiment
analysis t第一次部署时的subject。您可以把它改成任何您想要改的值。
4.默认情况下, 当您停止输入一段时间后, 修改会被自动存储。
修改已经被存储并且可以提交到项目远程的repository(仓库)里。
把修改提交到远程仓库
对于版本和源代码的管理, DevOps服务支持Git, Jazz SCM和GitHub。 由于Sentiment
Analysis App项目最开始使用的是IBM的Git仓库, 所以你的项目也会是用Git仓库。
您修改的代码当前还保存在您云端的workspace里。提交修改的代码到你的项目主干上然后部署到Bluemix里。
1.在最左侧, 点击Git Repository图标。
在打开的git页面, 检查Working Directory Changes
section来确认一个未提交的更改在app.js文件里。同时也可以看到其它一些被克隆到workspace的项目。你可以随时提交这些修改。
2.选择app.js边上的checkbox。 如果你想比较这个app.js和远程Git仓库里的版本,
点击app.js边上的箭头。
3.输入提交描述信息。 在消息里面记得写上task number。 这样就可以和任务清单连接上了。
如果您忘记了这个号码, 可以回头Track & Plan里面去找。
4.点击Commit。 Active Branch section就会显示最新的修改
5.点击 Push。 本地主干分支就会提交到远程主干分支
浏览程序构建和部署
但您通过点击Deploy to Bluemix按钮来克隆一个项目的时候, 项目会自动创建一个pipeline。
在部署你的app之前, 浏览一下这个pipeline是怎么工作的。
pipeline是按不同阶段生成的。 Sentiment Analysis app 的pipeline有两个阶段:
构建阶段和部署阶段。 构建阶段是通过调用Gruntfile.js构建代码来验证您的代码。 而部署阶段则是部署代码到Bluemix上。
构建阶段:
1. 在最上端的导航栏, 点击BUILD & DEPLOY.
2. 在构建阶段的磁贴页上, 点击Stage Configuration,
然后再点击Configure Stage
a. 在INPUT tab, 注意输入如下信息
b. 点击JOBS tab, 并注意下面的信息
* The builder type is **Grunt**. The
sample project uses JSHint validation to check its code
for errors. For the validation to work, the repository
must contain a Grunt build file and the build job must
use Grunt. Every time a change is pushed to its repository,
the project uses JSHint to make sure that the code is
error-free.
* Because the `app.js` file is located
in the root of the project, you do not have to specify
a working directory or a build archive directory.
* If the build does not complete successfully,
the stage stops running and any later jobs do not run.
c. 因为还没有做任何的改变, 点击DISCARD CHANGES 来回到Build
& Deploy Pipeline 页
下一阶段是部署阶段。 包括一个部署的任务。 部署项目到Bluemix里。
部署阶段:
在部署阶段的磁贴里, 点击Stage Configuration图标,
然后点击Configure Stage.
a. 在Input tab里, 注意如下信息:
输入部分是build阶段的输出
构建成功后 部署部分会自动执行
b. 在JOBS tab里注意如下信息:
app被设置成部署到Bluemix组织和空间里
这里使用cf push来提交
c. 因为您没有做任何修改, 所以点击DISCARD CHANGES
部署app并验证修改项
在Build stage磁贴里, 点击Run Stage , 构建代码会被加到队里里,
执行, 然后部署到Bluemix
|