mirror of
https://github.com/certd/certd.git
synced 2026-05-18 14:27:36 +08:00
786 lines
22 KiB
JavaScript
786 lines
22 KiB
JavaScript
|
|
/*
|
|||
|
|
* Copyright 2018 JDCLOUD.COM
|
|||
|
|
*
|
|||
|
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
|||
|
|
* you may not use this file except in compliance with the License.
|
|||
|
|
* You may obtain a copy of the License at
|
|||
|
|
*
|
|||
|
|
* http:#www.apache.org/licenses/LICENSE-2.0
|
|||
|
|
*
|
|||
|
|
* Unless required by applicable law or agreed to in writing, software
|
|||
|
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
|||
|
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|||
|
|
* See the License for the specific language governing permissions and
|
|||
|
|
* limitations under the License.
|
|||
|
|
*
|
|||
|
|
* 依赖
|
|||
|
|
* 云部署依赖相关接口
|
|||
|
|
*
|
|||
|
|
* OpenAPI spec version: v1
|
|||
|
|
* Contact:
|
|||
|
|
*
|
|||
|
|
* NOTE: This class is auto generated by the jdcloud code generator program.
|
|||
|
|
*/
|
|||
|
|
|
|||
|
|
require('../../../lib/node_loader')
|
|||
|
|
var JDCloud = require('../../../lib/core')
|
|||
|
|
var Service = JDCloud.Service
|
|||
|
|
var serviceId = 'deploy'
|
|||
|
|
Service._services[serviceId] = true
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* deploy service.
|
|||
|
|
* @version 1.0.0
|
|||
|
|
*/
|
|||
|
|
|
|||
|
|
JDCloud.DEPLOY = class DEPLOY extends Service {
|
|||
|
|
constructor (options = {}) {
|
|||
|
|
options._defaultEndpoint = {}
|
|||
|
|
options._defaultEndpoint.protocol =
|
|||
|
|
options._defaultEndpoint.protocol || 'https'
|
|||
|
|
options._defaultEndpoint.host =
|
|||
|
|
options._defaultEndpoint.host || 'deploy.jdcloud-api.com'
|
|||
|
|
options.basePath = '/v1' // 默认要设为空""
|
|||
|
|
super(serviceId, options)
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* 批量查询应用的信息,此接口支持分页查询,默认每页20条
|
|||
|
|
* @param {Object} opts - parameters
|
|||
|
|
* @param {integer} [opts.pageNumber] - 页码;默认为1 optional
|
|||
|
|
* @param {integer} [opts.pageSize] - 分页大小;默认为20;取值范围[10, 100] optional
|
|||
|
|
* @param {filter} [opts.filters] - appId - 应用ID,精确匹配
|
|||
|
|
appName - 应用名,精确匹配
|
|||
|
|
platform - 部署平台,精确匹配
|
|||
|
|
optional
|
|||
|
|
* @param {string} regionId - ID of the region
|
|||
|
|
* @param {string} callback - callback
|
|||
|
|
@return {Object} result
|
|||
|
|
* @param app apps
|
|||
|
|
* @param number totalCount
|
|||
|
|
*/
|
|||
|
|
|
|||
|
|
describeApps (opts, regionId = this.config.regionId, callback) {
|
|||
|
|
if (typeof regionId === 'function') {
|
|||
|
|
callback = regionId
|
|||
|
|
regionId = this.config.regionId
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if (regionId === undefined || regionId === null) {
|
|||
|
|
throw new Error(
|
|||
|
|
"Missing the required parameter 'regionId' when calling describeApps"
|
|||
|
|
)
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
opts = opts || {}
|
|||
|
|
|
|||
|
|
let postBody = null
|
|||
|
|
let queryParams = {}
|
|||
|
|
if (opts.pageNumber !== undefined && opts.pageNumber !== null) {
|
|||
|
|
queryParams['pageNumber'] = opts.pageNumber
|
|||
|
|
}
|
|||
|
|
if (opts.pageSize !== undefined && opts.pageSize !== null) {
|
|||
|
|
queryParams['pageSize'] = opts.pageSize
|
|||
|
|
}
|
|||
|
|
Object.assign(queryParams, this.buildFilterParam(opts.filters, 'filters'))
|
|||
|
|
|
|||
|
|
let pathParams = {
|
|||
|
|
regionId: regionId
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
let headerParams = {
|
|||
|
|
'User-Agent': 'JdcloudSdkNode/1.0.0 deploy/1.0.0'
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
let contentTypes = ['application/json']
|
|||
|
|
let accepts = ['application/json']
|
|||
|
|
|
|||
|
|
// 扩展自定义头
|
|||
|
|
if (opts['x-extra-header']) {
|
|||
|
|
for (let extraHeader in opts['x-extra-header']) {
|
|||
|
|
headerParams[extraHeader] = opts['x-extra-header'][extraHeader]
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if (Array.isArray(opts['x-extra-header']['content-type'])) {
|
|||
|
|
contentTypes = opts['x-extra-header']['content-type']
|
|||
|
|
} else if (typeof opts['x-extra-header']['content-type'] === 'string') {
|
|||
|
|
contentTypes = opts['x-extra-header']['content-type'].split(',')
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if (Array.isArray(opts['x-extra-header']['accept'])) {
|
|||
|
|
accepts = opts['x-extra-header']['accept']
|
|||
|
|
} else if (typeof opts['x-extra-header']['accept'] === 'string') {
|
|||
|
|
accepts = opts['x-extra-header']['accept'].split(',')
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
let formParams = {}
|
|||
|
|
|
|||
|
|
let returnType = null
|
|||
|
|
|
|||
|
|
this.config.logger(
|
|||
|
|
`call describeApps with params:\npathParams:${JSON.stringify(
|
|||
|
|
pathParams
|
|||
|
|
)},\nqueryParams:${JSON.stringify(
|
|||
|
|
queryParams
|
|||
|
|
)}, \nheaderParams:${JSON.stringify(
|
|||
|
|
headerParams
|
|||
|
|
)}, \nformParams:${JSON.stringify(
|
|||
|
|
formParams
|
|||
|
|
)}, \npostBody:${JSON.stringify(postBody)}`,
|
|||
|
|
'DEBUG'
|
|||
|
|
)
|
|||
|
|
|
|||
|
|
let request = this.makeRequest(
|
|||
|
|
'/regions/{regionId}/apps',
|
|||
|
|
'GET',
|
|||
|
|
pathParams,
|
|||
|
|
queryParams,
|
|||
|
|
headerParams,
|
|||
|
|
formParams,
|
|||
|
|
postBody,
|
|||
|
|
contentTypes,
|
|||
|
|
accepts,
|
|||
|
|
returnType,
|
|||
|
|
callback
|
|||
|
|
)
|
|||
|
|
|
|||
|
|
return request.then(
|
|||
|
|
function (result) {
|
|||
|
|
if (callback && typeof callback === 'function') {
|
|||
|
|
return callback(null, result)
|
|||
|
|
}
|
|||
|
|
return result
|
|||
|
|
},
|
|||
|
|
function (error) {
|
|||
|
|
if (callback && typeof callback === 'function') {
|
|||
|
|
return callback(error)
|
|||
|
|
}
|
|||
|
|
return Promise.reject(error)
|
|||
|
|
}
|
|||
|
|
)
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* 查询一个应用的信息
|
|||
|
|
* @param {Object} opts - parameters
|
|||
|
|
* @param {string} opts.appId - App Id
|
|||
|
|
* @param {string} regionId - ID of the region
|
|||
|
|
* @param {string} callback - callback
|
|||
|
|
@return {Object} result
|
|||
|
|
* @param app app
|
|||
|
|
*/
|
|||
|
|
|
|||
|
|
describeApp (opts, regionId = this.config.regionId, callback) {
|
|||
|
|
if (typeof regionId === 'function') {
|
|||
|
|
callback = regionId
|
|||
|
|
regionId = this.config.regionId
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if (regionId === undefined || regionId === null) {
|
|||
|
|
throw new Error(
|
|||
|
|
"Missing the required parameter 'regionId' when calling describeApp"
|
|||
|
|
)
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
opts = opts || {}
|
|||
|
|
|
|||
|
|
if (opts.appId === undefined || opts.appId === null) {
|
|||
|
|
throw new Error(
|
|||
|
|
"Missing the required parameter 'opts.appId' when calling describeApp"
|
|||
|
|
)
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
let postBody = null
|
|||
|
|
let queryParams = {}
|
|||
|
|
|
|||
|
|
let pathParams = {
|
|||
|
|
regionId: regionId,
|
|||
|
|
appId: opts.appId
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
let headerParams = {
|
|||
|
|
'User-Agent': 'JdcloudSdkNode/1.0.0 deploy/1.0.0'
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
let contentTypes = ['application/json']
|
|||
|
|
let accepts = ['application/json']
|
|||
|
|
|
|||
|
|
// 扩展自定义头
|
|||
|
|
if (opts['x-extra-header']) {
|
|||
|
|
for (let extraHeader in opts['x-extra-header']) {
|
|||
|
|
headerParams[extraHeader] = opts['x-extra-header'][extraHeader]
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if (Array.isArray(opts['x-extra-header']['content-type'])) {
|
|||
|
|
contentTypes = opts['x-extra-header']['content-type']
|
|||
|
|
} else if (typeof opts['x-extra-header']['content-type'] === 'string') {
|
|||
|
|
contentTypes = opts['x-extra-header']['content-type'].split(',')
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if (Array.isArray(opts['x-extra-header']['accept'])) {
|
|||
|
|
accepts = opts['x-extra-header']['accept']
|
|||
|
|
} else if (typeof opts['x-extra-header']['accept'] === 'string') {
|
|||
|
|
accepts = opts['x-extra-header']['accept'].split(',')
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
let formParams = {}
|
|||
|
|
|
|||
|
|
let returnType = null
|
|||
|
|
|
|||
|
|
this.config.logger(
|
|||
|
|
`call describeApp with params:\npathParams:${JSON.stringify(
|
|||
|
|
pathParams
|
|||
|
|
)},\nqueryParams:${JSON.stringify(
|
|||
|
|
queryParams
|
|||
|
|
)}, \nheaderParams:${JSON.stringify(
|
|||
|
|
headerParams
|
|||
|
|
)}, \nformParams:${JSON.stringify(
|
|||
|
|
formParams
|
|||
|
|
)}, \npostBody:${JSON.stringify(postBody)}`,
|
|||
|
|
'DEBUG'
|
|||
|
|
)
|
|||
|
|
|
|||
|
|
let request = this.makeRequest(
|
|||
|
|
'/regions/{regionId}/app/{appId}',
|
|||
|
|
'GET',
|
|||
|
|
pathParams,
|
|||
|
|
queryParams,
|
|||
|
|
headerParams,
|
|||
|
|
formParams,
|
|||
|
|
postBody,
|
|||
|
|
contentTypes,
|
|||
|
|
accepts,
|
|||
|
|
returnType,
|
|||
|
|
callback
|
|||
|
|
)
|
|||
|
|
|
|||
|
|
return request.then(
|
|||
|
|
function (result) {
|
|||
|
|
if (callback && typeof callback === 'function') {
|
|||
|
|
return callback(null, result)
|
|||
|
|
}
|
|||
|
|
return result
|
|||
|
|
},
|
|||
|
|
function (error) {
|
|||
|
|
if (callback && typeof callback === 'function') {
|
|||
|
|
return callback(error)
|
|||
|
|
}
|
|||
|
|
return Promise.reject(error)
|
|||
|
|
}
|
|||
|
|
)
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* 创建部署任务
|
|||
|
|
* @param {Object} opts - parameters
|
|||
|
|
* @param {string} opts.groupId - 部署组ID,部署组的唯一标识
|
|||
|
|
* @param {string} [opts.desc] - 描述 optional
|
|||
|
|
* @param {integer} opts.deploySource - 部署来源:1url,2云编译,3云存储
|
|||
|
|
* @param {string} [opts.deployCmd] - 部署操作 optional
|
|||
|
|
* @param {integer} [opts.cmdSource] - 1使用输入的操作,2使用程序自带操作 optional
|
|||
|
|
* @param {integer} [opts.cmdType] - 部署操作展示格式:1form,2ymal optional
|
|||
|
|
* @param {integer} [opts.productType] - 项目类型 1tomcat,2 optional
|
|||
|
|
* @param {string} [opts.downloadUrl] - 下载url optional
|
|||
|
|
* @param {string} [opts.md5] - md5 optional
|
|||
|
|
* @param {string} [opts.compileProject] - 云编译项目名 optional
|
|||
|
|
* @param {string} [opts.compileSeries] - 云编译构建序号 optional
|
|||
|
|
* @param {string} [opts.ossSpace] - 云存储空间 optional
|
|||
|
|
* @param {string} [opts.ossDir] - 云存储目录 optional
|
|||
|
|
* @param {integer} [opts.fileType] - 文件类型:1.tar,2.zip,3.tar.gz optional
|
|||
|
|
* @param {string} regionId - ID of the region
|
|||
|
|
* @param {string} callback - callback
|
|||
|
|
@return {Object} result
|
|||
|
|
* @param string deployId 上线单ID
|
|||
|
|
*/
|
|||
|
|
|
|||
|
|
createDeploy (opts, regionId = this.config.regionId, callback) {
|
|||
|
|
if (typeof regionId === 'function') {
|
|||
|
|
callback = regionId
|
|||
|
|
regionId = this.config.regionId
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if (regionId === undefined || regionId === null) {
|
|||
|
|
throw new Error(
|
|||
|
|
"Missing the required parameter 'regionId' when calling createDeploy"
|
|||
|
|
)
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
opts = opts || {}
|
|||
|
|
|
|||
|
|
if (opts.groupId === undefined || opts.groupId === null) {
|
|||
|
|
throw new Error(
|
|||
|
|
"Missing the required parameter 'opts.groupId' when calling createDeploy"
|
|||
|
|
)
|
|||
|
|
}
|
|||
|
|
if (opts.deploySource === undefined || opts.deploySource === null) {
|
|||
|
|
throw new Error(
|
|||
|
|
"Missing the required parameter 'opts.deploySource' when calling createDeploy"
|
|||
|
|
)
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
let postBody = {}
|
|||
|
|
if (opts.groupId !== undefined && opts.groupId !== null) {
|
|||
|
|
postBody['groupId'] = opts.groupId
|
|||
|
|
}
|
|||
|
|
if (opts.desc !== undefined && opts.desc !== null) {
|
|||
|
|
postBody['desc'] = opts.desc
|
|||
|
|
}
|
|||
|
|
if (opts.deploySource !== undefined && opts.deploySource !== null) {
|
|||
|
|
postBody['deploySource'] = opts.deploySource
|
|||
|
|
}
|
|||
|
|
if (opts.deployCmd !== undefined && opts.deployCmd !== null) {
|
|||
|
|
postBody['deployCmd'] = opts.deployCmd
|
|||
|
|
}
|
|||
|
|
if (opts.cmdSource !== undefined && opts.cmdSource !== null) {
|
|||
|
|
postBody['cmdSource'] = opts.cmdSource
|
|||
|
|
}
|
|||
|
|
if (opts.cmdType !== undefined && opts.cmdType !== null) {
|
|||
|
|
postBody['cmdType'] = opts.cmdType
|
|||
|
|
}
|
|||
|
|
if (opts.productType !== undefined && opts.productType !== null) {
|
|||
|
|
postBody['productType'] = opts.productType
|
|||
|
|
}
|
|||
|
|
if (opts.downloadUrl !== undefined && opts.downloadUrl !== null) {
|
|||
|
|
postBody['downloadUrl'] = opts.downloadUrl
|
|||
|
|
}
|
|||
|
|
if (opts.md5 !== undefined && opts.md5 !== null) {
|
|||
|
|
postBody['md5'] = opts.md5
|
|||
|
|
}
|
|||
|
|
if (opts.compileProject !== undefined && opts.compileProject !== null) {
|
|||
|
|
postBody['compileProject'] = opts.compileProject
|
|||
|
|
}
|
|||
|
|
if (opts.compileSeries !== undefined && opts.compileSeries !== null) {
|
|||
|
|
postBody['compileSeries'] = opts.compileSeries
|
|||
|
|
}
|
|||
|
|
if (opts.ossSpace !== undefined && opts.ossSpace !== null) {
|
|||
|
|
postBody['ossSpace'] = opts.ossSpace
|
|||
|
|
}
|
|||
|
|
if (opts.ossDir !== undefined && opts.ossDir !== null) {
|
|||
|
|
postBody['ossDir'] = opts.ossDir
|
|||
|
|
}
|
|||
|
|
if (opts.fileType !== undefined && opts.fileType !== null) {
|
|||
|
|
postBody['fileType'] = opts.fileType
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
let queryParams = {}
|
|||
|
|
|
|||
|
|
let pathParams = {
|
|||
|
|
regionId: regionId
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
let headerParams = {
|
|||
|
|
'User-Agent': 'JdcloudSdkNode/1.0.0 deploy/1.0.0'
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
let contentTypes = ['application/json']
|
|||
|
|
let accepts = ['application/json']
|
|||
|
|
|
|||
|
|
// 扩展自定义头
|
|||
|
|
if (opts['x-extra-header']) {
|
|||
|
|
for (let extraHeader in opts['x-extra-header']) {
|
|||
|
|
headerParams[extraHeader] = opts['x-extra-header'][extraHeader]
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if (Array.isArray(opts['x-extra-header']['content-type'])) {
|
|||
|
|
contentTypes = opts['x-extra-header']['content-type']
|
|||
|
|
} else if (typeof opts['x-extra-header']['content-type'] === 'string') {
|
|||
|
|
contentTypes = opts['x-extra-header']['content-type'].split(',')
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if (Array.isArray(opts['x-extra-header']['accept'])) {
|
|||
|
|
accepts = opts['x-extra-header']['accept']
|
|||
|
|
} else if (typeof opts['x-extra-header']['accept'] === 'string') {
|
|||
|
|
accepts = opts['x-extra-header']['accept'].split(',')
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
let formParams = {}
|
|||
|
|
|
|||
|
|
let returnType = null
|
|||
|
|
|
|||
|
|
this.config.logger(
|
|||
|
|
`call createDeploy with params:\npathParams:${JSON.stringify(
|
|||
|
|
pathParams
|
|||
|
|
)},\nqueryParams:${JSON.stringify(
|
|||
|
|
queryParams
|
|||
|
|
)}, \nheaderParams:${JSON.stringify(
|
|||
|
|
headerParams
|
|||
|
|
)}, \nformParams:${JSON.stringify(
|
|||
|
|
formParams
|
|||
|
|
)}, \npostBody:${JSON.stringify(postBody)}`,
|
|||
|
|
'DEBUG'
|
|||
|
|
)
|
|||
|
|
|
|||
|
|
let request = this.makeRequest(
|
|||
|
|
'/regions/{regionId}/deploy',
|
|||
|
|
'POST',
|
|||
|
|
pathParams,
|
|||
|
|
queryParams,
|
|||
|
|
headerParams,
|
|||
|
|
formParams,
|
|||
|
|
postBody,
|
|||
|
|
contentTypes,
|
|||
|
|
accepts,
|
|||
|
|
returnType,
|
|||
|
|
callback
|
|||
|
|
)
|
|||
|
|
|
|||
|
|
return request.then(
|
|||
|
|
function (result) {
|
|||
|
|
if (callback && typeof callback === 'function') {
|
|||
|
|
return callback(null, result)
|
|||
|
|
}
|
|||
|
|
return result
|
|||
|
|
},
|
|||
|
|
function (error) {
|
|||
|
|
if (callback && typeof callback === 'function') {
|
|||
|
|
return callback(error)
|
|||
|
|
}
|
|||
|
|
return Promise.reject(error)
|
|||
|
|
}
|
|||
|
|
)
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* 查询一个部署任务详情
|
|||
|
|
* @param {Object} opts - parameters
|
|||
|
|
* @param {string} opts.deployId - Deploy Id
|
|||
|
|
* @param {string} regionId - ID of the region
|
|||
|
|
* @param {string} callback - callback
|
|||
|
|
@return {Object} result
|
|||
|
|
* @param deploy deploy
|
|||
|
|
*/
|
|||
|
|
|
|||
|
|
describeDeploy (opts, regionId = this.config.regionId, callback) {
|
|||
|
|
if (typeof regionId === 'function') {
|
|||
|
|
callback = regionId
|
|||
|
|
regionId = this.config.regionId
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if (regionId === undefined || regionId === null) {
|
|||
|
|
throw new Error(
|
|||
|
|
"Missing the required parameter 'regionId' when calling describeDeploy"
|
|||
|
|
)
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
opts = opts || {}
|
|||
|
|
|
|||
|
|
if (opts.deployId === undefined || opts.deployId === null) {
|
|||
|
|
throw new Error(
|
|||
|
|
"Missing the required parameter 'opts.deployId' when calling describeDeploy"
|
|||
|
|
)
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
let postBody = null
|
|||
|
|
let queryParams = {}
|
|||
|
|
|
|||
|
|
let pathParams = {
|
|||
|
|
regionId: regionId,
|
|||
|
|
deployId: opts.deployId
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
let headerParams = {
|
|||
|
|
'User-Agent': 'JdcloudSdkNode/1.0.0 deploy/1.0.0'
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
let contentTypes = ['application/json']
|
|||
|
|
let accepts = ['application/json']
|
|||
|
|
|
|||
|
|
// 扩展自定义头
|
|||
|
|
if (opts['x-extra-header']) {
|
|||
|
|
for (let extraHeader in opts['x-extra-header']) {
|
|||
|
|
headerParams[extraHeader] = opts['x-extra-header'][extraHeader]
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if (Array.isArray(opts['x-extra-header']['content-type'])) {
|
|||
|
|
contentTypes = opts['x-extra-header']['content-type']
|
|||
|
|
} else if (typeof opts['x-extra-header']['content-type'] === 'string') {
|
|||
|
|
contentTypes = opts['x-extra-header']['content-type'].split(',')
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if (Array.isArray(opts['x-extra-header']['accept'])) {
|
|||
|
|
accepts = opts['x-extra-header']['accept']
|
|||
|
|
} else if (typeof opts['x-extra-header']['accept'] === 'string') {
|
|||
|
|
accepts = opts['x-extra-header']['accept'].split(',')
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
let formParams = {}
|
|||
|
|
|
|||
|
|
let returnType = null
|
|||
|
|
|
|||
|
|
this.config.logger(
|
|||
|
|
`call describeDeploy with params:\npathParams:${JSON.stringify(
|
|||
|
|
pathParams
|
|||
|
|
)},\nqueryParams:${JSON.stringify(
|
|||
|
|
queryParams
|
|||
|
|
)}, \nheaderParams:${JSON.stringify(
|
|||
|
|
headerParams
|
|||
|
|
)}, \nformParams:${JSON.stringify(
|
|||
|
|
formParams
|
|||
|
|
)}, \npostBody:${JSON.stringify(postBody)}`,
|
|||
|
|
'DEBUG'
|
|||
|
|
)
|
|||
|
|
|
|||
|
|
let request = this.makeRequest(
|
|||
|
|
'/regions/{regionId}/deploy/{deployId}',
|
|||
|
|
'GET',
|
|||
|
|
pathParams,
|
|||
|
|
queryParams,
|
|||
|
|
headerParams,
|
|||
|
|
formParams,
|
|||
|
|
postBody,
|
|||
|
|
contentTypes,
|
|||
|
|
accepts,
|
|||
|
|
returnType,
|
|||
|
|
callback
|
|||
|
|
)
|
|||
|
|
|
|||
|
|
return request.then(
|
|||
|
|
function (result) {
|
|||
|
|
if (callback && typeof callback === 'function') {
|
|||
|
|
return callback(null, result)
|
|||
|
|
}
|
|||
|
|
return result
|
|||
|
|
},
|
|||
|
|
function (error) {
|
|||
|
|
if (callback && typeof callback === 'function') {
|
|||
|
|
return callback(error)
|
|||
|
|
}
|
|||
|
|
return Promise.reject(error)
|
|||
|
|
}
|
|||
|
|
)
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* 批量查询部署组的信息,此接口支持分页查询,默认每页20条
|
|||
|
|
* @param {Object} opts - parameters
|
|||
|
|
* @param {integer} [opts.pageNumber] - 页码;默认为1 optional
|
|||
|
|
* @param {integer} [opts.pageSize] - 分页大小;默认为20;取值范围[10, 100] optional
|
|||
|
|
* @param {filter} [opts.filters] - appId - 应用ID,精确匹配
|
|||
|
|
groupId - 部署组ID,精确匹配
|
|||
|
|
groupName - 部署组名,精确匹配
|
|||
|
|
optional
|
|||
|
|
* @param {string} regionId - ID of the region
|
|||
|
|
* @param {string} callback - callback
|
|||
|
|
@return {Object} result
|
|||
|
|
* @param group groups
|
|||
|
|
* @param number totalCount
|
|||
|
|
*/
|
|||
|
|
|
|||
|
|
describeGroups (opts, regionId = this.config.regionId, callback) {
|
|||
|
|
if (typeof regionId === 'function') {
|
|||
|
|
callback = regionId
|
|||
|
|
regionId = this.config.regionId
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if (regionId === undefined || regionId === null) {
|
|||
|
|
throw new Error(
|
|||
|
|
"Missing the required parameter 'regionId' when calling describeGroups"
|
|||
|
|
)
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
opts = opts || {}
|
|||
|
|
|
|||
|
|
let postBody = null
|
|||
|
|
let queryParams = {}
|
|||
|
|
if (opts.pageNumber !== undefined && opts.pageNumber !== null) {
|
|||
|
|
queryParams['pageNumber'] = opts.pageNumber
|
|||
|
|
}
|
|||
|
|
if (opts.pageSize !== undefined && opts.pageSize !== null) {
|
|||
|
|
queryParams['pageSize'] = opts.pageSize
|
|||
|
|
}
|
|||
|
|
Object.assign(queryParams, this.buildFilterParam(opts.filters, 'filters'))
|
|||
|
|
|
|||
|
|
let pathParams = {
|
|||
|
|
regionId: regionId
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
let headerParams = {
|
|||
|
|
'User-Agent': 'JdcloudSdkNode/1.0.0 deploy/1.0.0'
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
let contentTypes = ['application/json']
|
|||
|
|
let accepts = ['application/json']
|
|||
|
|
|
|||
|
|
// 扩展自定义头
|
|||
|
|
if (opts['x-extra-header']) {
|
|||
|
|
for (let extraHeader in opts['x-extra-header']) {
|
|||
|
|
headerParams[extraHeader] = opts['x-extra-header'][extraHeader]
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if (Array.isArray(opts['x-extra-header']['content-type'])) {
|
|||
|
|
contentTypes = opts['x-extra-header']['content-type']
|
|||
|
|
} else if (typeof opts['x-extra-header']['content-type'] === 'string') {
|
|||
|
|
contentTypes = opts['x-extra-header']['content-type'].split(',')
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if (Array.isArray(opts['x-extra-header']['accept'])) {
|
|||
|
|
accepts = opts['x-extra-header']['accept']
|
|||
|
|
} else if (typeof opts['x-extra-header']['accept'] === 'string') {
|
|||
|
|
accepts = opts['x-extra-header']['accept'].split(',')
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
let formParams = {}
|
|||
|
|
|
|||
|
|
let returnType = null
|
|||
|
|
|
|||
|
|
this.config.logger(
|
|||
|
|
`call describeGroups with params:\npathParams:${JSON.stringify(
|
|||
|
|
pathParams
|
|||
|
|
)},\nqueryParams:${JSON.stringify(
|
|||
|
|
queryParams
|
|||
|
|
)}, \nheaderParams:${JSON.stringify(
|
|||
|
|
headerParams
|
|||
|
|
)}, \nformParams:${JSON.stringify(
|
|||
|
|
formParams
|
|||
|
|
)}, \npostBody:${JSON.stringify(postBody)}`,
|
|||
|
|
'DEBUG'
|
|||
|
|
)
|
|||
|
|
|
|||
|
|
let request = this.makeRequest(
|
|||
|
|
'/regions/{regionId}/groups',
|
|||
|
|
'GET',
|
|||
|
|
pathParams,
|
|||
|
|
queryParams,
|
|||
|
|
headerParams,
|
|||
|
|
formParams,
|
|||
|
|
postBody,
|
|||
|
|
contentTypes,
|
|||
|
|
accepts,
|
|||
|
|
returnType,
|
|||
|
|
callback
|
|||
|
|
)
|
|||
|
|
|
|||
|
|
return request.then(
|
|||
|
|
function (result) {
|
|||
|
|
if (callback && typeof callback === 'function') {
|
|||
|
|
return callback(null, result)
|
|||
|
|
}
|
|||
|
|
return result
|
|||
|
|
},
|
|||
|
|
function (error) {
|
|||
|
|
if (callback && typeof callback === 'function') {
|
|||
|
|
return callback(error)
|
|||
|
|
}
|
|||
|
|
return Promise.reject(error)
|
|||
|
|
}
|
|||
|
|
)
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* 查询一个部署组的信息
|
|||
|
|
* @param {Object} opts - parameters
|
|||
|
|
* @param {string} opts.groupId - Group Id
|
|||
|
|
* @param {string} regionId - ID of the region
|
|||
|
|
* @param {string} callback - callback
|
|||
|
|
@return {Object} result
|
|||
|
|
* @param group group
|
|||
|
|
*/
|
|||
|
|
|
|||
|
|
describeGroup (opts, regionId = this.config.regionId, callback) {
|
|||
|
|
if (typeof regionId === 'function') {
|
|||
|
|
callback = regionId
|
|||
|
|
regionId = this.config.regionId
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if (regionId === undefined || regionId === null) {
|
|||
|
|
throw new Error(
|
|||
|
|
"Missing the required parameter 'regionId' when calling describeGroup"
|
|||
|
|
)
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
opts = opts || {}
|
|||
|
|
|
|||
|
|
if (opts.groupId === undefined || opts.groupId === null) {
|
|||
|
|
throw new Error(
|
|||
|
|
"Missing the required parameter 'opts.groupId' when calling describeGroup"
|
|||
|
|
)
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
let postBody = null
|
|||
|
|
let queryParams = {}
|
|||
|
|
|
|||
|
|
let pathParams = {
|
|||
|
|
regionId: regionId,
|
|||
|
|
groupId: opts.groupId
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
let headerParams = {
|
|||
|
|
'User-Agent': 'JdcloudSdkNode/1.0.0 deploy/1.0.0'
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
let contentTypes = ['application/json']
|
|||
|
|
let accepts = ['application/json']
|
|||
|
|
|
|||
|
|
// 扩展自定义头
|
|||
|
|
if (opts['x-extra-header']) {
|
|||
|
|
for (let extraHeader in opts['x-extra-header']) {
|
|||
|
|
headerParams[extraHeader] = opts['x-extra-header'][extraHeader]
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if (Array.isArray(opts['x-extra-header']['content-type'])) {
|
|||
|
|
contentTypes = opts['x-extra-header']['content-type']
|
|||
|
|
} else if (typeof opts['x-extra-header']['content-type'] === 'string') {
|
|||
|
|
contentTypes = opts['x-extra-header']['content-type'].split(',')
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if (Array.isArray(opts['x-extra-header']['accept'])) {
|
|||
|
|
accepts = opts['x-extra-header']['accept']
|
|||
|
|
} else if (typeof opts['x-extra-header']['accept'] === 'string') {
|
|||
|
|
accepts = opts['x-extra-header']['accept'].split(',')
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
let formParams = {}
|
|||
|
|
|
|||
|
|
let returnType = null
|
|||
|
|
|
|||
|
|
this.config.logger(
|
|||
|
|
`call describeGroup with params:\npathParams:${JSON.stringify(
|
|||
|
|
pathParams
|
|||
|
|
)},\nqueryParams:${JSON.stringify(
|
|||
|
|
queryParams
|
|||
|
|
)}, \nheaderParams:${JSON.stringify(
|
|||
|
|
headerParams
|
|||
|
|
)}, \nformParams:${JSON.stringify(
|
|||
|
|
formParams
|
|||
|
|
)}, \npostBody:${JSON.stringify(postBody)}`,
|
|||
|
|
'DEBUG'
|
|||
|
|
)
|
|||
|
|
|
|||
|
|
let request = this.makeRequest(
|
|||
|
|
'/regions/{regionId}/group/{groupId}',
|
|||
|
|
'GET',
|
|||
|
|
pathParams,
|
|||
|
|
queryParams,
|
|||
|
|
headerParams,
|
|||
|
|
formParams,
|
|||
|
|
postBody,
|
|||
|
|
contentTypes,
|
|||
|
|
accepts,
|
|||
|
|
returnType,
|
|||
|
|
callback
|
|||
|
|
)
|
|||
|
|
|
|||
|
|
return request.then(
|
|||
|
|
function (result) {
|
|||
|
|
if (callback && typeof callback === 'function') {
|
|||
|
|
return callback(null, result)
|
|||
|
|
}
|
|||
|
|
return result
|
|||
|
|
},
|
|||
|
|
function (error) {
|
|||
|
|
if (callback && typeof callback === 'function') {
|
|||
|
|
return callback(error)
|
|||
|
|
}
|
|||
|
|
return Promise.reject(error)
|
|||
|
|
}
|
|||
|
|
)
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
module.exports = JDCloud.DEPLOY
|