tencentcloud-sdk-tcm 1.0.200

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: f53a2d92360ec68c905c9cfa4cddd26522f1a659
4
+ data.tar.gz: ec80d0ec50fcde86733948846bf885eafeb63ead
5
+ SHA512:
6
+ metadata.gz: 5335f2ae8a7c17f57231a398468e997936edf2a53fa5a286449cdd83eb661ea9e374effe9e6f9927b96df5b0395f8527d58e62be1a8f8ed0e07877700b38a067
7
+ data.tar.gz: cae2f483563316fecd0a725d966c8c5687987b6c156c4c882300134a4fad4bd52b40f38a4c7d2955fa724588e7bf2212fffbb7363c6b139311e9489cd07ff37d
data/lib/VERSION ADDED
@@ -0,0 +1 @@
1
+ 1.0.200
@@ -0,0 +1,11 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'tencentcloud-sdk-common'
4
+
5
+ require_relative 'v20210413/client'
6
+ require_relative 'v20210413/models'
7
+
8
+ module TencentCloud
9
+ module Tcm
10
+ end
11
+ end
@@ -0,0 +1,84 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright (c) 2017-2018 THL A29 Limited, a Tencent company. All Rights Reserved.
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # http://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+ require 'json'
18
+
19
+ module TencentCloud
20
+ module Tcm
21
+ module V20210413
22
+ class Client < TencentCloud::Common::AbstractClient
23
+
24
+ def initialize(credential, region, profile = nil)
25
+ api_version = '2021-04-13'
26
+ api_endpoint = 'tcm.tencentcloudapi.com'
27
+ sdk_version = 'TCM_' + File.read(File.expand_path('../VERSION', __dir__)).strip
28
+ super(credential, region, api_version, api_endpoint, sdk_version, profile)
29
+ end
30
+
31
+
32
+ # 查询网格详情
33
+
34
+ # @param request: Request instance for DescribeMesh.
35
+ # @type request: :class:`Tencentcloud::tcm::V20210413::DescribeMeshRequest`
36
+ # @rtype: :class:`Tencentcloud::tcm::V20210413::DescribeMeshResponse`
37
+ def DescribeMesh(request)
38
+ body = send_request('DescribeMesh', request.serialize)
39
+ response = JSON.parse(body)
40
+ if response['Response'].key?('Error') == false
41
+ model = DescribeMeshResponse.new
42
+ model.deserialize(response['Response'])
43
+ model
44
+ else
45
+ code = response['Response']['Error']['Code']
46
+ message = response['Response']['Error']['Message']
47
+ reqid = response['Response']['RequestId']
48
+ raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid)
49
+ end
50
+ rescue TencentCloud::Common::TencentCloudSDKException => e
51
+ raise e
52
+ rescue StandardError => e
53
+ raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
54
+ end
55
+
56
+ # 查询网格列表
57
+
58
+ # @param request: Request instance for DescribeMeshList.
59
+ # @type request: :class:`Tencentcloud::tcm::V20210413::DescribeMeshListRequest`
60
+ # @rtype: :class:`Tencentcloud::tcm::V20210413::DescribeMeshListResponse`
61
+ def DescribeMeshList(request)
62
+ body = send_request('DescribeMeshList', request.serialize)
63
+ response = JSON.parse(body)
64
+ if response['Response'].key?('Error') == false
65
+ model = DescribeMeshListResponse.new
66
+ model.deserialize(response['Response'])
67
+ model
68
+ else
69
+ code = response['Response']['Error']['Code']
70
+ message = response['Response']['Error']['Message']
71
+ reqid = response['Response']['RequestId']
72
+ raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid)
73
+ end
74
+ rescue TencentCloud::Common::TencentCloudSDKException => e
75
+ raise e
76
+ rescue StandardError => e
77
+ raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
78
+ end
79
+
80
+
81
+ end
82
+ end
83
+ end
84
+ end
@@ -0,0 +1,1187 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright (c) 2017-2018 THL A29 Limited, a Tencent company. All Rights Reserved.
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # http://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+ module TencentCloud
18
+ module Tcm
19
+ module V20210413
20
+ # AccessLog 配置
21
+ class AccessLogConfig < TencentCloud::Common::AbstractModel
22
+ # @param Enable: 是否启用
23
+ # @type Enable: Boolean
24
+ # @param Template: 采用的模板,可选值:istio(默认)、trace
25
+ # @type Template: String
26
+ # @param SelectedRange: 选中的范围
27
+ # @type SelectedRange: :class:`Tencentcloud::Tcm.v20210413.models.SelectedRange`
28
+ # @param CLS: 腾讯云日志服务相关参数
29
+ # @type CLS: :class:`Tencentcloud::Tcm.v20210413.models.CLS`
30
+
31
+ attr_accessor :Enable, :Template, :SelectedRange, :CLS
32
+
33
+ def initialize(enable=nil, template=nil, selectedrange=nil, cls=nil)
34
+ @Enable = enable
35
+ @Template = template
36
+ @SelectedRange = selectedrange
37
+ @CLS = cls
38
+ end
39
+
40
+ def deserialize(params)
41
+ @Enable = params['Enable']
42
+ @Template = params['Template']
43
+ unless params['SelectedRange'].nil?
44
+ @SelectedRange = SelectedRange.new
45
+ @SelectedRange.deserialize(params['SelectedRange'])
46
+ end
47
+ unless params['CLS'].nil?
48
+ @CLS = CLS.new
49
+ @CLS.deserialize(params['CLS'])
50
+ end
51
+ end
52
+ end
53
+
54
+ # 正在执行的异步操作
55
+ class ActiveOperation < TencentCloud::Common::AbstractModel
56
+ # @param OperationId: 操作Id
57
+ # @type OperationId: String
58
+ # @param Type: 操作类型,取值范围:
59
+ # - LINK_CLUSTERS: 关联集群
60
+ # - RELINK_CLUSTERS: 重新关联集群
61
+ # - UNLINK_CLUSTERS: 解关联集群
62
+ # - INSTALL_MESH: 安装网格
63
+ # @type Type: String
64
+
65
+ attr_accessor :OperationId, :Type
66
+
67
+ def initialize(operationid=nil, type=nil)
68
+ @OperationId = operationid
69
+ @Type = type
70
+ end
71
+
72
+ def deserialize(params)
73
+ @OperationId = params['OperationId']
74
+ @Type = params['Type']
75
+ end
76
+ end
77
+
78
+ # 描述某一网格在特定命名空间下的自动注入状态
79
+ class AutoInjectionNamespaceState < TencentCloud::Common::AbstractModel
80
+ # @param Namespace: 命名空间名称
81
+ # @type Namespace: String
82
+ # @param State: 注入状态
83
+ # 注意:此字段可能返回 null,表示取不到有效值。
84
+ # @type State: String
85
+
86
+ attr_accessor :Namespace, :State
87
+
88
+ def initialize(namespace=nil, state=nil)
89
+ @Namespace = namespace
90
+ @State = state
91
+ end
92
+
93
+ def deserialize(params)
94
+ @Namespace = params['Namespace']
95
+ @State = params['State']
96
+ end
97
+ end
98
+
99
+ # 腾讯云日志服务相关参数
100
+ class CLS < TencentCloud::Common::AbstractModel
101
+ # @param Enable: 是否启用
102
+ # @type Enable: Boolean
103
+ # @param LogSet: 日志集
104
+ # @type LogSet: String
105
+ # @param Topic: 日志主题
106
+ # @type Topic: String
107
+
108
+ attr_accessor :Enable, :LogSet, :Topic
109
+
110
+ def initialize(enable=nil, logset=nil, topic=nil)
111
+ @Enable = enable
112
+ @LogSet = logset
113
+ @Topic = topic
114
+ end
115
+
116
+ def deserialize(params)
117
+ @Enable = params['Enable']
118
+ @LogSet = params['LogSet']
119
+ @Topic = params['Topic']
120
+ end
121
+ end
122
+
123
+ # Mesh集群信息
124
+ class Cluster < TencentCloud::Common::AbstractModel
125
+ # @param ClusterId: 集群Id
126
+ # @type ClusterId: String
127
+ # @param Region: 地域
128
+ # @type Region: String
129
+ # @param Role: 集群角色,取值范围:
130
+ # - MASTER:控制面所在的主集群
131
+ # - REMOTE:主集群管理的远端集群
132
+ # @type Role: String
133
+ # @param VpcId: 私有网络Id
134
+ # @type VpcId: String
135
+ # @param SubnetId: 子网Id
136
+ # @type SubnetId: String
137
+ # @param DisplayName: 名称,只读
138
+ # @type DisplayName: String
139
+ # @param State: 状态,只读
140
+ # @type State: String
141
+ # @param LinkedTime: 关联时间,只读
142
+ # @type LinkedTime: String
143
+ # @param Config: 集群配置
144
+ # @type Config: :class:`Tencentcloud::Tcm.v20210413.models.ClusterConfig`
145
+ # @param Status: 详细状态,只读
146
+ # @type Status: :class:`Tencentcloud::Tcm.v20210413.models.ClusterStatus`
147
+ # @param Type: 类型,取值范围:
148
+ # - TKE
149
+ # - EKS
150
+ # @type Type: String
151
+
152
+ attr_accessor :ClusterId, :Region, :Role, :VpcId, :SubnetId, :DisplayName, :State, :LinkedTime, :Config, :Status, :Type
153
+
154
+ def initialize(clusterid=nil, region=nil, role=nil, vpcid=nil, subnetid=nil, displayname=nil, state=nil, linkedtime=nil, config=nil, status=nil, type=nil)
155
+ @ClusterId = clusterid
156
+ @Region = region
157
+ @Role = role
158
+ @VpcId = vpcid
159
+ @SubnetId = subnetid
160
+ @DisplayName = displayname
161
+ @State = state
162
+ @LinkedTime = linkedtime
163
+ @Config = config
164
+ @Status = status
165
+ @Type = type
166
+ end
167
+
168
+ def deserialize(params)
169
+ @ClusterId = params['ClusterId']
170
+ @Region = params['Region']
171
+ @Role = params['Role']
172
+ @VpcId = params['VpcId']
173
+ @SubnetId = params['SubnetId']
174
+ @DisplayName = params['DisplayName']
175
+ @State = params['State']
176
+ @LinkedTime = params['LinkedTime']
177
+ unless params['Config'].nil?
178
+ @Config = ClusterConfig.new
179
+ @Config.deserialize(params['Config'])
180
+ end
181
+ unless params['Status'].nil?
182
+ @Status = ClusterStatus.new
183
+ @Status.deserialize(params['Status'])
184
+ end
185
+ @Type = params['Type']
186
+ end
187
+ end
188
+
189
+ # 集群配置
190
+ class ClusterConfig < TencentCloud::Common::AbstractModel
191
+ # @param AutoInjectionNamespaceList: 自动注入SideCar的NameSpace
192
+ # @type AutoInjectionNamespaceList: Array
193
+ # @param IngressGatewayList: Ingress配置列表
194
+ # @type IngressGatewayList: Array
195
+ # @param EgressGatewayList: Egress配置列表
196
+ # @type EgressGatewayList: Array
197
+ # @param Istiod: Istiod配置
198
+ # 注意:此字段可能返回 null,表示取不到有效值。
199
+ # @type Istiod: :class:`Tencentcloud::Tcm.v20210413.models.IstiodConfig`
200
+ # @param DeployConfig: 部署配置
201
+ # @type DeployConfig: :class:`Tencentcloud::Tcm.v20210413.models.DeployConfig`
202
+ # @param AutoInjectionNamespaceStateList: 自动注入命名空间状态列表
203
+ # @type AutoInjectionNamespaceStateList: Array
204
+
205
+ attr_accessor :AutoInjectionNamespaceList, :IngressGatewayList, :EgressGatewayList, :Istiod, :DeployConfig, :AutoInjectionNamespaceStateList
206
+
207
+ def initialize(autoinjectionnamespacelist=nil, ingressgatewaylist=nil, egressgatewaylist=nil, istiod=nil, deployconfig=nil, autoinjectionnamespacestatelist=nil)
208
+ @AutoInjectionNamespaceList = autoinjectionnamespacelist
209
+ @IngressGatewayList = ingressgatewaylist
210
+ @EgressGatewayList = egressgatewaylist
211
+ @Istiod = istiod
212
+ @DeployConfig = deployconfig
213
+ @AutoInjectionNamespaceStateList = autoinjectionnamespacestatelist
214
+ end
215
+
216
+ def deserialize(params)
217
+ @AutoInjectionNamespaceList = params['AutoInjectionNamespaceList']
218
+ unless params['IngressGatewayList'].nil?
219
+ @IngressGatewayList = []
220
+ params['IngressGatewayList'].each do |i|
221
+ ingressgateway_tmp = IngressGateway.new
222
+ ingressgateway_tmp.deserialize(i)
223
+ @IngressGatewayList << ingressgateway_tmp
224
+ end
225
+ end
226
+ unless params['EgressGatewayList'].nil?
227
+ @EgressGatewayList = []
228
+ params['EgressGatewayList'].each do |i|
229
+ egressgateway_tmp = EgressGateway.new
230
+ egressgateway_tmp.deserialize(i)
231
+ @EgressGatewayList << egressgateway_tmp
232
+ end
233
+ end
234
+ unless params['Istiod'].nil?
235
+ @Istiod = IstiodConfig.new
236
+ @Istiod.deserialize(params['Istiod'])
237
+ end
238
+ unless params['DeployConfig'].nil?
239
+ @DeployConfig = DeployConfig.new
240
+ @DeployConfig.deserialize(params['DeployConfig'])
241
+ end
242
+ unless params['AutoInjectionNamespaceStateList'].nil?
243
+ @AutoInjectionNamespaceStateList = []
244
+ params['AutoInjectionNamespaceStateList'].each do |i|
245
+ autoinjectionnamespacestate_tmp = AutoInjectionNamespaceState.new
246
+ autoinjectionnamespacestate_tmp.deserialize(i)
247
+ @AutoInjectionNamespaceStateList << autoinjectionnamespacestate_tmp
248
+ end
249
+ end
250
+ end
251
+ end
252
+
253
+ # 集群状态
254
+ class ClusterStatus < TencentCloud::Common::AbstractModel
255
+ # @param LinkState: 关联状态,取值范围:
256
+ # - LINKING: 关联中
257
+ # - LINKED: 已关联
258
+ # - UNLINKING: 解关联中
259
+ # - LINK_FAILED: 关联失败
260
+ # - UNLINK_FAILED: 解关联失败
261
+ # @type LinkState: String
262
+ # @param LinkErrorDetail: 关联错误详情
263
+ # 注意:此字段可能返回 null,表示取不到有效值。
264
+ # @type LinkErrorDetail: String
265
+
266
+ attr_accessor :LinkState, :LinkErrorDetail
267
+
268
+ def initialize(linkstate=nil, linkerrordetail=nil)
269
+ @LinkState = linkstate
270
+ @LinkErrorDetail = linkerrordetail
271
+ end
272
+
273
+ def deserialize(params)
274
+ @LinkState = params['LinkState']
275
+ @LinkErrorDetail = params['LinkErrorDetail']
276
+ end
277
+ end
278
+
279
+ # 部署配置
280
+ class DeployConfig < TencentCloud::Common::AbstractModel
281
+ # @param NodeSelectType: 部署类型,取值范围:
282
+ # - SPECIFIC:专有模式
283
+ # - AUTO:普通模式
284
+ # @type NodeSelectType: String
285
+ # @param Nodes: 指定的节点
286
+ # @type Nodes: Array
287
+
288
+ attr_accessor :NodeSelectType, :Nodes
289
+
290
+ def initialize(nodeselecttype=nil, nodes=nil)
291
+ @NodeSelectType = nodeselecttype
292
+ @Nodes = nodes
293
+ end
294
+
295
+ def deserialize(params)
296
+ @NodeSelectType = params['NodeSelectType']
297
+ @Nodes = params['Nodes']
298
+ end
299
+ end
300
+
301
+ # DescribeMeshList请求参数结构体
302
+ class DescribeMeshListRequest < TencentCloud::Common::AbstractModel
303
+ # @param Filters: 过滤条件
304
+ # @type Filters: Array
305
+ # @param Limit: 分页限制
306
+ # @type Limit: Integer
307
+ # @param Offset: 分页偏移
308
+ # @type Offset: Integer
309
+
310
+ attr_accessor :Filters, :Limit, :Offset
311
+
312
+ def initialize(filters=nil, limit=nil, offset=nil)
313
+ @Filters = filters
314
+ @Limit = limit
315
+ @Offset = offset
316
+ end
317
+
318
+ def deserialize(params)
319
+ unless params['Filters'].nil?
320
+ @Filters = []
321
+ params['Filters'].each do |i|
322
+ filter_tmp = Filter.new
323
+ filter_tmp.deserialize(i)
324
+ @Filters << filter_tmp
325
+ end
326
+ end
327
+ @Limit = params['Limit']
328
+ @Offset = params['Offset']
329
+ end
330
+ end
331
+
332
+ # DescribeMeshList返回参数结构体
333
+ class DescribeMeshListResponse < TencentCloud::Common::AbstractModel
334
+ # @param MeshList: 查询到的网格信息
335
+ # 注意:此字段可能返回 null,表示取不到有效值。
336
+ # @type MeshList: Array
337
+ # @param Total: 总数
338
+ # @type Total: Integer
339
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
340
+ # @type RequestId: String
341
+
342
+ attr_accessor :MeshList, :Total, :RequestId
343
+
344
+ def initialize(meshlist=nil, total=nil, requestid=nil)
345
+ @MeshList = meshlist
346
+ @Total = total
347
+ @RequestId = requestid
348
+ end
349
+
350
+ def deserialize(params)
351
+ unless params['MeshList'].nil?
352
+ @MeshList = []
353
+ params['MeshList'].each do |i|
354
+ mesh_tmp = Mesh.new
355
+ mesh_tmp.deserialize(i)
356
+ @MeshList << mesh_tmp
357
+ end
358
+ end
359
+ @Total = params['Total']
360
+ @RequestId = params['RequestId']
361
+ end
362
+ end
363
+
364
+ # DescribeMesh请求参数结构体
365
+ class DescribeMeshRequest < TencentCloud::Common::AbstractModel
366
+ # @param MeshId: 需要查询的网格 Id
367
+ # @type MeshId: String
368
+
369
+ attr_accessor :MeshId
370
+
371
+ def initialize(meshid=nil)
372
+ @MeshId = meshid
373
+ end
374
+
375
+ def deserialize(params)
376
+ @MeshId = params['MeshId']
377
+ end
378
+ end
379
+
380
+ # DescribeMesh返回参数结构体
381
+ class DescribeMeshResponse < TencentCloud::Common::AbstractModel
382
+ # @param Mesh: Mesh详细信息
383
+ # @type Mesh: :class:`Tencentcloud::Tcm.v20210413.models.Mesh`
384
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
385
+ # @type RequestId: String
386
+
387
+ attr_accessor :Mesh, :RequestId
388
+
389
+ def initialize(mesh=nil, requestid=nil)
390
+ @Mesh = mesh
391
+ @RequestId = requestid
392
+ end
393
+
394
+ def deserialize(params)
395
+ unless params['Mesh'].nil?
396
+ @Mesh = Mesh.new
397
+ @Mesh.deserialize(params['Mesh'])
398
+ end
399
+ @RequestId = params['RequestId']
400
+ end
401
+ end
402
+
403
+ # Egress配置
404
+ class EgressGateway < TencentCloud::Common::AbstractModel
405
+ # @param Name: Egress名称
406
+ # @type Name: String
407
+ # @param Namespace: 所在的Namespace
408
+ # @type Namespace: String
409
+ # @param Workload: 工作负载配置
410
+ # @type Workload: :class:`Tencentcloud::Tcm.v20210413.models.WorkloadConfig`
411
+
412
+ attr_accessor :Name, :Namespace, :Workload
413
+
414
+ def initialize(name=nil, namespace=nil, workload=nil)
415
+ @Name = name
416
+ @Namespace = namespace
417
+ @Workload = workload
418
+ end
419
+
420
+ def deserialize(params)
421
+ @Name = params['Name']
422
+ @Namespace = params['Namespace']
423
+ unless params['Workload'].nil?
424
+ @Workload = WorkloadConfig.new
425
+ @Workload.deserialize(params['Workload'])
426
+ end
427
+ end
428
+ end
429
+
430
+ # 键值对过滤器,用于条件过滤查询。例如过滤ID、名称等
431
+ class Filter < TencentCloud::Common::AbstractModel
432
+ # @param Name: 需要过滤的字段。
433
+ # @type Name: String
434
+ # @param Values: 字段的过滤值。
435
+ # @type Values: Array
436
+
437
+ attr_accessor :Name, :Values
438
+
439
+ def initialize(name=nil, values=nil)
440
+ @Name = name
441
+ @Values = values
442
+ end
443
+
444
+ def deserialize(params)
445
+ @Name = params['Name']
446
+ @Values = params['Values']
447
+ end
448
+ end
449
+
450
+ # Grafana信息
451
+ class GrafanaInfo < TencentCloud::Common::AbstractModel
452
+ # @param Enabled: 是否开启
453
+ # @type Enabled: Boolean
454
+ # @param InternalURL: 内网地址
455
+ # @type InternalURL: String
456
+ # @param PublicURL: 公网地址
457
+ # 注意:此字段可能返回 null,表示取不到有效值。
458
+ # @type PublicURL: String
459
+ # @param PublicFailedReason: 公网失败原因
460
+ # 注意:此字段可能返回 null,表示取不到有效值。
461
+ # @type PublicFailedReason: String
462
+ # @param PublicFailedMessage: 公网失败详细信息
463
+ # 注意:此字段可能返回 null,表示取不到有效值。
464
+ # @type PublicFailedMessage: String
465
+
466
+ attr_accessor :Enabled, :InternalURL, :PublicURL, :PublicFailedReason, :PublicFailedMessage
467
+
468
+ def initialize(enabled=nil, internalurl=nil, publicurl=nil, publicfailedreason=nil, publicfailedmessage=nil)
469
+ @Enabled = enabled
470
+ @InternalURL = internalurl
471
+ @PublicURL = publicurl
472
+ @PublicFailedReason = publicfailedreason
473
+ @PublicFailedMessage = publicfailedmessage
474
+ end
475
+
476
+ def deserialize(params)
477
+ @Enabled = params['Enabled']
478
+ @InternalURL = params['InternalURL']
479
+ @PublicURL = params['PublicURL']
480
+ @PublicFailedReason = params['PublicFailedReason']
481
+ @PublicFailedMessage = params['PublicFailedMessage']
482
+ end
483
+ end
484
+
485
+ # HPA 配置
486
+ class HorizontalPodAutoscalerSpec < TencentCloud::Common::AbstractModel
487
+ # @param MinReplicas: 最小副本数
488
+ # @type MinReplicas: Integer
489
+ # @param MaxReplicas: 最大副本数
490
+ # @type MaxReplicas: Integer
491
+ # @param Metrics: 用于计算副本数的指标
492
+ # @type Metrics: Array
493
+
494
+ attr_accessor :MinReplicas, :MaxReplicas, :Metrics
495
+
496
+ def initialize(minreplicas=nil, maxreplicas=nil, metrics=nil)
497
+ @MinReplicas = minreplicas
498
+ @MaxReplicas = maxreplicas
499
+ @Metrics = metrics
500
+ end
501
+
502
+ def deserialize(params)
503
+ @MinReplicas = params['MinReplicas']
504
+ @MaxReplicas = params['MaxReplicas']
505
+ unless params['Metrics'].nil?
506
+ @Metrics = []
507
+ params['Metrics'].each do |i|
508
+ metricspec_tmp = MetricSpec.new
509
+ metricspec_tmp.deserialize(i)
510
+ @Metrics << metricspec_tmp
511
+ end
512
+ end
513
+ end
514
+ end
515
+
516
+ # IngressGateway 实例信息
517
+ class IngressGateway < TencentCloud::Common::AbstractModel
518
+ # @param Name: IngressGateway 实例名字
519
+ # @type Name: String
520
+ # @param Namespace: 命名空间
521
+ # @type Namespace: String
522
+ # @param ClusterId: 集群 ID
523
+ # @type ClusterId: String
524
+ # @param Service: Service 配置
525
+ # @type Service: :class:`Tencentcloud::Tcm.v20210413.models.Service`
526
+ # @param Workload: Workload 配置
527
+ # @type Workload: :class:`Tencentcloud::Tcm.v20210413.models.WorkloadConfig`
528
+ # @param LoadBalancer: 负载均衡配置,自动创建 CLB 时返回
529
+ # 注意:此字段可能返回 null,表示取不到有效值。
530
+ # @type LoadBalancer: :class:`Tencentcloud::Tcm.v20210413.models.LoadBalancer`
531
+ # @param Status: IngressGateway 状态信息,只读
532
+ # @type Status: :class:`Tencentcloud::Tcm.v20210413.models.IngressGatewayStatus`
533
+ # @param LoadBalancerId: 负载均衡实例ID,使用已有 CLB 时返回
534
+ # @type LoadBalancerId: String
535
+
536
+ attr_accessor :Name, :Namespace, :ClusterId, :Service, :Workload, :LoadBalancer, :Status, :LoadBalancerId
537
+
538
+ def initialize(name=nil, namespace=nil, clusterid=nil, service=nil, workload=nil, loadbalancer=nil, status=nil, loadbalancerid=nil)
539
+ @Name = name
540
+ @Namespace = namespace
541
+ @ClusterId = clusterid
542
+ @Service = service
543
+ @Workload = workload
544
+ @LoadBalancer = loadbalancer
545
+ @Status = status
546
+ @LoadBalancerId = loadbalancerid
547
+ end
548
+
549
+ def deserialize(params)
550
+ @Name = params['Name']
551
+ @Namespace = params['Namespace']
552
+ @ClusterId = params['ClusterId']
553
+ unless params['Service'].nil?
554
+ @Service = Service.new
555
+ @Service.deserialize(params['Service'])
556
+ end
557
+ unless params['Workload'].nil?
558
+ @Workload = WorkloadConfig.new
559
+ @Workload.deserialize(params['Workload'])
560
+ end
561
+ unless params['LoadBalancer'].nil?
562
+ @LoadBalancer = LoadBalancer.new
563
+ @LoadBalancer.deserialize(params['LoadBalancer'])
564
+ end
565
+ unless params['Status'].nil?
566
+ @Status = IngressGatewayStatus.new
567
+ @Status.deserialize(params['Status'])
568
+ end
569
+ @LoadBalancerId = params['LoadBalancerId']
570
+ end
571
+ end
572
+
573
+ # IngressGateway状态
574
+ class IngressGatewayStatus < TencentCloud::Common::AbstractModel
575
+ # @param LoadBalancer: 负载均衡实例状态
576
+ # @type LoadBalancer: :class:`Tencentcloud::Tcm.v20210413.models.LoadBalancerStatus`
577
+
578
+ attr_accessor :LoadBalancer
579
+
580
+ def initialize(loadbalancer=nil)
581
+ @LoadBalancer = loadbalancer
582
+ end
583
+
584
+ def deserialize(params)
585
+ unless params['LoadBalancer'].nil?
586
+ @LoadBalancer = LoadBalancerStatus.new
587
+ @LoadBalancer.deserialize(params['LoadBalancer'])
588
+ end
589
+ end
590
+ end
591
+
592
+ # Istio配置
593
+ class IstioConfig < TencentCloud::Common::AbstractModel
594
+ # @param OutboundTrafficPolicy: 外部流量策略
595
+ # @type OutboundTrafficPolicy: String
596
+ # @param Tracing: 调用链配置
597
+ # @type Tracing: :class:`Tencentcloud::Tcm.v20210413.models.TracingConfig`
598
+
599
+ attr_accessor :OutboundTrafficPolicy, :Tracing
600
+
601
+ def initialize(outboundtrafficpolicy=nil, tracing=nil)
602
+ @OutboundTrafficPolicy = outboundtrafficpolicy
603
+ @Tracing = tracing
604
+ end
605
+
606
+ def deserialize(params)
607
+ @OutboundTrafficPolicy = params['OutboundTrafficPolicy']
608
+ unless params['Tracing'].nil?
609
+ @Tracing = TracingConfig.new
610
+ @Tracing.deserialize(params['Tracing'])
611
+ end
612
+ end
613
+ end
614
+
615
+ # Istiod配置
616
+ class IstiodConfig < TencentCloud::Common::AbstractModel
617
+ # @param Workload: 工作负载配置
618
+ # @type Workload: :class:`Tencentcloud::Tcm.v20210413.models.WorkloadConfig`
619
+
620
+ attr_accessor :Workload
621
+
622
+ def initialize(workload=nil)
623
+ @Workload = workload
624
+ end
625
+
626
+ def deserialize(params)
627
+ unless params['Workload'].nil?
628
+ @Workload = WorkloadConfig.new
629
+ @Workload.deserialize(params['Workload'])
630
+ end
631
+ end
632
+ end
633
+
634
+ # 负载均衡配置
635
+ class LoadBalancer < TencentCloud::Common::AbstractModel
636
+ # @param LoadBalancerType: 负载均衡实例的网络类型:
637
+ # OPEN:公网属性, INTERNAL:内网属性。
638
+ # 只读。
639
+ # @type LoadBalancerType: String
640
+ # @param SubnetId: 负载均衡实例所在的子网(仅对内网VPC型LB有意义),只读。
641
+ # @type SubnetId: String
642
+ # @param InternetChargeType: TRAFFIC_POSTPAID_BY_HOUR 按流量按小时后计费 ; BANDWIDTH_POSTPAID_BY_HOUR 按带宽按小时后计费;只读。
643
+ # @type InternetChargeType: String
644
+ # @param InternetMaxBandwidthOut: 最大出带宽,单位Mbps,范围支持0到2048,仅对公网属性的LB生效,默认值 10
645
+ # @type InternetMaxBandwidthOut: Integer
646
+
647
+ attr_accessor :LoadBalancerType, :SubnetId, :InternetChargeType, :InternetMaxBandwidthOut
648
+
649
+ def initialize(loadbalancertype=nil, subnetid=nil, internetchargetype=nil, internetmaxbandwidthout=nil)
650
+ @LoadBalancerType = loadbalancertype
651
+ @SubnetId = subnetid
652
+ @InternetChargeType = internetchargetype
653
+ @InternetMaxBandwidthOut = internetmaxbandwidthout
654
+ end
655
+
656
+ def deserialize(params)
657
+ @LoadBalancerType = params['LoadBalancerType']
658
+ @SubnetId = params['SubnetId']
659
+ @InternetChargeType = params['InternetChargeType']
660
+ @InternetMaxBandwidthOut = params['InternetMaxBandwidthOut']
661
+ end
662
+ end
663
+
664
+ # 负载均衡状态信息
665
+ class LoadBalancerStatus < TencentCloud::Common::AbstractModel
666
+ # @param LoadBalancerId: 负载均衡实例 ID
667
+ # @type LoadBalancerId: String
668
+ # @param LoadBalancerName: 负载均衡实例名字
669
+ # @type LoadBalancerName: String
670
+ # @param LoadBalancerVip: 负载均衡实例 VIP
671
+ # @type LoadBalancerVip: String
672
+
673
+ attr_accessor :LoadBalancerId, :LoadBalancerName, :LoadBalancerVip
674
+
675
+ def initialize(loadbalancerid=nil, loadbalancername=nil, loadbalancervip=nil)
676
+ @LoadBalancerId = loadbalancerid
677
+ @LoadBalancerName = loadbalancername
678
+ @LoadBalancerVip = loadbalancervip
679
+ end
680
+
681
+ def deserialize(params)
682
+ @LoadBalancerId = params['LoadBalancerId']
683
+ @LoadBalancerName = params['LoadBalancerName']
684
+ @LoadBalancerVip = params['LoadBalancerVip']
685
+ end
686
+ end
687
+
688
+ # Mesh信息
689
+ class Mesh < TencentCloud::Common::AbstractModel
690
+ # @param MeshId: Mesh实例Id
691
+ # @type MeshId: String
692
+ # @param DisplayName: Mesh名称
693
+ # @type DisplayName: String
694
+ # @param Type: Mesh类型,取值范围:
695
+ # - STANDALONE:独立网格
696
+ # - HOSTED:托管网格
697
+ # @type Type: String
698
+ # @param Region: 地域
699
+ # @type Region: String
700
+ # @param Version: 版本
701
+ # @type Version: String
702
+ # @param State: Mesh状态,取值范围:
703
+ # - PENDING:等待中
704
+ # - CREATING:创建中
705
+ # - RUNNING:运行中
706
+ # - ABNORMAL:异常
707
+ # - UPGRADING:升级中
708
+ # - CANARY_UPGRADED:升级灰度完成
709
+ # - ROLLBACKING:升级回滚
710
+ # - DELETING:删除中
711
+ # - CREATE_FAILED:安装失败
712
+ # - DELETE_FAILED:删除失败
713
+ # - UPGRADE_FAILED:升级失败
714
+ # - ROLLBACK_FAILED:回滚失败
715
+ # @type State: String
716
+ # @param CreatedTime: 创建时间
717
+ # @type CreatedTime: String
718
+ # @param UpdatedTime: 修改时间
719
+ # 注意:此字段可能返回 null,表示取不到有效值。
720
+ # @type UpdatedTime: String
721
+ # @param ClusterList: 集群列表
722
+ # @type ClusterList: Array
723
+ # @param Config: Mesh配置
724
+ # @type Config: :class:`Tencentcloud::Tcm.v20210413.models.MeshConfig`
725
+ # @param Status: Mesh详细状态
726
+ # @type Status: :class:`Tencentcloud::Tcm.v20210413.models.MeshStatus`
727
+
728
+ attr_accessor :MeshId, :DisplayName, :Type, :Region, :Version, :State, :CreatedTime, :UpdatedTime, :ClusterList, :Config, :Status
729
+
730
+ def initialize(meshid=nil, displayname=nil, type=nil, region=nil, version=nil, state=nil, createdtime=nil, updatedtime=nil, clusterlist=nil, config=nil, status=nil)
731
+ @MeshId = meshid
732
+ @DisplayName = displayname
733
+ @Type = type
734
+ @Region = region
735
+ @Version = version
736
+ @State = state
737
+ @CreatedTime = createdtime
738
+ @UpdatedTime = updatedtime
739
+ @ClusterList = clusterlist
740
+ @Config = config
741
+ @Status = status
742
+ end
743
+
744
+ def deserialize(params)
745
+ @MeshId = params['MeshId']
746
+ @DisplayName = params['DisplayName']
747
+ @Type = params['Type']
748
+ @Region = params['Region']
749
+ @Version = params['Version']
750
+ @State = params['State']
751
+ @CreatedTime = params['CreatedTime']
752
+ @UpdatedTime = params['UpdatedTime']
753
+ unless params['ClusterList'].nil?
754
+ @ClusterList = []
755
+ params['ClusterList'].each do |i|
756
+ cluster_tmp = Cluster.new
757
+ cluster_tmp.deserialize(i)
758
+ @ClusterList << cluster_tmp
759
+ end
760
+ end
761
+ unless params['Config'].nil?
762
+ @Config = MeshConfig.new
763
+ @Config.deserialize(params['Config'])
764
+ end
765
+ unless params['Status'].nil?
766
+ @Status = MeshStatus.new
767
+ @Status.deserialize(params['Status'])
768
+ end
769
+ end
770
+ end
771
+
772
+ # 网格配置项
773
+ class MeshConfig < TencentCloud::Common::AbstractModel
774
+ # @param Istio: Istio配置
775
+ # @type Istio: :class:`Tencentcloud::Tcm.v20210413.models.IstioConfig`
776
+ # @param AccessLog: AccessLog配置
777
+ # @type AccessLog: :class:`Tencentcloud::Tcm.v20210413.models.AccessLogConfig`
778
+ # @param Prometheus: Prometheus配置
779
+ # @type Prometheus: :class:`Tencentcloud::Tcm.v20210413.models.PrometheusConfig`
780
+
781
+ attr_accessor :Istio, :AccessLog, :Prometheus
782
+
783
+ def initialize(istio=nil, accesslog=nil, prometheus=nil)
784
+ @Istio = istio
785
+ @AccessLog = accesslog
786
+ @Prometheus = prometheus
787
+ end
788
+
789
+ def deserialize(params)
790
+ unless params['Istio'].nil?
791
+ @Istio = IstioConfig.new
792
+ @Istio.deserialize(params['Istio'])
793
+ end
794
+ unless params['AccessLog'].nil?
795
+ @AccessLog = AccessLogConfig.new
796
+ @AccessLog.deserialize(params['AccessLog'])
797
+ end
798
+ unless params['Prometheus'].nil?
799
+ @Prometheus = PrometheusConfig.new
800
+ @Prometheus.deserialize(params['Prometheus'])
801
+ end
802
+ end
803
+ end
804
+
805
+ # Mesh当前状态
806
+ class MeshStatus < TencentCloud::Common::AbstractModel
807
+ # @param ServiceCount: 服务数量
808
+ # @type ServiceCount: Integer
809
+ # @param CanaryVersion: 灰度升级的版本
810
+ # 注意:此字段可能返回 null,表示取不到有效值。
811
+ # @type CanaryVersion: String
812
+ # @param Prometheus: Prometheus状态
813
+ # 注意:此字段可能返回 null,表示取不到有效值。
814
+ # @type Prometheus: Array
815
+ # @param StateMessage: 状态附带信息
816
+ # 注意:此字段可能返回 null,表示取不到有效值。
817
+ # @type StateMessage: String
818
+ # @param ActiveOperationList: 正在执行的异步操作
819
+ # 注意:此字段可能返回 null,表示取不到有效值。
820
+ # @type ActiveOperationList: Array
821
+
822
+ attr_accessor :ServiceCount, :CanaryVersion, :Prometheus, :StateMessage, :ActiveOperationList
823
+
824
+ def initialize(servicecount=nil, canaryversion=nil, prometheus=nil, statemessage=nil, activeoperationlist=nil)
825
+ @ServiceCount = servicecount
826
+ @CanaryVersion = canaryversion
827
+ @Prometheus = prometheus
828
+ @StateMessage = statemessage
829
+ @ActiveOperationList = activeoperationlist
830
+ end
831
+
832
+ def deserialize(params)
833
+ @ServiceCount = params['ServiceCount']
834
+ @CanaryVersion = params['CanaryVersion']
835
+ unless params['Prometheus'].nil?
836
+ @Prometheus = []
837
+ params['Prometheus'].each do |i|
838
+ prometheusstatus_tmp = PrometheusStatus.new
839
+ prometheusstatus_tmp.deserialize(i)
840
+ @Prometheus << prometheusstatus_tmp
841
+ end
842
+ end
843
+ @StateMessage = params['StateMessage']
844
+ unless params['ActiveOperationList'].nil?
845
+ @ActiveOperationList = []
846
+ params['ActiveOperationList'].each do |i|
847
+ activeoperation_tmp = ActiveOperation.new
848
+ activeoperation_tmp.deserialize(i)
849
+ @ActiveOperationList << activeoperation_tmp
850
+ end
851
+ end
852
+ end
853
+ end
854
+
855
+ # MetricSpec 描述如何通过指定指标进行自动扩缩容
856
+ class MetricSpec < TencentCloud::Common::AbstractModel
857
+ # @param Type: 指标来源类型,支持 Pods/Resource
858
+ # @type Type: String
859
+ # @param Pods: 使用自定义指标扩进行自动扩缩容
860
+ # @type Pods: :class:`Tencentcloud::Tcm.v20210413.models.PodsMetricSource`
861
+ # @param Resource: 使用资源指标扩进行自动扩缩容
862
+ # @type Resource: :class:`Tencentcloud::Tcm.v20210413.models.ResourceMetricSource`
863
+
864
+ attr_accessor :Type, :Pods, :Resource
865
+
866
+ def initialize(type=nil, pods=nil, resource=nil)
867
+ @Type = type
868
+ @Pods = pods
869
+ @Resource = resource
870
+ end
871
+
872
+ def deserialize(params)
873
+ @Type = params['Type']
874
+ unless params['Pods'].nil?
875
+ @Pods = PodsMetricSource.new
876
+ @Pods.deserialize(params['Pods'])
877
+ end
878
+ unless params['Resource'].nil?
879
+ @Resource = ResourceMetricSource.new
880
+ @Resource.deserialize(params['Resource'])
881
+ end
882
+ end
883
+ end
884
+
885
+ # PodsMetricSource 定义了如何根据特定指标进行扩缩容
886
+ class PodsMetricSource < TencentCloud::Common::AbstractModel
887
+ # @param MetricName: 指标名
888
+ # @type MetricName: String
889
+ # @param TargetAverageValue: 目标值
890
+ # @type TargetAverageValue: String
891
+
892
+ attr_accessor :MetricName, :TargetAverageValue
893
+
894
+ def initialize(metricname=nil, targetaveragevalue=nil)
895
+ @MetricName = metricname
896
+ @TargetAverageValue = targetaveragevalue
897
+ end
898
+
899
+ def deserialize(params)
900
+ @MetricName = params['MetricName']
901
+ @TargetAverageValue = params['TargetAverageValue']
902
+ end
903
+ end
904
+
905
+ # Prometheus 配置
906
+ class PrometheusConfig < TencentCloud::Common::AbstractModel
907
+ # @param VpcId: 虚拟网络Id
908
+ # @type VpcId: String
909
+ # @param SubnetId: 子网Id
910
+ # @type SubnetId: String
911
+ # @param Region: 地域
912
+ # @type Region: String
913
+ # @param InstanceId: 关联已存在实例Id,不填则默认创建
914
+ # @type InstanceId: String
915
+
916
+ attr_accessor :VpcId, :SubnetId, :Region, :InstanceId
917
+
918
+ def initialize(vpcid=nil, subnetid=nil, region=nil, instanceid=nil)
919
+ @VpcId = vpcid
920
+ @SubnetId = subnetid
921
+ @Region = region
922
+ @InstanceId = instanceid
923
+ end
924
+
925
+ def deserialize(params)
926
+ @VpcId = params['VpcId']
927
+ @SubnetId = params['SubnetId']
928
+ @Region = params['Region']
929
+ @InstanceId = params['InstanceId']
930
+ end
931
+ end
932
+
933
+ # Prometheus状态信息
934
+ class PrometheusStatus < TencentCloud::Common::AbstractModel
935
+ # @param PrometheusId: Prometheus Id
936
+ # @type PrometheusId: String
937
+ # @param DisplayName: 展示名称
938
+ # @type DisplayName: String
939
+ # @param InstanceId: 实例Id
940
+ # @type InstanceId: String
941
+ # @param VpcId: 虚拟网络Id
942
+ # @type VpcId: String
943
+ # @param State: 状态
944
+ # @type State: String
945
+ # @param Region: 地区
946
+ # @type Region: String
947
+ # @param Grafana: Grafana信息
948
+ # 注意:此字段可能返回 null,表示取不到有效值。
949
+ # @type Grafana: :class:`Tencentcloud::Tcm.v20210413.models.GrafanaInfo`
950
+
951
+ attr_accessor :PrometheusId, :DisplayName, :InstanceId, :VpcId, :State, :Region, :Grafana
952
+
953
+ def initialize(prometheusid=nil, displayname=nil, instanceid=nil, vpcid=nil, state=nil, region=nil, grafana=nil)
954
+ @PrometheusId = prometheusid
955
+ @DisplayName = displayname
956
+ @InstanceId = instanceid
957
+ @VpcId = vpcid
958
+ @State = state
959
+ @Region = region
960
+ @Grafana = grafana
961
+ end
962
+
963
+ def deserialize(params)
964
+ @PrometheusId = params['PrometheusId']
965
+ @DisplayName = params['DisplayName']
966
+ @InstanceId = params['InstanceId']
967
+ @VpcId = params['VpcId']
968
+ @State = params['State']
969
+ @Region = params['Region']
970
+ unless params['Grafana'].nil?
971
+ @Grafana = GrafanaInfo.new
972
+ @Grafana.deserialize(params['Grafana'])
973
+ end
974
+ end
975
+ end
976
+
977
+ # Resource 定义了资源类型和数量
978
+ class Resource < TencentCloud::Common::AbstractModel
979
+ # @param Name: 资源类型 cpu/memory
980
+ # @type Name: String
981
+ # @param Quantity: 资源数量
982
+ # @type Quantity: String
983
+
984
+ attr_accessor :Name, :Quantity
985
+
986
+ def initialize(name=nil, quantity=nil)
987
+ @Name = name
988
+ @Quantity = quantity
989
+ end
990
+
991
+ def deserialize(params)
992
+ @Name = params['Name']
993
+ @Quantity = params['Quantity']
994
+ end
995
+ end
996
+
997
+ # ResourceMetricSource 定义了如何根据已知类型的资源指标进行扩缩容
998
+ class ResourceMetricSource < TencentCloud::Common::AbstractModel
999
+ # @param Name: 资源名称 cpu/memory
1000
+ # @type Name: String
1001
+ # @param TargetAverageUtilization: 目标平均利用率
1002
+ # @type TargetAverageUtilization: Integer
1003
+ # @param TargetAverageValue: 目标平均值
1004
+ # @type TargetAverageValue: String
1005
+
1006
+ attr_accessor :Name, :TargetAverageUtilization, :TargetAverageValue
1007
+
1008
+ def initialize(name=nil, targetaverageutilization=nil, targetaveragevalue=nil)
1009
+ @Name = name
1010
+ @TargetAverageUtilization = targetaverageutilization
1011
+ @TargetAverageValue = targetaveragevalue
1012
+ end
1013
+
1014
+ def deserialize(params)
1015
+ @Name = params['Name']
1016
+ @TargetAverageUtilization = params['TargetAverageUtilization']
1017
+ @TargetAverageValue = params['TargetAverageValue']
1018
+ end
1019
+ end
1020
+
1021
+ # ResourceRequirements 描述了计算资源需求。
1022
+ class ResourceRequirements < TencentCloud::Common::AbstractModel
1023
+ # @param Limits: Limits 描述了允许的最大计算资源量。
1024
+ # @type Limits: Array
1025
+ # @param Requests: Requests 描述所需的最小计算资源量。
1026
+ # @type Requests: Array
1027
+
1028
+ attr_accessor :Limits, :Requests
1029
+
1030
+ def initialize(limits=nil, requests=nil)
1031
+ @Limits = limits
1032
+ @Requests = requests
1033
+ end
1034
+
1035
+ def deserialize(params)
1036
+ unless params['Limits'].nil?
1037
+ @Limits = []
1038
+ params['Limits'].each do |i|
1039
+ resource_tmp = Resource.new
1040
+ resource_tmp.deserialize(i)
1041
+ @Limits << resource_tmp
1042
+ end
1043
+ end
1044
+ unless params['Requests'].nil?
1045
+ @Requests = []
1046
+ params['Requests'].each do |i|
1047
+ resource_tmp = Resource.new
1048
+ resource_tmp.deserialize(i)
1049
+ @Requests << resource_tmp
1050
+ end
1051
+ end
1052
+ end
1053
+ end
1054
+
1055
+ # 选中的项目
1056
+ class SelectedItems < TencentCloud::Common::AbstractModel
1057
+ # @param Namespace: 命名空间
1058
+ # @type Namespace: String
1059
+ # @param ClusterName: 集群名称
1060
+ # @type ClusterName: String
1061
+ # @param ItemName: 选中项目名字
1062
+ # @type ItemName: String
1063
+ # @param Gateways: ingress gw的名称列表
1064
+ # @type Gateways: Array
1065
+
1066
+ attr_accessor :Namespace, :ClusterName, :ItemName, :Gateways
1067
+
1068
+ def initialize(namespace=nil, clustername=nil, itemname=nil, gateways=nil)
1069
+ @Namespace = namespace
1070
+ @ClusterName = clustername
1071
+ @ItemName = itemname
1072
+ @Gateways = gateways
1073
+ end
1074
+
1075
+ def deserialize(params)
1076
+ @Namespace = params['Namespace']
1077
+ @ClusterName = params['ClusterName']
1078
+ @ItemName = params['ItemName']
1079
+ @Gateways = params['Gateways']
1080
+ end
1081
+ end
1082
+
1083
+ # 被选中的范围
1084
+ class SelectedRange < TencentCloud::Common::AbstractModel
1085
+ # @param Items: 选中的项目详细内容
1086
+ # @type Items: Array
1087
+ # @param All: 是否全选
1088
+ # @type All: Boolean
1089
+
1090
+ attr_accessor :Items, :All
1091
+
1092
+ def initialize(items=nil, all=nil)
1093
+ @Items = items
1094
+ @All = all
1095
+ end
1096
+
1097
+ def deserialize(params)
1098
+ unless params['Items'].nil?
1099
+ @Items = []
1100
+ params['Items'].each do |i|
1101
+ selecteditems_tmp = SelectedItems.new
1102
+ selecteditems_tmp.deserialize(i)
1103
+ @Items << selecteditems_tmp
1104
+ end
1105
+ end
1106
+ @All = params['All']
1107
+ end
1108
+ end
1109
+
1110
+ # Service信息
1111
+ class Service < TencentCloud::Common::AbstractModel
1112
+ # @param Type: ClusterIP/NodePort/LoadBalancer
1113
+ # @type Type: String
1114
+ # @param CLBDirectAccess: 是否开启LB直通Pod
1115
+ # @type CLBDirectAccess: Boolean
1116
+ # @param ExternalTrafficPolicy: 服务是否希望将外部流量路由到节点本地或集群范围的端点。 有两个可用选项:Cluster(默认)和 Local。Cluster 隐藏了客户端源 IP,可能导致第二跳到另一个节点;Local 保留客户端源 IP 并避免 LoadBalancer 和 NodePort 类型服务的第二跳。
1117
+ # @type ExternalTrafficPolicy: String
1118
+
1119
+ attr_accessor :Type, :CLBDirectAccess, :ExternalTrafficPolicy
1120
+
1121
+ def initialize(type=nil, clbdirectaccess=nil, externaltrafficpolicy=nil)
1122
+ @Type = type
1123
+ @CLBDirectAccess = clbdirectaccess
1124
+ @ExternalTrafficPolicy = externaltrafficpolicy
1125
+ end
1126
+
1127
+ def deserialize(params)
1128
+ @Type = params['Type']
1129
+ @CLBDirectAccess = params['CLBDirectAccess']
1130
+ @ExternalTrafficPolicy = params['ExternalTrafficPolicy']
1131
+ end
1132
+ end
1133
+
1134
+ # 调用链配置
1135
+ class TracingConfig < TencentCloud::Common::AbstractModel
1136
+ # @param Sampling: 调用链采样率,百分比
1137
+ # @type Sampling: Float
1138
+
1139
+ attr_accessor :Sampling
1140
+
1141
+ def initialize(sampling=nil)
1142
+ @Sampling = sampling
1143
+ end
1144
+
1145
+ def deserialize(params)
1146
+ @Sampling = params['Sampling']
1147
+ end
1148
+ end
1149
+
1150
+ # 工作负载配置
1151
+ class WorkloadConfig < TencentCloud::Common::AbstractModel
1152
+ # @param Replicas: 工作副本数
1153
+ # @type Replicas: Integer
1154
+ # @param Resources: 资源限制
1155
+ # @type Resources: :class:`Tencentcloud::Tcm.v20210413.models.ResourceRequirements`
1156
+ # @param HorizontalPodAutoscaler: HPA策略
1157
+ # @type HorizontalPodAutoscaler: :class:`Tencentcloud::Tcm.v20210413.models.HorizontalPodAutoscalerSpec`
1158
+ # @param SelectedNodeList: 部署到指定节点
1159
+ # @type SelectedNodeList: Array
1160
+
1161
+ attr_accessor :Replicas, :Resources, :HorizontalPodAutoscaler, :SelectedNodeList
1162
+
1163
+ def initialize(replicas=nil, resources=nil, horizontalpodautoscaler=nil, selectednodelist=nil)
1164
+ @Replicas = replicas
1165
+ @Resources = resources
1166
+ @HorizontalPodAutoscaler = horizontalpodautoscaler
1167
+ @SelectedNodeList = selectednodelist
1168
+ end
1169
+
1170
+ def deserialize(params)
1171
+ @Replicas = params['Replicas']
1172
+ unless params['Resources'].nil?
1173
+ @Resources = ResourceRequirements.new
1174
+ @Resources.deserialize(params['Resources'])
1175
+ end
1176
+ unless params['HorizontalPodAutoscaler'].nil?
1177
+ @HorizontalPodAutoscaler = HorizontalPodAutoscalerSpec.new
1178
+ @HorizontalPodAutoscaler.deserialize(params['HorizontalPodAutoscaler'])
1179
+ end
1180
+ @SelectedNodeList = params['SelectedNodeList']
1181
+ end
1182
+ end
1183
+
1184
+ end
1185
+ end
1186
+ end
1187
+
metadata ADDED
@@ -0,0 +1,66 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: tencentcloud-sdk-tcm
3
+ version: !ruby/object:Gem::Version
4
+ version: 1.0.200
5
+ platform: ruby
6
+ authors:
7
+ - Tencent Cloud
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2021-11-11 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: tencentcloud-sdk-common
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: '1.0'
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: '1.0'
27
+ description: Tencent Cloud Ruby SDK is the official software development kit, which
28
+ allows Ruby developers to write software that makes use of Tencent Cloud service
29
+ TCM.
30
+ email:
31
+ - tencentcloudapi@tencent.com
32
+ executables: []
33
+ extensions: []
34
+ extra_rdoc_files: []
35
+ files:
36
+ - lib/VERSION
37
+ - lib/tencentcloud-sdk-tcm.rb
38
+ - lib/v20210413/client.rb
39
+ - lib/v20210413/models.rb
40
+ homepage: https://github.com/TencentCloud/tencentcloud-sdk-ruby
41
+ licenses:
42
+ - Apache-2.0
43
+ metadata:
44
+ source_code_uri: https://github.com/TencentCloud/tencentcloud-sdk-ruby/tencentcloud-sdk-tcm
45
+ changelog_uri: https://github.com/TencentCloud/tencentcloud-sdk-ruby/blob/master/CHANGELOG.md
46
+ post_install_message:
47
+ rdoc_options: []
48
+ require_paths:
49
+ - lib
50
+ required_ruby_version: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - ">="
53
+ - !ruby/object:Gem::Version
54
+ version: '0'
55
+ required_rubygems_version: !ruby/object:Gem::Requirement
56
+ requirements:
57
+ - - ">="
58
+ - !ruby/object:Gem::Version
59
+ version: '0'
60
+ requirements: []
61
+ rubyforge_project:
62
+ rubygems_version: 2.6.14
63
+ signing_key:
64
+ specification_version: 4
65
+ summary: Tencent Cloud SDK for Ruby - TCM
66
+ test_files: []