开发API完成,写个文档
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完成,写个文档的更多相关文章
- 你会用AngularJS,但你会写AngularJS文档么?
你会用AngularJS,但你会写AngularJS文档么? 涉及知识:gulp javascript 我们经常在写代码的时候要求写好注释,方便日后维护.但其实注释还有一个重要的用途:生成API文档. ...
- 「快学springboot」16.让swagger帮忙写接口文档
swagger简介 官方的介绍 THE WORLD'S MOST POPULAR API TOOLING Swagger is the world's largest framework of API ...
- 传智播客C/C++各种开发环境搭建视频工具文档免费教程
传智播客作为中国IT培训的领军品牌,一直把握技术趋势,给大家带来最新的技术分享!传智播客C/C++主流开发环境免费分享视频文档中,就有写一个helloworld程序的示范.火速前来下载吧 所谓&quo ...
- Web Api 自动生成帮助文档
Web Api 自动生成帮助文档 新建Web Api项目之后,会在首页有API的导航菜单,点击即可看到API帮助文档,不过很遗憾,Description 是没有内容的. 怎么办呢? 第一步: 如果 ...
- 《Spring Boot 实战纪实》之如何攥写需求文档
目录 前言 (思维篇)人人都是产品经理 1.需求文档 1.1 需求管理 1.2 如何攥写需求文档 1.3 需求关键点文档 2 原型设计 2.1 缺失的逻辑 2.2 让想法跃然纸上 3 开发设计文档 3 ...
- 第三方API接口测试问题反馈文档
大家在给甲方做大型项目的时候,有时候参与的厂商比较多,而公司负责的部分又需要第三方厂商提供接口支持. 例如我们做医疗行业的,给医院提供医保控费系统服务的,就需要HIS厂商提供接口给我们采集数据.有时候 ...
- Taurus.MVC WebAPI 入门开发教程8:WebAPI文档与自动化测试。
系列目录 1.Taurus.MVC WebAPI 入门开发教程1:框架下载环境配置与运行. 2.Taurus.MVC WebAPI 入门开发教程2:添加控制器输出Hello World. 3.Tau ...
- 【DevOps敏捷开发动手实验】开源文档 v2015.2 stable 版发布
Team Foundation Server 2015 Update 2版本终于在2周前的//Build 2016大会上正式发布了,借这个东风,小编也完成了[DevOps敏捷开发动手实验]开源文档的第 ...
- 看云&gitbook 写帮助文档 | 专注于文档在线创作、协作和托管
看云 写帮助文档 | 专注于文档在线创作.协作和托管 https://www.kancloud.cn/manual/thinkphp/1678 https://www.gitbook.com/
随机推荐
- ARC下还会存在内存泄露吗?
1.第三方框架不正当使用.2.block,delegate,NSTimer循环使用.3.非oc对象的内存处理.4.地图类处理.5.大次数循环内存暴涨. 非oc对象的释放: 例如使用CGImageRel ...
- 剑指Offer - 九度1517 - 链表中倒数第k个结点
剑指Offer - 九度1517 - 链表中倒数第k个结点2013-11-30 02:57 题目描述: 输入一个链表,输出该链表中倒数第k个结点.(hint: 请务必使用链表.) 输入: 输入可能包含 ...
- 《Cracking the Coding Interview》——第3章:栈和队列——题目2
2014-03-18 05:08 题目:实现一个栈,除了能进行push和pop之外,还能在O(1)时间内返回栈中最小的元素. 解法:用另一个“最小栈”存放最小的元素,每当有不小于当前最小值的元素进栈时 ...
- windows下Tomcat安装
环境Windows 64位 jdk1.8 1.Tomcat安装 官网地址:http://tomcat.apache.org/download-90.cgi 下载安装包,安装之后进行解压 2.修改htt ...
- NGUI-UIProgressBar,UIScrollBar,UISlider
UIProgressBar是UIScrollBar和UISlider的基类 1.先来看下UIProgressBar(进度条)的使用 层次: progressBar的Inspector视图: 而fore ...
- 孤荷凌寒自学python第二十二天python类的继承
孤荷凌寒自学python第二十二天python类的继承 (完整学习过程屏幕记录视频地址在文末,手写笔记在文末) python中定义的类可以继承自其它类,所谓继承的概念,我的理解 是,就是一个类B继承自 ...
- (原)UE4.20 自定义编辑器 - 基础(一)创建编辑器模块
@author:白袍小道 前言: 本小文参考了UnrealC++,游戏编辑器(应该都找不到了嘿嘿)等书籍. 引擎基于UnrealEngine4.20版本(由于UnrealC++ 用的是 ...
- 编译caffe遇到的问题
1. failed to see hdf5.h https://askubuntu.com/questions/629654/building-caffe-failed-to-see-hdf5-h 2 ...
- ES原理(转载)
该博客属于转载,是很经典的一篇关于ES的介绍: Elasticsearch 是一个兼有搜索引擎和NoSQL数据库功能的开源系统,基于Java/Lucene构建,可以用于全文搜索,结构化搜索以及近实时分 ...
- python爬取动态网页2,从JavaScript文件读取内容
import requests import json head = {"user-agent":"Mozilla/5.0 (Windows NT 6.1; WOW64) ...