Jira对接Prism开发API指南

部门

证系统运维团队

文档制作人

陈刚()

时间

2017-04-05

版本

第一版

目录

目的... 1

通例:... 1

认证... 2

新建版本单... 2

获取指定版本单的发布单信息... 3

 

目的

为了提升工作效率,打通jira和prism之间的联系,让软件项目管理人员可以在jira上新建版本单,并跟踪发布进度,特在prism上制作相关API供jira调用。

通例:

l  Prism的web址会因环境不同或构架变更而发生变更,jira端须提供自定义prism的api网址。

l  文档仅以根目录演示相关url。

l  演示代码主要以python为主,如果为javascript,会特别说明。

l  jira端可以自行构造认证表单,将获取的token保留。或是提供用户自行配置token。

认证

认证

成功

失败

URL

/api/api-token-auth/

请求方法

POST

请求参数

Username, password

状态码

200

400

返回消息

Json对象,

具体消息见demo

Json对象,

具体消息见demo

Demo:

url = "http://127.0.0.1:8000/api/api-token-auth/"

payload = {'username': 'kevsin', 'password': 'xxx'}

r = requests.post(url, data=payload)

print r.status_code #成功200 失败 400

print r.text

#成功输出:{"token":"d92bbea2a4b3bb1235badf87490ba7c980e9ebab"}

#失败输出:{"non_field_errors":["无法使用提供的认证信息登录。"]}

新建版本单

新建版本单

成功

失败

URL

/api/versionpool/

请求方法

POST

请求参数

Name, site_name

状态码

201

400

返回消息

Json对象,

具体消息见demo

Json对象,

具体消息见demo

***为保证prism内版本单的名单唯一性,Prismw会自动为jira传过来的版本单号加上项目名称,以此作为prism的版本单名称

Demo:

url = "http://127.0.0.1:8000/api/versionpool/"

mytoken="d92bbea2a4b3bb1235badf87490ba7c980e9ebab"

headers={'Authorization': 'Token {}'.format(mytoken)}

payload = {'name': '1.78.5', 'site_name': 'SIS-OMM' }

r = requests.post(url, data=payload, headers=headers)

print r.status_code #成功200 失败 400

print r.text

#成功输出:{"create_user":"kevin","message":"创建版本单成功!","result":"success","name":"SIS-OMM-1.78.5"}

#site_name不存在时输出:{"create_user":"kevin","message":"项目名不存在!","result":"failed","name":"SIS-OwMM-1.78.5"}

#已有相同版本单时输出:{"create_user":"kevin","message":"已存在相同版本单","result":"failed","name":"SIS-OMM-1.78.5"}

以下提供一个采用vue.js 2的前端框架时,创建版本单的javascript代码供参考:

