# 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 Tse module V20201207 # 服务治理引擎绑定的kubernetes信息 class BoundK8SInfo < TencentCloud::Common::AbstractModel # @param BoundClusterId: 绑定的kubernetes集群ID # @type BoundClusterId: String # @param BoundClusterType: 绑定的kubernetes的集群类型,分tke和eks两种 # 注意:此字段可能返回 null,表示取不到有效值。 # @type BoundClusterType: String # @param SyncMode: 服务同步模式,all为全量同步,demand为按需同步 # 注意:此字段可能返回 null,表示取不到有效值。 # @type SyncMode: String attr_accessor :BoundClusterId, :BoundClusterType, :SyncMode def initialize(boundclusterid=nil, boundclustertype=nil, syncmode=nil) @BoundClusterId = boundclusterid @BoundClusterType = boundclustertype @SyncMode = syncmode end def deserialize(params) @BoundClusterId = params['BoundClusterId'] @BoundClusterType = params['BoundClusterType'] @SyncMode = params['SyncMode'] end end # DescribeSREInstanceAccessAddress请求参数结构体 class DescribeSREInstanceAccessAddressRequest < TencentCloud::Common::AbstractModel # @param InstanceId: 注册引擎实例Id # @type InstanceId: String # @param VpcId: VPC ID # @type VpcId: String # @param SubnetId: 子网ID # @type SubnetId: String attr_accessor :InstanceId, :VpcId, :SubnetId def initialize(instanceid=nil, vpcid=nil, subnetid=nil) @InstanceId = instanceid @VpcId = vpcid @SubnetId = subnetid end def deserialize(params) @InstanceId = params['InstanceId'] @VpcId = params['VpcId'] @SubnetId = params['SubnetId'] end end # DescribeSREInstanceAccessAddress返回参数结构体 class DescribeSREInstanceAccessAddressResponse < TencentCloud::Common::AbstractModel # @param IntranetAddress: 内网访问地址 # @type IntranetAddress: String # @param InternetAddress: 公网访问地址 # @type InternetAddress: String # @param EnvAddressInfos: apollo多环境公网ip # @type EnvAddressInfos: Array # @param ConsoleInternetAddress: 控制台公网访问地址 # 注意:此字段可能返回 null,表示取不到有效值。 # @type ConsoleInternetAddress: String # @param ConsoleIntranetAddress: 控制台内网访问地址 # 注意:此字段可能返回 null,表示取不到有效值。 # @type ConsoleIntranetAddress: String # @param InternetBandWidth: 客户端公网带宽 # 注意:此字段可能返回 null,表示取不到有效值。 # @type InternetBandWidth: Integer # @param ConsoleInternetBandWidth: 控制台公网带宽 # 注意:此字段可能返回 null,表示取不到有效值。 # @type ConsoleInternetBandWidth: Integer # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :IntranetAddress, :InternetAddress, :EnvAddressInfos, :ConsoleInternetAddress, :ConsoleIntranetAddress, :InternetBandWidth, :ConsoleInternetBandWidth, :RequestId def initialize(intranetaddress=nil, internetaddress=nil, envaddressinfos=nil, consoleinternetaddress=nil, consoleintranetaddress=nil, internetbandwidth=nil, consoleinternetbandwidth=nil, requestid=nil) @IntranetAddress = intranetaddress @InternetAddress = internetaddress @EnvAddressInfos = envaddressinfos @ConsoleInternetAddress = consoleinternetaddress @ConsoleIntranetAddress = consoleintranetaddress @InternetBandWidth = internetbandwidth @ConsoleInternetBandWidth = consoleinternetbandwidth @RequestId = requestid end def deserialize(params) @IntranetAddress = params['IntranetAddress'] @InternetAddress = params['InternetAddress'] unless params['EnvAddressInfos'].nil? @EnvAddressInfos = [] params['EnvAddressInfos'].each do |i| envaddressinfo_tmp = EnvAddressInfo.new envaddressinfo_tmp.deserialize(i) @EnvAddressInfos << envaddressinfo_tmp end end @ConsoleInternetAddress = params['ConsoleInternetAddress'] @ConsoleIntranetAddress = params['ConsoleIntranetAddress'] @InternetBandWidth = params['InternetBandWidth'] @ConsoleInternetBandWidth = params['ConsoleInternetBandWidth'] @RequestId = params['RequestId'] end end # DescribeSREInstances请求参数结构体 class DescribeSREInstancesRequest < TencentCloud::Common::AbstractModel # @param Filters: 请求过滤参数 # @type Filters: Array # @param Limit: 翻页单页查询限制数量[0,1000], 默认值0 # @type Limit: Integer # @param Offset: 翻页单页偏移量,默认值0 # @type Offset: Integer # @param QueryType: 查询类型 # @type QueryType: String # @param QuerySource: 调用方来源 # @type QuerySource: String attr_accessor :Filters, :Limit, :Offset, :QueryType, :QuerySource def initialize(filters=nil, limit=nil, offset=nil, querytype=nil, querysource=nil) @Filters = filters @Limit = limit @Offset = offset @QueryType = querytype @QuerySource = querysource end def deserialize(params) unless params['Filters'].nil? @Filters = [] params['Filters'].each do |i| filter_tmp = Filter.new filter_tmp.deserialize(i) @Filters << filter_tmp end end @Limit = params['Limit'] @Offset = params['Offset'] @QueryType = params['QueryType'] @QuerySource = params['QuerySource'] end end # DescribeSREInstances返回参数结构体 class DescribeSREInstancesResponse < TencentCloud::Common::AbstractModel # @param TotalCount: 总数量 # @type TotalCount: Integer # @param Content: 实例记录 # @type Content: Array # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :TotalCount, :Content, :RequestId def initialize(totalcount=nil, content=nil, requestid=nil) @TotalCount = totalcount @Content = content @RequestId = requestid end def deserialize(params) @TotalCount = params['TotalCount'] unless params['Content'].nil? @Content = [] params['Content'].each do |i| sreinstance_tmp = SREInstance.new sreinstance_tmp.deserialize(i) @Content << sreinstance_tmp end end @RequestId = params['RequestId'] end end # 多环境网络信息 class EnvAddressInfo < TencentCloud::Common::AbstractModel # @param EnvName: 环境名 # @type EnvName: String # @param EnableConfigInternet: 是否开启config公网 # @type EnableConfigInternet: Boolean # @param ConfigInternetServiceIp: config公网ip # @type ConfigInternetServiceIp: String attr_accessor :EnvName, :EnableConfigInternet, :ConfigInternetServiceIp def initialize(envname=nil, enableconfiginternet=nil, configinternetserviceip=nil) @EnvName = envname @EnableConfigInternet = enableconfiginternet @ConfigInternetServiceIp = configinternetserviceip end def deserialize(params) @EnvName = params['EnvName'] @EnableConfigInternet = params['EnableConfigInternet'] @ConfigInternetServiceIp = params['ConfigInternetServiceIp'] end end # 环境具体信息 class EnvInfo < TencentCloud::Common::AbstractModel # @param EnvName: 环境名称 # @type EnvName: String # @param VpcInfos: 环境对应的网络信息 # @type VpcInfos: Array # @param StorageCapacity: 云硬盘容量 # @type StorageCapacity: Integer # @param Status: 运行状态 # @type Status: String # @param AdminServiceIp: Admin service 访问地址 # @type AdminServiceIp: String # @param ConfigServiceIp: Config service访问地址 # @type ConfigServiceIp: String # @param EnableConfigInternet: 是否开启config-server公网 # @type EnableConfigInternet: Boolean # @param ConfigInternetServiceIp: config-server公网访问地址 # @type ConfigInternetServiceIp: String # @param SpecId: 规格ID # @type SpecId: String # @param EnvReplica: 环境的节点数 # @type EnvReplica: Integer # @param RunningCount: 环境运行的节点数 # @type RunningCount: Integer # @param AliasEnvName: 环境别名 # @type AliasEnvName: String attr_accessor :EnvName, :VpcInfos, :StorageCapacity, :Status, :AdminServiceIp, :ConfigServiceIp, :EnableConfigInternet, :ConfigInternetServiceIp, :SpecId, :EnvReplica, :RunningCount, :AliasEnvName def initialize(envname=nil, vpcinfos=nil, storagecapacity=nil, status=nil, adminserviceip=nil, configserviceip=nil, enableconfiginternet=nil, configinternetserviceip=nil, specid=nil, envreplica=nil, runningcount=nil, aliasenvname=nil) @EnvName = envname @VpcInfos = vpcinfos @StorageCapacity = storagecapacity @Status = status @AdminServiceIp = adminserviceip @ConfigServiceIp = configserviceip @EnableConfigInternet = enableconfiginternet @ConfigInternetServiceIp = configinternetserviceip @SpecId = specid @EnvReplica = envreplica @RunningCount = runningcount @AliasEnvName = aliasenvname end def deserialize(params) @EnvName = params['EnvName'] unless params['VpcInfos'].nil? @VpcInfos = [] params['VpcInfos'].each do |i| vpcinfo_tmp = VpcInfo.new vpcinfo_tmp.deserialize(i) @VpcInfos << vpcinfo_tmp end end @StorageCapacity = params['StorageCapacity'] @Status = params['Status'] @AdminServiceIp = params['AdminServiceIp'] @ConfigServiceIp = params['ConfigServiceIp'] @EnableConfigInternet = params['EnableConfigInternet'] @ConfigInternetServiceIp = params['ConfigInternetServiceIp'] @SpecId = params['SpecId'] @EnvReplica = params['EnvReplica'] @RunningCount = params['RunningCount'] @AliasEnvName = params['AliasEnvName'] 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 # 键值对 class KVPair < TencentCloud::Common::AbstractModel # @param Key: 键 # @type Key: String # @param Value: 值 # @type Value: String attr_accessor :Key, :Value def initialize(key=nil, value=nil) @Key = key @Value = value end def deserialize(params) @Key = params['Key'] @Value = params['Value'] end end # 微服务注册引擎实例 class SREInstance < TencentCloud::Common::AbstractModel # @param InstanceId: 实例ID # @type InstanceId: String # @param Name: 名称 # @type Name: String # @param Edition: 版本号 # @type Edition: String # @param Status: 状态, 枚举值:creating/create_fail/running/updating/update_fail/restarting/restart_fail/destroying/destroy_fail # @type Status: String # @param SpecId: 规格ID # @type SpecId: String # @param Replica: 副本数 # @type Replica: Integer # @param Type: 类型 # @type Type: String # @param VpcId: Vpc iD # @type VpcId: String # @param SubnetIds: 子网ID # 注意:此字段可能返回 null,表示取不到有效值。 # @type SubnetIds: Array # @param EnableStorage: 是否开启持久化存储 # 注意:此字段可能返回 null,表示取不到有效值。 # @type EnableStorage: Boolean # @param StorageType: 数据存储方式 # 注意:此字段可能返回 null,表示取不到有效值。 # @type StorageType: String # @param StorageCapacity: 云硬盘容量 # 注意:此字段可能返回 null,表示取不到有效值。 # @type StorageCapacity: Integer # @param Paymode: 计费方式 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Paymode: String # @param EKSClusterID: EKS集群的ID # 注意:此字段可能返回 null,表示取不到有效值。 # @type EKSClusterID: String # @param CreateTime: 集群创建时间 # 注意:此字段可能返回 null,表示取不到有效值。 # @type CreateTime: String # @param EnvInfos: 环境配置信息列表 # 注意:此字段可能返回 null,表示取不到有效值。 # @type EnvInfos: Array # @param EngineRegion: 引擎所在的区域 # 注意:此字段可能返回 null,表示取不到有效值。 # @type EngineRegion: String # @param EnableInternet: 注册引擎是否开启公网 # 注意:此字段可能返回 null,表示取不到有效值。 # @type EnableInternet: Boolean # @param VpcInfos: 私有网络列表信息 # 注意:此字段可能返回 null,表示取不到有效值。 # @type VpcInfos: Array # @param ServiceGovernanceInfos: 服务治理相关信息列表 # 注意:此字段可能返回 null,表示取不到有效值。 # @type ServiceGovernanceInfos: Array # @param Tags: 实例的标签信息 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Tags: Array # @param EnableConsoleInternet: 引擎实例是否开启控制台公网访问地址 # 注意:此字段可能返回 null,表示取不到有效值。 # @type EnableConsoleInternet: Boolean # @param EnableConsoleIntranet: 引擎实例是否开启控制台内网访问地址 # 注意:此字段可能返回 null,表示取不到有效值。 # @type EnableConsoleIntranet: Boolean # @param ConfigInfoVisible: 引擎实例是否展示参数配置页面 # 注意:此字段可能返回 null,表示取不到有效值。 # @type ConfigInfoVisible: Boolean # @param ConsoleDefaultPwd: 引擎实例控制台默认密码 # 注意:此字段可能返回 null,表示取不到有效值。 # @type ConsoleDefaultPwd: String # @param TradeType: 交易付费类型,0后付费/1预付费 # 注意:此字段可能返回 null,表示取不到有效值。 # @type TradeType: Integer # @param AutoRenewFlag: 自动续费标记:0表示默认状态(用户未设置,即初始状态), 1表示自动续费,2表示明确不自动续费 # 注意:此字段可能返回 null,表示取不到有效值。 # @type AutoRenewFlag: Integer # @param CurDeadline: 预付费到期时间 # 注意:此字段可能返回 null,表示取不到有效值。 # @type CurDeadline: String # @param IsolateTime: 隔离开始时间 # 注意:此字段可能返回 null,表示取不到有效值。 # @type IsolateTime: String attr_accessor :InstanceId, :Name, :Edition, :Status, :SpecId, :Replica, :Type, :VpcId, :SubnetIds, :EnableStorage, :StorageType, :StorageCapacity, :Paymode, :EKSClusterID, :CreateTime, :EnvInfos, :EngineRegion, :EnableInternet, :VpcInfos, :ServiceGovernanceInfos, :Tags, :EnableConsoleInternet, :EnableConsoleIntranet, :ConfigInfoVisible, :ConsoleDefaultPwd, :TradeType, :AutoRenewFlag, :CurDeadline, :IsolateTime def initialize(instanceid=nil, name=nil, edition=nil, status=nil, specid=nil, replica=nil, type=nil, vpcid=nil, subnetids=nil, enablestorage=nil, storagetype=nil, storagecapacity=nil, paymode=nil, eksclusterid=nil, createtime=nil, envinfos=nil, engineregion=nil, enableinternet=nil, vpcinfos=nil, servicegovernanceinfos=nil, tags=nil, enableconsoleinternet=nil, enableconsoleintranet=nil, configinfovisible=nil, consoledefaultpwd=nil, tradetype=nil, autorenewflag=nil, curdeadline=nil, isolatetime=nil) @InstanceId = instanceid @Name = name @Edition = edition @Status = status @SpecId = specid @Replica = replica @Type = type @VpcId = vpcid @SubnetIds = subnetids @EnableStorage = enablestorage @StorageType = storagetype @StorageCapacity = storagecapacity @Paymode = paymode @EKSClusterID = eksclusterid @CreateTime = createtime @EnvInfos = envinfos @EngineRegion = engineregion @EnableInternet = enableinternet @VpcInfos = vpcinfos @ServiceGovernanceInfos = servicegovernanceinfos @Tags = tags @EnableConsoleInternet = enableconsoleinternet @EnableConsoleIntranet = enableconsoleintranet @ConfigInfoVisible = configinfovisible @ConsoleDefaultPwd = consoledefaultpwd @TradeType = tradetype @AutoRenewFlag = autorenewflag @CurDeadline = curdeadline @IsolateTime = isolatetime end def deserialize(params) @InstanceId = params['InstanceId'] @Name = params['Name'] @Edition = params['Edition'] @Status = params['Status'] @SpecId = params['SpecId'] @Replica = params['Replica'] @Type = params['Type'] @VpcId = params['VpcId'] @SubnetIds = params['SubnetIds'] @EnableStorage = params['EnableStorage'] @StorageType = params['StorageType'] @StorageCapacity = params['StorageCapacity'] @Paymode = params['Paymode'] @EKSClusterID = params['EKSClusterID'] @CreateTime = params['CreateTime'] unless params['EnvInfos'].nil? @EnvInfos = [] params['EnvInfos'].each do |i| envinfo_tmp = EnvInfo.new envinfo_tmp.deserialize(i) @EnvInfos << envinfo_tmp end end @EngineRegion = params['EngineRegion'] @EnableInternet = params['EnableInternet'] unless params['VpcInfos'].nil? @VpcInfos = [] params['VpcInfos'].each do |i| vpcinfo_tmp = VpcInfo.new vpcinfo_tmp.deserialize(i) @VpcInfos << vpcinfo_tmp end end unless params['ServiceGovernanceInfos'].nil? @ServiceGovernanceInfos = [] params['ServiceGovernanceInfos'].each do |i| servicegovernanceinfo_tmp = ServiceGovernanceInfo.new servicegovernanceinfo_tmp.deserialize(i) @ServiceGovernanceInfos << servicegovernanceinfo_tmp end end unless params['Tags'].nil? @Tags = [] params['Tags'].each do |i| kvpair_tmp = KVPair.new kvpair_tmp.deserialize(i) @Tags << kvpair_tmp end end @EnableConsoleInternet = params['EnableConsoleInternet'] @EnableConsoleIntranet = params['EnableConsoleIntranet'] @ConfigInfoVisible = params['ConfigInfoVisible'] @ConsoleDefaultPwd = params['ConsoleDefaultPwd'] @TradeType = params['TradeType'] @AutoRenewFlag = params['AutoRenewFlag'] @CurDeadline = params['CurDeadline'] @IsolateTime = params['IsolateTime'] end end # 服务治理相关的信息 class ServiceGovernanceInfo < TencentCloud::Common::AbstractModel # @param EngineRegion: 引擎所在的地域 # @type EngineRegion: String # @param BoundK8SInfos: 服务治理引擎绑定的kubernetes集群信息 # @type BoundK8SInfos: Array # @param VpcInfos: 服务治理引擎绑定的网络信息 # @type VpcInfos: Array # @param AuthOpen: 当前实例鉴权是否开启 # @type AuthOpen: Boolean # @param Features: 该实例支持的功能,鉴权就是 Auth # @type Features: Array # @param MainPassword: 主账户名默认为 polaris,该值为主账户的默认密码 # @type MainPassword: String attr_accessor :EngineRegion, :BoundK8SInfos, :VpcInfos, :AuthOpen, :Features, :MainPassword def initialize(engineregion=nil, boundk8sinfos=nil, vpcinfos=nil, authopen=nil, features=nil, mainpassword=nil) @EngineRegion = engineregion @BoundK8SInfos = boundk8sinfos @VpcInfos = vpcinfos @AuthOpen = authopen @Features = features @MainPassword = mainpassword end def deserialize(params) @EngineRegion = params['EngineRegion'] unless params['BoundK8SInfos'].nil? @BoundK8SInfos = [] params['BoundK8SInfos'].each do |i| boundk8sinfo_tmp = BoundK8SInfo.new boundk8sinfo_tmp.deserialize(i) @BoundK8SInfos << boundk8sinfo_tmp end end unless params['VpcInfos'].nil? @VpcInfos = [] params['VpcInfos'].each do |i| vpcinfo_tmp = VpcInfo.new vpcinfo_tmp.deserialize(i) @VpcInfos << vpcinfo_tmp end end @AuthOpen = params['AuthOpen'] @Features = params['Features'] @MainPassword = params['MainPassword'] end end # 私有网络信息 class VpcInfo < TencentCloud::Common::AbstractModel # @param VpcId: Vpc Id # @type VpcId: String # @param SubnetId: 子网ID # @type SubnetId: String # @param IntranetAddress: 内网访问地址 # 注意:此字段可能返回 null,表示取不到有效值。 # @type IntranetAddress: String attr_accessor :VpcId, :SubnetId, :IntranetAddress def initialize(vpcid=nil, subnetid=nil, intranetaddress=nil) @VpcId = vpcid @SubnetId = subnetid @IntranetAddress = intranetaddress end def deserialize(params) @VpcId = params['VpcId'] @SubnetId = params['SubnetId'] @IntranetAddress = params['IntranetAddress'] end end end end end