提交 311f0d50 authored 作者: vipcxj's avatar vipcxj

完善app相关接口文档

app部署相关接口增加status字段,表示部署状态
上级 d07c865e
......@@ -14,11 +14,12 @@ const { isNumber, isFinite, isString } = _;
/**
* @typedef {Object} DeploymentInfo 部署信息
* @property {id} number
* @property {string} versionNumber
* @property {string} description
* @property {Date} updateTime
* @property {string} uri
* @property {number} id 部署id
* @property {string} versionNumber 版本号
* @property {string} description 描述,一般为更新说明
* @property {Date} updateTime 部署发布时间
* @property {string} uri 资源内部uri,表示app安装包文件的内部定位地址
* @property {string} status 部署状态,可能值为release,development,broken。release表示公开版本,development表示内部测试版,broken表示有重大bug,短时间不能解决,需要回滚
*/
/**
......@@ -32,9 +33,9 @@ const { isNumber, isFinite, isString } = _;
/**
*
* @param name 对app名字的筛选条件,支持模糊查询,为空时等价于查全部
* @param pst 分页的开始位置,-1代表不分页
* @param psz 分页的大小
* @param {!string} name 对app名字的筛选条件,支持模糊查询,为空时等价于查全部
* @param {?number} pst 分页的开始位置,-1代表不分页
* @param {?number} psz 分页的大小
* @returns {Promise.<RestResponse.<Array.<AppInfo>>>} 所有符合条件的app信息
*/
export const getAppInfoes = async (name, pst = -1, psz = -1) => {
......@@ -43,18 +44,18 @@ export const getAppInfoes = async (name, pst = -1, psz = -1) => {
/**
* 新增app
* @param {string} name 名称
* @param {string} packageName
* @param {!string} name 名称
* @param {?string} packageName
* @param {?string} description
* @returns {Promise.<RestResponse.<AppInfo>>} 新增的app信息
*/
export const addApp = async (name, packageName, description = '') => {
export const addApp = async (name, packageName, description) => {
return post(`${config.apiContextPath}/api/app/admin/apps/create`, { name, package: packageName, description });
};
/**
* 更新app信息,忽略undefined的字段
* @param idOrName app的id或名称,若为数字,则认为是id,字符串则认为是名称
* @param {!number|string} idOrName app的id或名称,若为数字,则认为是id,字符串则认为是名称
* @param {?string} newName 新的名称
* @param {?string} packageName 包名
* @param {?string} description 描述
......@@ -72,7 +73,7 @@ export const editApp = async (idOrName, newName, packageName, description) => {
/**
* 删除app,所有部署包会一同删除
* @param {number|string} idOrName app的id或名称,若为数字,则认为是id,字符串则认为是名称
* @param {!number|string} idOrName app的id或名称,若为数字,则认为是id,字符串则认为是名称
* @returns {Promise.<RestResponse.<null>>}
*/
export const removeApp = async (idOrName) => {
......@@ -87,16 +88,17 @@ export const removeApp = async (idOrName) => {
/**
* 部署app,必须是一个新版本,若版本号低于或等于已部署的最高版本,则会部署失败
* @param {number|string} idOrName app的id或名称,若为数字,则认为是id,字符串则认为是名称
* @param {string} uri apk上传后得到的内部uri
* @param {!number|string} idOrName app的id或名称,若为数字,则认为是id,字符串则认为是名称
* @param {!string} uri apk上传后得到的内部uri
* @param {?string} description 更新说明
* @param {?boolean} release 是否release版本,默认true
* @returns {Promise.<RestResponse.<DeploymentInfo>>} 部署信息
*/
export const deployApp = async (idOrName, uri, description = '') => {
export const deployApp = async (idOrName, uri, description, release) => {
if (isNumber(idOrName) && !isFinite(idOrName)) {
return post(`${config.apiContextPath}/api/app/admin/apps/deploy`, { id: idOrName, uri, description });
return post(`${config.apiContextPath}/api/app/admin/apps/deploy`, { id: idOrName, uri, description, release });
} else if (isString(idOrName)) {
return post(`${config.apiContextPath}/api/app/admin/apps/deploy`, { name: idOrName, uri, description });
return post(`${config.apiContextPath}/api/app/admin/apps/deploy`, { name: idOrName, uri, description, release });
} else {
throw new Error(`Invalid id or name: ${idOrName}`);
}
......@@ -104,7 +106,7 @@ export const deployApp = async (idOrName, uri, description = '') => {
/**
* 反部署app
* @param id 部署app后返回的部署信息中记录的部署id
* @param {!number} id 部署app后返回的部署信息中记录的部署id
* @returns {Promise.<RestResponse.<null>>}
*/
export const undeployApp = async (id) => {
......@@ -113,10 +115,11 @@ export const undeployApp = async (id) => {
/**
* 修改部署信息
* @param id 部署app后返回的部署信息中记录的部署id
* @param description 部署描述,即更新说明
* @param {!number} id 部署app后返回的部署信息中记录的部署id
* @param {?string} description 部署描述,即更新说明
* @param {?string} status 部署状态,可能值为release,development,broken。release表示公开版本,development表示内部测试版,broken表示有重大bug,短时间不能解决,需要回滚
* @returns {Promise.<RestResponse.<null>>}
*/
export const editDeployment = async (id, description) => {
return post(`${config.apiContextPath}/api/app/admin/apps/deployments/edit`, { id, description });
export const editDeployment = async (id, description, status) => {
return post(`${config.apiContextPath}/api/app/admin/apps/deployments/edit`, { id, description, status });
};
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论