submit: function() {

var selected = this.selected; // 这里才是你的表单数据

var versionNo = this.versionNo; // 这里才是你的表单数据

var headers = {}

var data = {}

data.name = versionNo //塞入post数据

data.site_name = selected //塞入post数据

headers.Authorization = 'Token ' + this.token; //设定html的header头信息

this.$http.post(this.apiVersionListUrl, data, {headers: headers}) //发送post请求

.then(function(response){

this.result = this.versionNo + "版本新增成功!"

console.log("right!")

}, function(response){

console.log(response);

console.log("wrong!");

});

获取指定版本单的发布单信息

获取指定版本单的发布单

成功

失败

URL

/api/deploypool/

请求方法

GET

请求参数

Site_name, version_name

状态码

200

200

返回消息

返回见demo

返回为空列表[]

Demo:

url = "http://127.0.0.1:8000/api/deploypool/?site_name=SIS-M&version_name=SIS-M-1.78.5"

r = requests.get(url)

print r.text

#如果传递参数正确且相关版本单内有发布单,输出如下:

[

{

"id": 140,  //发布单ID

"name": "20170308163803BR", //发布单名称

"site_name": "SIS-OMM", //发布单所属项目

"version_name": "SIS-OMM-1.78.5", //发布单所属版本单

"app_name": "SIS-OMM-JTC-APP-STATIC", //发布单所属组件

"order_no": 4, //发布单顺序

"deploy_status": "BUILD", //发布单状态

"deploy_progress": null, //发布单部署进度

"create_user": "kevin", //操作用户

"change_date": "2017-03-08T16:38:04" //操作时间

},

{

"id": 136,

"name": "20170302144843TA",

"site_name": "SIS-OMM",

"version_name": "SIS-OMM-1.78.5",

"app_name": "SIS-OMM-SQL",

"order_no": 8,

"deploy_status": "DR",

"deploy_progress": "待发布",

"create_user": "kevin",

"change_date": "2017-03-06T15:16:13"

}

]

开发API完成,写个文档的更多相关文章

  1. 你会用AngularJS,但你会写AngularJS文档么?

    你会用AngularJS,但你会写AngularJS文档么? 涉及知识:gulp javascript 我们经常在写代码的时候要求写好注释,方便日后维护.但其实注释还有一个重要的用途:生成API文档. ...

  2. 「快学springboot」16.让swagger帮忙写接口文档

    swagger简介 官方的介绍 THE WORLD'S MOST POPULAR API TOOLING Swagger is the world's largest framework of API ...

  3. 传智播客C/C++各种开发环境搭建视频工具文档免费教程

    传智播客作为中国IT培训的领军品牌,一直把握技术趋势,给大家带来最新的技术分享!传智播客C/C++主流开发环境免费分享视频文档中,就有写一个helloworld程序的示范.火速前来下载吧 所谓&quo ...

  4. Web Api 自动生成帮助文档

    Web Api 自动生成帮助文档   新建Web Api项目之后,会在首页有API的导航菜单,点击即可看到API帮助文档,不过很遗憾,Description 是没有内容的. 怎么办呢? 第一步: 如果 ...

  5. 《Spring Boot 实战纪实》之如何攥写需求文档

    目录 前言 (思维篇)人人都是产品经理 1.需求文档 1.1 需求管理 1.2 如何攥写需求文档 1.3 需求关键点文档 2 原型设计 2.1 缺失的逻辑 2.2 让想法跃然纸上 3 开发设计文档 3 ...

  6. 第三方API接口测试问题反馈文档

    大家在给甲方做大型项目的时候,有时候参与的厂商比较多,而公司负责的部分又需要第三方厂商提供接口支持. 例如我们做医疗行业的,给医院提供医保控费系统服务的,就需要HIS厂商提供接口给我们采集数据.有时候 ...

  7. Taurus.MVC WebAPI 入门开发教程8:WebAPI文档与自动化测试。

    系列目录 1.Taurus.MVC WebAPI  入门开发教程1:框架下载环境配置与运行. 2.Taurus.MVC WebAPI 入门开发教程2:添加控制器输出Hello World. 3.Tau ...

  8. 【DevOps敏捷开发动手实验】开源文档 v2015.2 stable 版发布

    Team Foundation Server 2015 Update 2版本终于在2周前的//Build 2016大会上正式发布了,借这个东风,小编也完成了[DevOps敏捷开发动手实验]开源文档的第 ...

  9. 看云&gitbook 写帮助文档 | 专注于文档在线创作、协作和托管

    看云 写帮助文档 | 专注于文档在线创作.协作和托管 https://www.kancloud.cn/manual/thinkphp/1678 https://www.gitbook.com/

随机推荐

  1. android onLayout死循环

    有时候,开发代码的时候,真的是因为你的无知,就导致了程序性能低下. 比如: @Override protected void onLayout(boolean changed, int l, int ...

  2. 跟着学!教你开发第一个Java程序

    今天我们的目标是开发人生中的第一个Java程序,虽然可能会很简单,但是这小小的一步却是跨入IT行业的一大步!下面我们来一起来仔细的了解开发的流程. 准备工作 1,作为一名准程序猿自备一台电脑那是必不可 ...

  3. 【Feasibility of Learning】林轩田机器学习基石

    这一节的核心内容在于如何由hoeffding不等式 关联到机器学习的可行性. 这个PAC很形象又准确,描述了“当前的可能性大概是正确的”,即某个概率的上届. hoeffding在机器学习上的关联就是: ...

  4. leetcode 【 Linked List Cycle 】 python 实现

    题目: Given a linked list, determine if it has a cycle in it. Follow up:Can you solve it without using ...

  5. 数据库——mysql内置功能(11)

    1.视图 视图是一个虚拟表(非真实存在),其本质是(根据SQL语句获取动态的数据集,并未其命名),用户使用时只需使用(名称)即可获取结果集,可以将该结果集当做表来使用 使用视图我们可以把查询过程中的临 ...

  6. 201621123033 《Java程序设计》第1周学习总结

    1. 本周学习总结 · jdk.jre.jvm的含义及相关概念(具体见下文回答) · 会使用记事本及简单编辑器编写Java程序,理解javac和java命令的含义(具体见下文回答) · java与C语 ...

  7. NOIP2017赛前考试注意事项总结

     考前: 考试前把读入优化和库以及对拍文件打好做好准备工作,另外注意放松心态,太紧张了肯定考不好··将自己的注意力集中起来  考场策略: 考试的基本策略是对每于道题先想个20分钟,如果想不出个靠谱的方 ...

  8. JAVA学习资料大全

    最高端的JAVA架构师资源(来自龙果学院 价值¥1399元).JAVA互联网分布式架构(龙果学院 价值¥899元).Spring Boot(2017年最新 包括源码原理分析) + Spring Clo ...

  9. 《R语言实战》读书笔记--第四章 基本数据管理

    本章内容: 操纵日期和缺失值 熟悉数据类型的转换 变量的创建和重编码 数据集的排序,合并与取子集 选入和丢弃变量 多说一句,数据预处理的时间是最长的……确实是这样的,额. 4.1一个示例 4.2创建新 ...

  10. tips server ssh 正向 反向 代理

    1. ssh userxxxxname@115.28.87.102           (直接使用ssh的连接方式连接到远程主机,而不是使用http,ftp等方式连接到具体远程主机)          ...