# frozen_string_literal: true
# Copyright (c) 2017-2018 THL A29 Limited, a Tencent company. All Rights Reserved.
#
# 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.
module TencentCloud
module Tic
module V20201117
# ApplyStack请求参数结构体
class ApplyStackRequest < TencentCloud::Common::AbstractModel
# @param StackId: 资源栈ID
# @type StackId: String
# @param VersionId: 待执行apply事件的版本ID
# @type VersionId: String
attr_accessor :StackId, :VersionId
def initialize(stackid=nil, versionid=nil)
@StackId = stackid
@VersionId = versionid
end
def deserialize(params)
@StackId = params['StackId']
@VersionId = params['VersionId']
end
end
# ApplyStack返回参数结构体
class ApplyStackResponse < TencentCloud::Common::AbstractModel
# @param EventId: 执行的事件ID
# @type EventId: String
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :EventId, :RequestId
def initialize(eventid=nil, requestid=nil)
@EventId = eventid
@RequestId = requestid
end
def deserialize(params)
@EventId = params['EventId']
@RequestId = params['RequestId']
end
end
# CreateStack请求参数结构体
class CreateStackRequest < TencentCloud::Common::AbstractModel
# @param StackName: 资源栈名称,不得超过60个字符
# @type StackName: String
# @param StackRegion: 资源栈所在地域
# @type StackRegion: String
# @param TemplateUrl: HCL模板URL,⽬前仅限 COS URL, ⽂件为zip压缩格式
# @type TemplateUrl: String
# @param Description: 资源栈描述,不得超过200个字符
# @type Description: String
attr_accessor :StackName, :StackRegion, :TemplateUrl, :Description
def initialize(stackname=nil, stackregion=nil, templateurl=nil, description=nil)
@StackName = stackname
@StackRegion = stackregion
@TemplateUrl = templateurl
@Description = description
end
def deserialize(params)
@StackName = params['StackName']
@StackRegion = params['StackRegion']
@TemplateUrl = params['TemplateUrl']
@Description = params['Description']
end
end
# CreateStack返回参数结构体
class CreateStackResponse < TencentCloud::Common::AbstractModel
# @param StackId: 创建得到的资源栈ID
# @type StackId: String
# @param VersionId: 资源栈版本ID
# @type VersionId: String
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :StackId, :VersionId, :RequestId
def initialize(stackid=nil, versionid=nil, requestid=nil)
@StackId = stackid
@VersionId = versionid
@RequestId = requestid
end
def deserialize(params)
@StackId = params['StackId']
@VersionId = params['VersionId']
@RequestId = params['RequestId']
end
end
# CreateStackVersion请求参数结构体
class CreateStackVersionRequest < TencentCloud::Common::AbstractModel
# @param StackId: 待增加版本的资源栈ID
# @type StackId: String
# @param TemplateUrl: 模板 URL,⽬前仅限 COS URL, ⽂件为zip压缩格式
# @type TemplateUrl: String
# @param VersionName: 版本名称,不得超过60个字符
# @type VersionName: String
# @param Description: 版本描述,不得超过200个字符
# @type Description: String
attr_accessor :StackId, :TemplateUrl, :VersionName, :Description
def initialize(stackid=nil, templateurl=nil, versionname=nil, description=nil)
@StackId = stackid
@TemplateUrl = templateurl
@VersionName = versionname
@Description = description
end
def deserialize(params)
@StackId = params['StackId']
@TemplateUrl = params['TemplateUrl']
@VersionName = params['VersionName']
@Description = params['Description']
end
end
# CreateStackVersion返回参数结构体
class CreateStackVersionResponse < TencentCloud::Common::AbstractModel
# @param VersionId: 新创建的版本ID
# @type VersionId: String
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :VersionId, :RequestId
def initialize(versionid=nil, requestid=nil)
@VersionId = versionid
@RequestId = requestid
end
def deserialize(params)
@VersionId = params['VersionId']
@RequestId = params['RequestId']
end
end
# DeleteStack请求参数结构体
class DeleteStackRequest < TencentCloud::Common::AbstractModel
# @param StackId: 待删除的资源栈ID
# @type StackId: String
attr_accessor :StackId
def initialize(stackid=nil)
@StackId = stackid
end
def deserialize(params)
@StackId = params['StackId']
end
end
# DeleteStack返回参数结构体
class DeleteStackResponse < TencentCloud::Common::AbstractModel
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :RequestId
def initialize(requestid=nil)
@RequestId = requestid
end
def deserialize(params)
@RequestId = params['RequestId']
end
end
# DeleteStackVersion请求参数结构体
class DeleteStackVersionRequest < TencentCloud::Common::AbstractModel
# @param VersionId: 待删除的版本ID
# @type VersionId: String
attr_accessor :VersionId
def initialize(versionid=nil)
@VersionId = versionid
end
def deserialize(params)
@VersionId = params['VersionId']
end
end
# DeleteStackVersion返回参数结构体
class DeleteStackVersionResponse < TencentCloud::Common::AbstractModel
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :RequestId
def initialize(requestid=nil)
@RequestId = requestid
end
def deserialize(params)
@RequestId = params['RequestId']
end
end
# DescribeStackEvent请求参数结构体
class DescribeStackEventRequest < TencentCloud::Common::AbstractModel
# @param EventId: 事件ID
# @type EventId: String
attr_accessor :EventId
def initialize(eventid=nil)
@EventId = eventid
end
def deserialize(params)
@EventId = params['EventId']
end
end
# DescribeStackEvent返回参数结构体
class DescribeStackEventResponse < TencentCloud::Common::AbstractModel
# @param EventId: 事件ID
# @type EventId: String
# @param VersionId: 版本ID
# @type VersionId: String
# @param StackId: 资源栈ID
# @type StackId: String
# @param Type: 事件类型
# @type Type: String
# @param Status: 事件状态
# @type Status: String
# @param EventMessage: 状态信息
# @type EventMessage: String
# @param CreateTime: 创建时间
# @type CreateTime: String
# @param ConsoleLog: 控制台输出文本
# @type ConsoleLog: String
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :EventId, :VersionId, :StackId, :Type, :Status, :EventMessage, :CreateTime, :ConsoleLog, :RequestId
def initialize(eventid=nil, versionid=nil, stackid=nil, type=nil, status=nil, eventmessage=nil, createtime=nil, consolelog=nil, requestid=nil)
@EventId = eventid
@VersionId = versionid
@StackId = stackid
@Type = type
@Status = status
@EventMessage = eventmessage
@CreateTime = createtime
@ConsoleLog = consolelog
@RequestId = requestid
end
def deserialize(params)
@EventId = params['EventId']
@VersionId = params['VersionId']
@StackId = params['StackId']
@Type = params['Type']
@Status = params['Status']
@EventMessage = params['EventMessage']
@CreateTime = params['CreateTime']
@ConsoleLog = params['ConsoleLog']
@RequestId = params['RequestId']
end
end
# DescribeStackEvents请求参数结构体
class DescribeStackEventsRequest < TencentCloud::Common::AbstractModel
# @param EventIds: 按照⼀个或者多个事件ID查询
# @type EventIds: Array
# @param Filters:
**VersionId**
# 按照【**版本ID**】过滤,VersionId形如 `ver-kg8hn58h`
# 类型:string
# **StackId**
# 按照【**资源栈ID**】过滤,StackId形如 `stk-hz5vn3te`
# 类型:string
# **Type**
# 按照【**事件类型**】过滤,Type 形如 plan, apply, destroy
# 类型:string
# **Status**
# 按照【**事件状态**】过滤,Status形如 queueing, running, success, failed
# 类型:string
# @type Filters: Array
# @param Offset: 偏移量,默认为0。关于Offset的更进一步介绍请参考 API [简介](https://cloud.tencent.com/document/api/213/15688)中的相关小节
# @type Offset: Integer
# @param Limit: 返回数量,默认为20,最大值为100。关于Limit的更进一步介绍请参考 API [简介](https://cloud.tencent.com/document/api/213/15688)中的相关小节
# @type Limit: Integer
attr_accessor :EventIds, :Filters, :Offset, :Limit
def initialize(eventids=nil, filters=nil, offset=nil, limit=nil)
@EventIds = eventids
@Filters = filters
@Offset = offset
@Limit = limit
end
def deserialize(params)
@EventIds = params['EventIds']
unless params['Filters'].nil?
@Filters = []
params['Filters'].each do |i|
filter_tmp = Filter.new
filter_tmp.deserialize(i)
@Filters << filter_tmp
end
end
@Offset = params['Offset']
@Limit = params['Limit']
end
end
# DescribeStackEvents返回参数结构体
class DescribeStackEventsResponse < TencentCloud::Common::AbstractModel
# @param TotalCount: 符合条件的事件数量
# @type TotalCount: Integer
# @param Events: 事件详细信息列表
# @type Events: Array
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :TotalCount, :Events, :RequestId
def initialize(totalcount=nil, events=nil, requestid=nil)
@TotalCount = totalcount
@Events = events
@RequestId = requestid
end
def deserialize(params)
@TotalCount = params['TotalCount']
unless params['Events'].nil?
@Events = []
params['Events'].each do |i|
eventinfo_tmp = EventInfo.new
eventinfo_tmp.deserialize(i)
@Events << eventinfo_tmp
end
end
@RequestId = params['RequestId']
end
end
# DescribeStackVersions请求参数结构体
class DescribeStackVersionsRequest < TencentCloud::Common::AbstractModel
# @param VersionIds: 按照⼀个或者多个版本ID查询
# @type VersionIds: Array
# @param Offset: 偏移量,默认为0。关于Offset的更进一步介绍请参考 API [简介](https://cloud.tencent.com/document/api/213/15688)中的相关小节
# @type Offset: Integer
# @param Limit: 返回数量,默认为20,最大值为100。关于Limit的更进一步介绍请参考 API [简介](https://cloud.tencent.com/document/api/213/15688)中的相关小节
# @type Limit: Integer
# @param Filters: **Name**
# 按照【**版本名称**】进行过滤
# 类型:string
# **Status**
# 按照【**版本状态**】过滤,形如`VERSION_EDITING`,`PLAN_IN_PROGRESS`等
# 类型:string
# **StackId**
# 按照版本所属的【**资源栈ID**】进行过滤,形如`stk-xxxxxx`
# 类型:string
# @type Filters: Array
attr_accessor :VersionIds, :Offset, :Limit, :Filters
def initialize(versionids=nil, offset=nil, limit=nil, filters=nil)
@VersionIds = versionids
@Offset = offset
@Limit = limit
@Filters = filters
end
def deserialize(params)
@VersionIds = params['VersionIds']
@Offset = params['Offset']
@Limit = params['Limit']
unless params['Filters'].nil?
@Filters = []
params['Filters'].each do |i|
filter_tmp = Filter.new
filter_tmp.deserialize(i)
@Filters << filter_tmp
end
end
end
end
# DescribeStackVersions返回参数结构体
class DescribeStackVersionsResponse < TencentCloud::Common::AbstractModel
# @param TotalCount: 符合条件的版本数量
# @type TotalCount: Integer
# @param Versions: 版本详细信息列表
# @type Versions: Array
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :TotalCount, :Versions, :RequestId
def initialize(totalcount=nil, versions=nil, requestid=nil)
@TotalCount = totalcount
@Versions = versions
@RequestId = requestid
end
def deserialize(params)
@TotalCount = params['TotalCount']
unless params['Versions'].nil?
@Versions = []
params['Versions'].each do |i|
versioninfo_tmp = VersionInfo.new
versioninfo_tmp.deserialize(i)
@Versions << versioninfo_tmp
end
end
@RequestId = params['RequestId']
end
end
# DescribeStacks请求参数结构体
class DescribeStacksRequest < TencentCloud::Common::AbstractModel
# @param StackIds: 按照⼀个或者多个资源栈ID查询
# @type StackIds: Array
# @param Offset: 偏移量,默认为0。关于Offset的更进一步介绍请参考 API [简介](https://cloud.tencent.com/document/api/213/15688)中的相关小节。
# @type Offset: Integer
# @param Limit: 返回数量,默认为20,最大值为100。关于Limit的更进一步介绍请参考 API [简介](https://cloud.tencent.com/document/api/213/15688)中的相关小节。
# @type Limit: Integer
attr_accessor :StackIds, :Offset, :Limit
def initialize(stackids=nil, offset=nil, limit=nil)
@StackIds = stackids
@Offset = offset
@Limit = limit
end
def deserialize(params)
@StackIds = params['StackIds']
@Offset = params['Offset']
@Limit = params['Limit']
end
end
# DescribeStacks返回参数结构体
class DescribeStacksResponse < TencentCloud::Common::AbstractModel
# @param TotalCount: 符合条件的资源栈数量
# @type TotalCount: Integer
# @param Stacks: 资源栈详细信息列表
# @type Stacks: Array
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :TotalCount, :Stacks, :RequestId
def initialize(totalcount=nil, stacks=nil, requestid=nil)
@TotalCount = totalcount
@Stacks = stacks
@RequestId = requestid
end
def deserialize(params)
@TotalCount = params['TotalCount']
unless params['Stacks'].nil?
@Stacks = []
params['Stacks'].each do |i|
stackinfo_tmp = StackInfo.new
stackinfo_tmp.deserialize(i)
@Stacks << stackinfo_tmp
end
end
@RequestId = params['RequestId']
end
end
# DestroyStack请求参数结构体
class DestroyStackRequest < TencentCloud::Common::AbstractModel
# @param StackId: 资源栈ID
# @type StackId: String
# @param VersionId: 待执行destroy事件的版本ID
# @type VersionId: String
attr_accessor :StackId, :VersionId
def initialize(stackid=nil, versionid=nil)
@StackId = stackid
@VersionId = versionid
end
def deserialize(params)
@StackId = params['StackId']
@VersionId = params['VersionId']
end
end
# DestroyStack返回参数结构体
class DestroyStackResponse < TencentCloud::Common::AbstractModel
# @param EventId: 事件ID
# @type EventId: String
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :EventId, :RequestId
def initialize(eventid=nil, requestid=nil)
@EventId = eventid
@RequestId = requestid
end
def deserialize(params)
@EventId = params['EventId']
@RequestId = params['RequestId']
end
end
# 事件详情
class EventInfo < TencentCloud::Common::AbstractModel
# @param EventId: 事件ID
# @type EventId: String
# @param VersionId: 版本ID
# @type VersionId: String
# @param StackId: 资源栈ID
# @type StackId: String
# @param Type: 事件类型
# @type Type: String
# @param Status: 版本状态
# @type Status: String
# @param Message: 状态信息
# @type Message: String
# @param CreateTime: 创建时间
# @type CreateTime: String
attr_accessor :EventId, :VersionId, :StackId, :Type, :Status, :Message, :CreateTime
def initialize(eventid=nil, versionid=nil, stackid=nil, type=nil, status=nil, message=nil, createtime=nil)
@EventId = eventid
@VersionId = versionid
@StackId = stackid
@Type = type
@Status = status
@Message = message
@CreateTime = createtime
end
def deserialize(params)
@EventId = params['EventId']
@VersionId = params['VersionId']
@StackId = params['StackId']
@Type = params['Type']
@Status = params['Status']
@Message = params['Message']
@CreateTime = params['CreateTime']
end
end
# 查询过滤条件
class Filter < TencentCloud::Common::AbstractModel
# @param Name: 条件名字
# @type Name: String
# @param Values: 匹配的值,可以有多个
# @type Values: Array
attr_accessor :Name, :Values
def initialize(name=nil, values=nil)
@Name = name
@Values = values
end
def deserialize(params)
@Name = params['Name']
@Values = params['Values']
end
end
# PlanStack请求参数结构体
class PlanStackRequest < TencentCloud::Common::AbstractModel
# @param StackId: 资源栈ID
# @type StackId: String
# @param VersionId: 待执行plan事件的版本ID
# @type VersionId: String
attr_accessor :StackId, :VersionId
def initialize(stackid=nil, versionid=nil)
@StackId = stackid
@VersionId = versionid
end
def deserialize(params)
@StackId = params['StackId']
@VersionId = params['VersionId']
end
end
# PlanStack返回参数结构体
class PlanStackResponse < TencentCloud::Common::AbstractModel
# @param EventId: 执行的事件ID
# @type EventId: String
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :EventId, :RequestId
def initialize(eventid=nil, requestid=nil)
@EventId = eventid
@RequestId = requestid
end
def deserialize(params)
@EventId = params['EventId']
@RequestId = params['RequestId']
end
end
# 资源栈信息
class StackInfo < TencentCloud::Common::AbstractModel
# @param StackId: 资源栈ID
# @type StackId: String
# @param StackName: 资源栈名称
# @type StackName: String
# @param Description: 资源栈描述
# @type Description: String
# @param Region: 所处地域
# @type Region: String
# @param Status: 资源栈状态
# @type Status: String
# @param CreateTime: 创建时间
# @type CreateTime: String
attr_accessor :StackId, :StackName, :Description, :Region, :Status, :CreateTime
def initialize(stackid=nil, stackname=nil, description=nil, region=nil, status=nil, createtime=nil)
@StackId = stackid
@StackName = stackname
@Description = description
@Region = region
@Status = status
@CreateTime = createtime
end
def deserialize(params)
@StackId = params['StackId']
@StackName = params['StackName']
@Description = params['Description']
@Region = params['Region']
@Status = params['Status']
@CreateTime = params['CreateTime']
end
end
# UpdateStack请求参数结构体
class UpdateStackRequest < TencentCloud::Common::AbstractModel
# @param StackId: 待更新的资源栈ID
# @type StackId: String
# @param StackName: 资源栈名称,不得超过60个字符
# @type StackName: String
# @param Description: 资源栈描述,不得超过200个字符
# @type Description: String
attr_accessor :StackId, :StackName, :Description
def initialize(stackid=nil, stackname=nil, description=nil)
@StackId = stackid
@StackName = stackname
@Description = description
end
def deserialize(params)
@StackId = params['StackId']
@StackName = params['StackName']
@Description = params['Description']
end
end
# UpdateStack返回参数结构体
class UpdateStackResponse < TencentCloud::Common::AbstractModel
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :RequestId
def initialize(requestid=nil)
@RequestId = requestid
end
def deserialize(params)
@RequestId = params['RequestId']
end
end
# UpdateStackVersion请求参数结构体
class UpdateStackVersionRequest < TencentCloud::Common::AbstractModel
# @param VersionId: 待更新的版本ID
# @type VersionId: String
# @param TemplateUrl: 模板 URL,⽬前仅限 COS URL, ⽂件为zip压缩格式
# @type TemplateUrl: String
# @param VersionName: 版本名称,不得超过60个字符
# @type VersionName: String
# @param Description: 版本描述,不得超过200个字符
# @type Description: String
attr_accessor :VersionId, :TemplateUrl, :VersionName, :Description
def initialize(versionid=nil, templateurl=nil, versionname=nil, description=nil)
@VersionId = versionid
@TemplateUrl = templateurl
@VersionName = versionname
@Description = description
end
def deserialize(params)
@VersionId = params['VersionId']
@TemplateUrl = params['TemplateUrl']
@VersionName = params['VersionName']
@Description = params['Description']
end
end
# UpdateStackVersion返回参数结构体
class UpdateStackVersionResponse < TencentCloud::Common::AbstractModel
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :RequestId
def initialize(requestid=nil)
@RequestId = requestid
end
def deserialize(params)
@RequestId = params['RequestId']
end
end
# 版本信息
class VersionInfo < TencentCloud::Common::AbstractModel
# @param VersionId: 版本ID
# @type VersionId: String
# @param VersionName: 版本名称
# @type VersionName: String
# @param Description: 版本描述
# @type Description: String
# @param StackId: 资源栈ID
# @type StackId: String
# @param Status: 版本状态
# @type Status: String
# @param CreateTime: 创建时间
# @type CreateTime: String
attr_accessor :VersionId, :VersionName, :Description, :StackId, :Status, :CreateTime
def initialize(versionid=nil, versionname=nil, description=nil, stackid=nil, status=nil, createtime=nil)
@VersionId = versionid
@VersionName = versionname
@Description = description
@StackId = stackid
@Status = status
@CreateTime = createtime
end
def deserialize(params)
@VersionId = params['VersionId']
@VersionName = params['VersionName']
@Description = params['Description']
@StackId = params['StackId']
@Status = params['Status']
@CreateTime = params['CreateTime']
end
end
end
end
end