tencentcloud-sdk-cvm 1.0.226 → 1.0.227

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: cc300bd41b664b3b4cffc15b128af08210e4e1b7
4
- data.tar.gz: 40173b790d7882fa9a37ffeaa9eac655c880aaad
3
+ metadata.gz: 7aa909a41c3327880bda47c4739e404735cf2cbb
4
+ data.tar.gz: b2b8c15e716a28a642e7a90ed1f25ed6cf9447b0
5
5
  SHA512:
6
- metadata.gz: f3bf5339731b5fbef4a8e138d2194a902c8144d7e256230c5b9a056052e95dec6c72f43daab9d6c541e6b0af44487985d51bc7046cae7eaef2c9c00b8edb8185
7
- data.tar.gz: f89cb46036addd8a72139aeacab621c80b8b20ca11ca2931ca75ff9736a281e089352e097e56e7ecf12f926ba7c4f6351b0ef49b3915be5fb3b47b4169ee122c
6
+ metadata.gz: 4f4f61a80a9c47e1e0a06713966187cda8aa22b76cea28e11b5cea0ecd64eef3381f92a9144ed17dee7ff7c92446c529adf36a5960227fd654cf6d7757028a62
7
+ data.tar.gz: dfc00093dc2543be0d058ecf2b83f11a77660de90471ec5425d4070851aa83dfcc3477857b2deeb785f71816cd71d43376e0e0c718e4ee9628a4d69eb7658bd1
data/lib/VERSION CHANGED
@@ -1 +1 @@
1
- 1.0.226
1
+ 1.0.227
@@ -185,6 +185,58 @@ module TencentCloud
185
185
  raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
186
186
  end
187
187
 
188
+ # 本接口(CreateLaunchTemplate)用于创建实例启动模板。
189
+
190
+ # 实例启动模板是一种配置数据并可用于创建实例,其内容包含创建实例所需的配置,比如实例类型,数据盘和系统盘的类型和大小,以及安全组等信息。
191
+
192
+ # 初次创建实例模板后,其模板版本为默认版本1,新版本的创建可使用CreateLaunchTemplateVersion创建,版本号递增。默认情况下,在RunInstances中指定实例启动模板,若不指定模板版本号,则使用默认版本。
193
+
194
+ # @param request: Request instance for CreateLaunchTemplate.
195
+ # @type request: :class:`Tencentcloud::cvm::V20170312::CreateLaunchTemplateRequest`
196
+ # @rtype: :class:`Tencentcloud::cvm::V20170312::CreateLaunchTemplateResponse`
197
+ def CreateLaunchTemplate(request)
198
+ body = send_request('CreateLaunchTemplate', request.serialize)
199
+ response = JSON.parse(body)
200
+ if response['Response'].key?('Error') == false
201
+ model = CreateLaunchTemplateResponse.new
202
+ model.deserialize(response['Response'])
203
+ model
204
+ else
205
+ code = response['Response']['Error']['Code']
206
+ message = response['Response']['Error']['Message']
207
+ reqid = response['Response']['RequestId']
208
+ raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid)
209
+ end
210
+ rescue TencentCloud::Common::TencentCloudSDKException => e
211
+ raise e
212
+ rescue StandardError => e
213
+ raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
214
+ end
215
+
216
+ # 本接口(CreateLaunchTemplateVersion)根据指定的实例模板ID以及对应的模板版本号创建新的实例启动模板,若未指定模板版本号则使用默认版本号。每个实例启动模板最多创建30个版本。
217
+
218
+ # @param request: Request instance for CreateLaunchTemplateVersion.
219
+ # @type request: :class:`Tencentcloud::cvm::V20170312::CreateLaunchTemplateVersionRequest`
220
+ # @rtype: :class:`Tencentcloud::cvm::V20170312::CreateLaunchTemplateVersionResponse`
221
+ def CreateLaunchTemplateVersion(request)
222
+ body = send_request('CreateLaunchTemplateVersion', request.serialize)
223
+ response = JSON.parse(body)
224
+ if response['Response'].key?('Error') == false
225
+ model = CreateLaunchTemplateVersionResponse.new
226
+ model.deserialize(response['Response'])
227
+ model
228
+ else
229
+ code = response['Response']['Error']['Code']
230
+ message = response['Response']['Error']['Message']
231
+ reqid = response['Response']['RequestId']
232
+ raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid)
233
+ end
234
+ rescue TencentCloud::Common::TencentCloudSDKException => e
235
+ raise e
236
+ rescue StandardError => e
237
+ raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
238
+ end
239
+
188
240
  # 本接口 (DeleteDisasterRecoverGroups)用于删除[分散置放群组](https://cloud.tencent.com/document/product/213/15486)。只有空的置放群组才能被删除,非空的群组需要先销毁组内所有云服务器,才能执行删除操作,不然会产生删除置放群组失败的错误。
189
241
 
190
242
  # @param request: Request instance for DeleteDisasterRecoverGroups.
@@ -264,6 +316,54 @@ module TencentCloud
264
316
  raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
265
317
  end
266
318
 
319
+ # 本接口(DeleteLaunchTemplate)用于删除一个实例启动模板。
320
+
321
+ # @param request: Request instance for DeleteLaunchTemplate.
322
+ # @type request: :class:`Tencentcloud::cvm::V20170312::DeleteLaunchTemplateRequest`
323
+ # @rtype: :class:`Tencentcloud::cvm::V20170312::DeleteLaunchTemplateResponse`
324
+ def DeleteLaunchTemplate(request)
325
+ body = send_request('DeleteLaunchTemplate', request.serialize)
326
+ response = JSON.parse(body)
327
+ if response['Response'].key?('Error') == false
328
+ model = DeleteLaunchTemplateResponse.new
329
+ model.deserialize(response['Response'])
330
+ model
331
+ else
332
+ code = response['Response']['Error']['Code']
333
+ message = response['Response']['Error']['Message']
334
+ reqid = response['Response']['RequestId']
335
+ raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid)
336
+ end
337
+ rescue TencentCloud::Common::TencentCloudSDKException => e
338
+ raise e
339
+ rescue StandardError => e
340
+ raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
341
+ end
342
+
343
+ # 本接口(DeleteLaunchTemplateVersions)用于删除一个或者多个实例启动模板版本。
344
+
345
+ # @param request: Request instance for DeleteLaunchTemplateVersions.
346
+ # @type request: :class:`Tencentcloud::cvm::V20170312::DeleteLaunchTemplateVersionsRequest`
347
+ # @rtype: :class:`Tencentcloud::cvm::V20170312::DeleteLaunchTemplateVersionsResponse`
348
+ def DeleteLaunchTemplateVersions(request)
349
+ body = send_request('DeleteLaunchTemplateVersions', request.serialize)
350
+ response = JSON.parse(body)
351
+ if response['Response'].key?('Error') == false
352
+ model = DeleteLaunchTemplateVersionsResponse.new
353
+ model.deserialize(response['Response'])
354
+ model
355
+ else
356
+ code = response['Response']['Error']['Code']
357
+ message = response['Response']['Error']['Message']
358
+ reqid = response['Response']['RequestId']
359
+ raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid)
360
+ end
361
+ rescue TencentCloud::Common::TencentCloudSDKException => e
362
+ raise e
363
+ rescue StandardError => e
364
+ raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
365
+ end
366
+
267
367
  # 本接口(DescribeAccountQuota)用于查询用户配额详情。
268
368
 
269
369
  # @param request: Request instance for DescribeAccountQuota.
@@ -730,6 +830,54 @@ module TencentCloud
730
830
  raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
731
831
  end
732
832
 
833
+ # 本接口(DescribeLaunchTemplateVersions)用于查询实例模板版本信息。
834
+
835
+ # @param request: Request instance for DescribeLaunchTemplateVersions.
836
+ # @type request: :class:`Tencentcloud::cvm::V20170312::DescribeLaunchTemplateVersionsRequest`
837
+ # @rtype: :class:`Tencentcloud::cvm::V20170312::DescribeLaunchTemplateVersionsResponse`
838
+ def DescribeLaunchTemplateVersions(request)
839
+ body = send_request('DescribeLaunchTemplateVersions', request.serialize)
840
+ response = JSON.parse(body)
841
+ if response['Response'].key?('Error') == false
842
+ model = DescribeLaunchTemplateVersionsResponse.new
843
+ model.deserialize(response['Response'])
844
+ model
845
+ else
846
+ code = response['Response']['Error']['Code']
847
+ message = response['Response']['Error']['Message']
848
+ reqid = response['Response']['RequestId']
849
+ raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid)
850
+ end
851
+ rescue TencentCloud::Common::TencentCloudSDKException => e
852
+ raise e
853
+ rescue StandardError => e
854
+ raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
855
+ end
856
+
857
+ # 本接口(DescribeLaunchTemplates)用于查询一个或者多个实例启动模板。
858
+
859
+ # @param request: Request instance for DescribeLaunchTemplates.
860
+ # @type request: :class:`Tencentcloud::cvm::V20170312::DescribeLaunchTemplatesRequest`
861
+ # @rtype: :class:`Tencentcloud::cvm::V20170312::DescribeLaunchTemplatesResponse`
862
+ def DescribeLaunchTemplates(request)
863
+ body = send_request('DescribeLaunchTemplates', request.serialize)
864
+ response = JSON.parse(body)
865
+ if response['Response'].key?('Error') == false
866
+ model = DescribeLaunchTemplatesResponse.new
867
+ model.deserialize(response['Response'])
868
+ model
869
+ else
870
+ code = response['Response']['Error']['Code']
871
+ message = response['Response']['Error']['Message']
872
+ reqid = response['Response']['RequestId']
873
+ raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid)
874
+ end
875
+ rescue TencentCloud::Common::TencentCloudSDKException => e
876
+ raise e
877
+ rescue StandardError => e
878
+ raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
879
+ end
880
+
733
881
  # 本接口(DescribeRegions)用于查询地域信息。因平台策略原因,该接口暂时停止更新,为确保您正常调用,可切换至新链接:https://cloud.tencent.com/document/product/1278/55255。
734
882
 
735
883
  # @param request: Request instance for DescribeRegions.
@@ -1525,6 +1673,30 @@ module TencentCloud
1525
1673
  raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
1526
1674
  end
1527
1675
 
1676
+ # 本接口(ModifyLaunchTemplateDefaultVersion)用于修改实例启动模板默认版本。
1677
+
1678
+ # @param request: Request instance for ModifyLaunchTemplateDefaultVersion.
1679
+ # @type request: :class:`Tencentcloud::cvm::V20170312::ModifyLaunchTemplateDefaultVersionRequest`
1680
+ # @rtype: :class:`Tencentcloud::cvm::V20170312::ModifyLaunchTemplateDefaultVersionResponse`
1681
+ def ModifyLaunchTemplateDefaultVersion(request)
1682
+ body = send_request('ModifyLaunchTemplateDefaultVersion', request.serialize)
1683
+ response = JSON.parse(body)
1684
+ if response['Response'].key?('Error') == false
1685
+ model = ModifyLaunchTemplateDefaultVersionResponse.new
1686
+ model.deserialize(response['Response'])
1687
+ model
1688
+ else
1689
+ code = response['Response']['Error']['Code']
1690
+ message = response['Response']['Error']['Message']
1691
+ reqid = response['Response']['RequestId']
1692
+ raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid)
1693
+ end
1694
+ rescue TencentCloud::Common::TencentCloudSDKException => e
1695
+ raise e
1696
+ rescue StandardError => e
1697
+ raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
1698
+ end
1699
+
1528
1700
  # 本接口(PurchaseReservedInstancesOffering)用于用户购买一个或者多个指定配置的预留实例
1529
1701
 
1530
1702
  # @param request: Request instance for PurchaseReservedInstancesOffering.
@@ -482,6 +482,374 @@ module TencentCloud
482
482
  end
483
483
  end
484
484
 
485
+ # CreateLaunchTemplate请求参数结构体
486
+ class CreateLaunchTemplateRequest < TencentCloud::Common::AbstractModel
487
+ # @param LaunchTemplateName: 实例启动模板名称。长度为2~128个英文或中文字符。
488
+ # @type LaunchTemplateName: String
489
+ # @param Placement: 实例所在的位置。通过该参数可以指定实例所属可用区,所属项目,所属宿主机(在专用宿主机上创建子机时指定)等属性。
490
+ # @type Placement: :class:`Tencentcloud::Cvm.v20170312.models.Placement`
491
+ # @param ImageId: 指定有效的[镜像](https://cloud.tencent.com/document/product/213/4940)ID,格式形如`img-xxx`。镜像类型分为四种:<br/><li>公共镜像</li><li>自定义镜像</li><li>共享镜像</li><li>服务市场镜像</li><br/>可通过以下方式获取可用的镜像ID:<br/><li>`公共镜像`、`自定义镜像`、`共享镜像`的镜像ID可通过登录[控制台](https://console.cloud.tencent.com/cvm/image?rid=1&imageType=PUBLIC_IMAGE)查询;`服务镜像市场`的镜像ID可通过[云市场](https://market.cloud.tencent.com/list)查询。</li><li>通过调用接口 [DescribeImages](https://cloud.tencent.com/document/api/213/15715) ,传入InstanceType获取当前机型支持的镜像列表,取返回信息中的`ImageId`字段。</li>
492
+ # @type ImageId: String
493
+ # @param LaunchTemplateVersionDescription: 实例启动模板版本描述。长度为2~256个英文或中文字符。
494
+ # @type LaunchTemplateVersionDescription: String
495
+ # @param InstanceType: 实例机型。不同实例机型指定了不同的资源规格。
496
+ # <br><li>对于付费模式为PREPAID或POSTPAID\_BY\_HOUR的实例创建,具体取值可通过调用接口[DescribeInstanceTypeConfigs](https://cloud.tencent.com/document/api/213/15749)来获得最新的规格表或参见[实例规格](https://cloud.tencent.com/document/product/213/11518)描述。若不指定该参数,则系统将根据当前地域的资源售卖情况动态指定默认机型。<br><li>对于付费模式为CDHPAID的实例创建,该参数以"CDH_"为前缀,根据CPU和内存配置生成,具体形式为:CDH_XCXG,例如对于创建CPU为1核,内存为1G大小的专用宿主机的实例,该参数应该为CDH_1C1G。
497
+ # @type InstanceType: String
498
+ # @param SystemDisk: 实例系统盘配置信息。若不指定该参数,则按照系统默认值进行分配。
499
+ # @type SystemDisk: :class:`Tencentcloud::Cvm.v20170312.models.SystemDisk`
500
+ # @param DataDisks: 实例数据盘配置信息。若不指定该参数,则默认不购买数据盘。支持购买的时候指定21块数据盘,其中最多包含1块LOCAL_BASIC数据盘或者LOCAL_SSD数据盘,最多包含20块CLOUD_BASIC数据盘、CLOUD_PREMIUM数据盘或者CLOUD_SSD数据盘。
501
+ # @type DataDisks: Array
502
+ # @param VirtualPrivateCloud: 私有网络相关信息配置。通过该参数可以指定私有网络的ID,子网ID等信息。若不指定该参数,则默认使用基础网络。若在此参数中指定了私有网络IP,即表示每个实例的主网卡IP;同时,InstanceCount参数必须与私有网络IP的个数一致且不能大于20。
503
+ # @type VirtualPrivateCloud: :class:`Tencentcloud::Cvm.v20170312.models.VirtualPrivateCloud`
504
+ # @param InternetAccessible: 公网带宽相关信息设置。若不指定该参数,则默认公网带宽为0Mbps。
505
+ # @type InternetAccessible: :class:`Tencentcloud::Cvm.v20170312.models.InternetAccessible`
506
+ # @param InstanceCount: 购买实例数量。包年包月实例取值范围:[1,300],按量计费实例取值范围:[1,100]。默认取值:1。指定购买实例的数量不能超过用户所能购买的剩余配额数量,具体配额相关限制详见[CVM实例购买限制](https://cloud.tencent.com/document/product/213/2664)。
507
+ # @type InstanceCount: Integer
508
+ # @param InstanceName: 实例显示名称。<br><li>不指定实例显示名称则默认显示‘未命名’。</li><li>购买多台实例,如果指定模式串`{R:x}`,表示生成数字`[x, x+n-1]`,其中`n`表示购买实例的数量,例如`server_{R:3}`,购买1台时,实例显示名称为`server_3`;购买2台时,实例显示名称分别为`server_3`,`server_4`。支持指定多个模式串`{R:x}`。</li><li>购买多台实例,如果不指定模式串,则在实例显示名称添加后缀`1、2...n`,其中`n`表示购买实例的数量,例如`server_`,购买2台时,实例显示名称分别为`server_1`,`server_2`。</li><li>最多支持60个字符(包含模式串)。
509
+ # @type InstanceName: String
510
+ # @param LoginSettings: 实例登录设置。通过该参数可以设置实例的登录方式密码、密钥或保持镜像的原始登录设置。默认情况下会随机生成密码,并以站内信方式知会到用户。
511
+ # @type LoginSettings: :class:`Tencentcloud::Cvm.v20170312.models.LoginSettings`
512
+ # @param SecurityGroupIds: 实例所属安全组。该参数可以通过调用 [DescribeSecurityGroups](https://cloud.tencent.com/document/api/215/15808) 的返回值中的sgId字段来获取。若不指定该参数,则绑定默认安全组。
513
+ # @type SecurityGroupIds: Array
514
+ # @param EnhancedService: 增强服务。通过该参数可以指定是否开启云安全、云监控等服务。若不指定该参数,则默认公共镜像开启云监控、云安全服务;自定义镜像与镜像市场镜像默认不开启云监控,云安全服务,而使用镜像里保留的服务。
515
+ # @type EnhancedService: :class:`Tencentcloud::Cvm.v20170312.models.EnhancedService`
516
+ # @param ClientToken: 用于保证请求幂等性的字符串。该字符串由客户生成,需保证不同请求之间唯一,最大值不超过64个ASCII字符。若不指定该参数,则无法保证请求的幂等性。
517
+ # @type ClientToken: String
518
+ # @param HostName: 云服务器的主机名。<br><li>点号(.)和短横线(-)不能作为 HostName 的首尾字符,不能连续使用。<br><li>Windows 实例:名字符长度为[2, 15],允许字母(不限制大小写)、数字和短横线(-)组成,不支持点号(.),不能全是数字。<br><li>其他类型(Linux 等)实例:字符长度为[2, 60],允许支持多个点号,点之间为一段,每段允许字母(不限制大小写)、数字和短横线(-)组成。
519
+ # @type HostName: String
520
+ # @param ActionTimer: 定时任务。通过该参数可以为实例指定定时任务,目前仅支持定时销毁。
521
+ # @type ActionTimer: :class:`Tencentcloud::Cvm.v20170312.models.ActionTimer`
522
+ # @param DisasterRecoverGroupIds: 置放群组id,仅支持指定一个。
523
+ # @type DisasterRecoverGroupIds: Array
524
+ # @param TagSpecification: 标签描述列表。通过指定该参数可以同时绑定标签到相应的资源实例,当前仅支持绑定标签到云服务器实例。
525
+ # @type TagSpecification: Array
526
+ # @param InstanceMarketOptions: 实例的市场相关选项,如竞价实例相关参数,若指定实例的付费模式为竞价付费则该参数必传。
527
+ # @type InstanceMarketOptions: :class:`Tencentcloud::Cvm.v20170312.models.InstanceMarketOptionsRequest`
528
+ # @param UserData: 提供给实例使用的用户数据,需要以 base64 方式编码,支持的最大数据大小为 16KB。关于获取此参数的详细介绍,请参阅[Windows](https://cloud.tencent.com/document/product/213/17526)和[Linux](https://cloud.tencent.com/document/product/213/17525)启动时运行命令。
529
+ # @type UserData: String
530
+ # @param DryRun: 是否只预检此次请求。
531
+ # true:发送检查请求,不会创建实例。检查项包括是否填写了必需参数,请求格式,业务限制和云服务器库存。
532
+ # 如果检查不通过,则返回对应错误码;
533
+ # 如果检查通过,则返回RequestId.
534
+ # false(默认):发送正常请求,通过检查后直接创建实例。
535
+ # @type DryRun: Boolean
536
+ # @param CamRoleName: CAM角色名称。可通过[`DescribeRoleList`](https://cloud.tencent.com/document/product/598/13887)接口返回值中的`roleName`获取。
537
+ # @type CamRoleName: String
538
+ # @param HpcClusterId: 高性能计算集群ID。若创建的实例为高性能计算实例,需指定实例放置的集群,否则不可指定。
539
+ # @type HpcClusterId: String
540
+ # @param InstanceChargeType: 实例[计费类型](https://cloud.tencent.com/document/product/213/2180)。<br><li>PREPAID:预付费,即包年包月<br><li>POSTPAID_BY_HOUR:按小时后付费<br><li>CDHPAID:独享子机(基于专用宿主机创建,宿主机部分的资源不收费)<br><li>SPOTPAID:竞价付费<br>默认值:POSTPAID_BY_HOUR。
541
+ # @type InstanceChargeType: String
542
+ # @param InstanceChargePrepaid: 预付费模式,即包年包月相关参数设置。通过该参数可以指定包年包月实例的购买时长、是否设置自动续费等属性。若指定实例的付费模式为预付费则该参数必传。
543
+ # @type InstanceChargePrepaid: :class:`Tencentcloud::Cvm.v20170312.models.InstanceChargePrepaid`
544
+
545
+ attr_accessor :LaunchTemplateName, :Placement, :ImageId, :LaunchTemplateVersionDescription, :InstanceType, :SystemDisk, :DataDisks, :VirtualPrivateCloud, :InternetAccessible, :InstanceCount, :InstanceName, :LoginSettings, :SecurityGroupIds, :EnhancedService, :ClientToken, :HostName, :ActionTimer, :DisasterRecoverGroupIds, :TagSpecification, :InstanceMarketOptions, :UserData, :DryRun, :CamRoleName, :HpcClusterId, :InstanceChargeType, :InstanceChargePrepaid
546
+
547
+ def initialize(launchtemplatename=nil, placement=nil, imageid=nil, launchtemplateversiondescription=nil, instancetype=nil, systemdisk=nil, datadisks=nil, virtualprivatecloud=nil, internetaccessible=nil, instancecount=nil, instancename=nil, loginsettings=nil, securitygroupids=nil, enhancedservice=nil, clienttoken=nil, hostname=nil, actiontimer=nil, disasterrecovergroupids=nil, tagspecification=nil, instancemarketoptions=nil, userdata=nil, dryrun=nil, camrolename=nil, hpcclusterid=nil, instancechargetype=nil, instancechargeprepaid=nil)
548
+ @LaunchTemplateName = launchtemplatename
549
+ @Placement = placement
550
+ @ImageId = imageid
551
+ @LaunchTemplateVersionDescription = launchtemplateversiondescription
552
+ @InstanceType = instancetype
553
+ @SystemDisk = systemdisk
554
+ @DataDisks = datadisks
555
+ @VirtualPrivateCloud = virtualprivatecloud
556
+ @InternetAccessible = internetaccessible
557
+ @InstanceCount = instancecount
558
+ @InstanceName = instancename
559
+ @LoginSettings = loginsettings
560
+ @SecurityGroupIds = securitygroupids
561
+ @EnhancedService = enhancedservice
562
+ @ClientToken = clienttoken
563
+ @HostName = hostname
564
+ @ActionTimer = actiontimer
565
+ @DisasterRecoverGroupIds = disasterrecovergroupids
566
+ @TagSpecification = tagspecification
567
+ @InstanceMarketOptions = instancemarketoptions
568
+ @UserData = userdata
569
+ @DryRun = dryrun
570
+ @CamRoleName = camrolename
571
+ @HpcClusterId = hpcclusterid
572
+ @InstanceChargeType = instancechargetype
573
+ @InstanceChargePrepaid = instancechargeprepaid
574
+ end
575
+
576
+ def deserialize(params)
577
+ @LaunchTemplateName = params['LaunchTemplateName']
578
+ unless params['Placement'].nil?
579
+ @Placement = Placement.new
580
+ @Placement.deserialize(params['Placement'])
581
+ end
582
+ @ImageId = params['ImageId']
583
+ @LaunchTemplateVersionDescription = params['LaunchTemplateVersionDescription']
584
+ @InstanceType = params['InstanceType']
585
+ unless params['SystemDisk'].nil?
586
+ @SystemDisk = SystemDisk.new
587
+ @SystemDisk.deserialize(params['SystemDisk'])
588
+ end
589
+ unless params['DataDisks'].nil?
590
+ @DataDisks = []
591
+ params['DataDisks'].each do |i|
592
+ datadisk_tmp = DataDisk.new
593
+ datadisk_tmp.deserialize(i)
594
+ @DataDisks << datadisk_tmp
595
+ end
596
+ end
597
+ unless params['VirtualPrivateCloud'].nil?
598
+ @VirtualPrivateCloud = VirtualPrivateCloud.new
599
+ @VirtualPrivateCloud.deserialize(params['VirtualPrivateCloud'])
600
+ end
601
+ unless params['InternetAccessible'].nil?
602
+ @InternetAccessible = InternetAccessible.new
603
+ @InternetAccessible.deserialize(params['InternetAccessible'])
604
+ end
605
+ @InstanceCount = params['InstanceCount']
606
+ @InstanceName = params['InstanceName']
607
+ unless params['LoginSettings'].nil?
608
+ @LoginSettings = LoginSettings.new
609
+ @LoginSettings.deserialize(params['LoginSettings'])
610
+ end
611
+ @SecurityGroupIds = params['SecurityGroupIds']
612
+ unless params['EnhancedService'].nil?
613
+ @EnhancedService = EnhancedService.new
614
+ @EnhancedService.deserialize(params['EnhancedService'])
615
+ end
616
+ @ClientToken = params['ClientToken']
617
+ @HostName = params['HostName']
618
+ unless params['ActionTimer'].nil?
619
+ @ActionTimer = ActionTimer.new
620
+ @ActionTimer.deserialize(params['ActionTimer'])
621
+ end
622
+ @DisasterRecoverGroupIds = params['DisasterRecoverGroupIds']
623
+ unless params['TagSpecification'].nil?
624
+ @TagSpecification = []
625
+ params['TagSpecification'].each do |i|
626
+ tagspecification_tmp = TagSpecification.new
627
+ tagspecification_tmp.deserialize(i)
628
+ @TagSpecification << tagspecification_tmp
629
+ end
630
+ end
631
+ unless params['InstanceMarketOptions'].nil?
632
+ @InstanceMarketOptions = InstanceMarketOptionsRequest.new
633
+ @InstanceMarketOptions.deserialize(params['InstanceMarketOptions'])
634
+ end
635
+ @UserData = params['UserData']
636
+ @DryRun = params['DryRun']
637
+ @CamRoleName = params['CamRoleName']
638
+ @HpcClusterId = params['HpcClusterId']
639
+ @InstanceChargeType = params['InstanceChargeType']
640
+ unless params['InstanceChargePrepaid'].nil?
641
+ @InstanceChargePrepaid = InstanceChargePrepaid.new
642
+ @InstanceChargePrepaid.deserialize(params['InstanceChargePrepaid'])
643
+ end
644
+ end
645
+ end
646
+
647
+ # CreateLaunchTemplate返回参数结构体
648
+ class CreateLaunchTemplateResponse < TencentCloud::Common::AbstractModel
649
+ # @param LaunchTemplateId: 当通过本接口来创建实例启动模板时会返回该参数,表示创建成功的实例启动模板`ID`。
650
+ # @type LaunchTemplateId: String
651
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
652
+ # @type RequestId: String
653
+
654
+ attr_accessor :LaunchTemplateId, :RequestId
655
+
656
+ def initialize(launchtemplateid=nil, requestid=nil)
657
+ @LaunchTemplateId = launchtemplateid
658
+ @RequestId = requestid
659
+ end
660
+
661
+ def deserialize(params)
662
+ @LaunchTemplateId = params['LaunchTemplateId']
663
+ @RequestId = params['RequestId']
664
+ end
665
+ end
666
+
667
+ # CreateLaunchTemplateVersion请求参数结构体
668
+ class CreateLaunchTemplateVersionRequest < TencentCloud::Common::AbstractModel
669
+ # @param Placement: 实例所在的位置。通过该参数可以指定实例所属可用区,所属项目,所属宿主机(在专用宿主机上创建子机时指定)等属性。
670
+ # @type Placement: :class:`Tencentcloud::Cvm.v20170312.models.Placement`
671
+ # @param LaunchTemplateId: 启动模板ID,新版本将基于该实例启动模板ID创建。
672
+ # @type LaunchTemplateId: String
673
+ # @param LaunchTemplateVersion: 若给定,新实例启动模板将基于给定的版本号创建。若未指定则使用默认版本。
674
+ # @type LaunchTemplateVersion: Integer
675
+ # @param LaunchTemplateVersionDescription: 实例启动模板版本描述。长度为2~256个英文或中文字符。
676
+ # @type LaunchTemplateVersionDescription: String
677
+ # @param InstanceType: 实例机型。不同实例机型指定了不同的资源规格。
678
+ # <br><li>对于付费模式为PREPAID或POSTPAID\_BY\_HOUR的实例创建,具体取值可通过调用接口[DescribeInstanceTypeConfigs](https://cloud.tencent.com/document/api/213/15749)来获得最新的规格表或参见[实例规格](https://cloud.tencent.com/document/product/213/11518)描述。若不指定该参数,则系统将根据当前地域的资源售卖情况动态指定默认机型。<br><li>对于付费模式为CDHPAID的实例创建,该参数以"CDH_"为前缀,根据CPU和内存配置生成,具体形式为:CDH_XCXG,例如对于创建CPU为1核,内存为1G大小的专用宿主机的实例,该参数应该为CDH_1C1G。
679
+ # @type InstanceType: String
680
+ # @param ImageId: 指定有效的[镜像](https://cloud.tencent.com/document/product/213/4940)ID,格式形如`img-xxx`。镜像类型分为四种:<br/><li>公共镜像</li><li>自定义镜像</li><li>共享镜像</li><li>服务市场镜像</li><br/>可通过以下方式获取可用的镜像ID:<br/><li>`公共镜像`、`自定义镜像`、`共享镜像`的镜像ID可通过登录[控制台](https://console.cloud.tencent.com/cvm/image?rid=1&imageType=PUBLIC_IMAGE)查询;`服务镜像市场`的镜像ID可通过[云市场](https://market.cloud.tencent.com/list)查询。</li><li>通过调用接口 [DescribeImages](https://cloud.tencent.com/document/api/213/15715) ,传入InstanceType获取当前机型支持的镜像列表,取返回信息中的`ImageId`字段。</li>
681
+ # @type ImageId: String
682
+ # @param SystemDisk: 实例系统盘配置信息。若不指定该参数,则按照系统默认值进行分配。
683
+ # @type SystemDisk: :class:`Tencentcloud::Cvm.v20170312.models.SystemDisk`
684
+ # @param DataDisks: 实例数据盘配置信息。若不指定该参数,则默认不购买数据盘。支持购买的时候指定21块数据盘,其中最多包含1块LOCAL_BASIC数据盘或者LOCAL_SSD数据盘,最多包含20块CLOUD_BASIC数据盘、CLOUD_PREMIUM数据盘或者CLOUD_SSD数据盘。
685
+ # @type DataDisks: Array
686
+ # @param VirtualPrivateCloud: 私有网络相关信息配置。通过该参数可以指定私有网络的ID,子网ID等信息。若不指定该参数,则默认使用基础网络。若在此参数中指定了私有网络IP,即表示每个实例的主网卡IP;同时,InstanceCount参数必须与私有网络IP的个数一致且不能大于20。
687
+ # @type VirtualPrivateCloud: :class:`Tencentcloud::Cvm.v20170312.models.VirtualPrivateCloud`
688
+ # @param InternetAccessible: 公网带宽相关信息设置。若不指定该参数,则默认公网带宽为0Mbps。
689
+ # @type InternetAccessible: :class:`Tencentcloud::Cvm.v20170312.models.InternetAccessible`
690
+ # @param InstanceCount: 购买实例数量。包年包月实例取值范围:[1,300],按量计费实例取值范围:[1,100]。默认取值:1。指定购买实例的数量不能超过用户所能购买的剩余配额数量,具体配额相关限制详见[CVM实例购买限制](https://cloud.tencent.com/document/product/213/2664)。
691
+ # @type InstanceCount: Integer
692
+ # @param InstanceName: 实例显示名称。<br><li>不指定实例显示名称则默认显示‘未命名’。</li><li>购买多台实例,如果指定模式串`{R:x}`,表示生成数字`[x, x+n-1]`,其中`n`表示购买实例的数量,例如`server_{R:3}`,购买1台时,实例显示名称为`server_3`;购买2台时,实例显示名称分别为`server_3`,`server_4`。支持指定多个模式串`{R:x}`。</li><li>购买多台实例,如果不指定模式串,则在实例显示名称添加后缀`1、2...n`,其中`n`表示购买实例的数量,例如`server_`,购买2台时,实例显示名称分别为`server_1`,`server_2`。</li><li>最多支持60个字符(包含模式串)。
693
+ # @type InstanceName: String
694
+ # @param LoginSettings: 实例登录设置。通过该参数可以设置实例的登录方式密码、密钥或保持镜像的原始登录设置。默认情况下会随机生成密码,并以站内信方式知会到用户。
695
+ # @type LoginSettings: :class:`Tencentcloud::Cvm.v20170312.models.LoginSettings`
696
+ # @param SecurityGroupIds: 实例所属安全组。该参数可以通过调用 [DescribeSecurityGroups](https://cloud.tencent.com/document/api/215/15808) 的返回值中的sgId字段来获取。若不指定该参数,则绑定默认安全组。
697
+ # @type SecurityGroupIds: Array
698
+ # @param EnhancedService: 增强服务。通过该参数可以指定是否开启云安全、云监控等服务。若不指定该参数,则默认公共镜像开启云监控、云安全服务;自定义镜像与镜像市场镜像默认不开启云监控,云安全服务,而使用镜像里保留的服务。
699
+ # @type EnhancedService: :class:`Tencentcloud::Cvm.v20170312.models.EnhancedService`
700
+ # @param ClientToken: 用于保证请求幂等性的字符串。该字符串由客户生成,需保证不同请求之间唯一,最大值不超过64个ASCII字符。若不指定该参数,则无法保证请求的幂等性。
701
+ # @type ClientToken: String
702
+ # @param HostName: 云服务器的主机名。<br><li>点号(.)和短横线(-)不能作为 HostName 的首尾字符,不能连续使用。<br><li>Windows 实例:名字符长度为[2, 15],允许字母(不限制大小写)、数字和短横线(-)组成,不支持点号(.),不能全是数字。<br><li>其他类型(Linux 等)实例:字符长度为[2, 60],允许支持多个点号,点之间为一段,每段允许字母(不限制大小写)、数字和短横线(-)组成。
703
+ # @type HostName: String
704
+ # @param ActionTimer: 定时任务。通过该参数可以为实例指定定时任务,目前仅支持定时销毁。
705
+ # @type ActionTimer: :class:`Tencentcloud::Cvm.v20170312.models.ActionTimer`
706
+ # @param DisasterRecoverGroupIds: 置放群组id,仅支持指定一个。
707
+ # @type DisasterRecoverGroupIds: Array
708
+ # @param TagSpecification: 标签描述列表。通过指定该参数可以同时绑定标签到相应的资源实例,当前仅支持绑定标签到云服务器实例。
709
+ # @type TagSpecification: Array
710
+ # @param InstanceMarketOptions: 实例的市场相关选项,如竞价实例相关参数,若指定实例的付费模式为竞价付费则该参数必传。
711
+ # @type InstanceMarketOptions: :class:`Tencentcloud::Cvm.v20170312.models.InstanceMarketOptionsRequest`
712
+ # @param UserData: 提供给实例使用的用户数据,需要以 base64 方式编码,支持的最大数据大小为 16KB。关于获取此参数的详细介绍,请参阅[Windows](https://cloud.tencent.com/document/product/213/17526)和[Linux](https://cloud.tencent.com/document/product/213/17525)启动时运行命令。
713
+ # @type UserData: String
714
+ # @param DryRun: 是否只预检此次请求。
715
+ # true:发送检查请求,不会创建实例。检查项包括是否填写了必需参数,请求格式,业务限制和云服务器库存。
716
+ # 如果检查不通过,则返回对应错误码;
717
+ # 如果检查通过,则返回RequestId.
718
+ # false(默认):发送正常请求,通过检查后直接创建实例。
719
+ # @type DryRun: Boolean
720
+ # @param CamRoleName: CAM角色名称。可通过[`DescribeRoleList`](https://cloud.tencent.com/document/product/598/13887)接口返回值中的`roleName`获取。
721
+ # @type CamRoleName: String
722
+ # @param HpcClusterId: 高性能计算集群ID。若创建的实例为高性能计算实例,需指定实例放置的集群,否则不可指定。
723
+ # @type HpcClusterId: String
724
+ # @param InstanceChargeType: 实例[计费类型](https://cloud.tencent.com/document/product/213/2180)。<br><li>PREPAID:预付费,即包年包月<br><li>POSTPAID_BY_HOUR:按小时后付费<br><li>CDHPAID:独享子机(基于专用宿主机创建,宿主机部分的资源不收费)<br><li>SPOTPAID:竞价付费<br>默认值:POSTPAID_BY_HOUR。
725
+ # @type InstanceChargeType: String
726
+ # @param InstanceChargePrepaid: 预付费模式,即包年包月相关参数设置。通过该参数可以指定包年包月实例的购买时长、是否设置自动续费等属性。若指定实例的付费模式为预付费则该参数必传。
727
+ # @type InstanceChargePrepaid: :class:`Tencentcloud::Cvm.v20170312.models.InstanceChargePrepaid`
728
+
729
+ attr_accessor :Placement, :LaunchTemplateId, :LaunchTemplateVersion, :LaunchTemplateVersionDescription, :InstanceType, :ImageId, :SystemDisk, :DataDisks, :VirtualPrivateCloud, :InternetAccessible, :InstanceCount, :InstanceName, :LoginSettings, :SecurityGroupIds, :EnhancedService, :ClientToken, :HostName, :ActionTimer, :DisasterRecoverGroupIds, :TagSpecification, :InstanceMarketOptions, :UserData, :DryRun, :CamRoleName, :HpcClusterId, :InstanceChargeType, :InstanceChargePrepaid
730
+
731
+ def initialize(placement=nil, launchtemplateid=nil, launchtemplateversion=nil, launchtemplateversiondescription=nil, instancetype=nil, imageid=nil, systemdisk=nil, datadisks=nil, virtualprivatecloud=nil, internetaccessible=nil, instancecount=nil, instancename=nil, loginsettings=nil, securitygroupids=nil, enhancedservice=nil, clienttoken=nil, hostname=nil, actiontimer=nil, disasterrecovergroupids=nil, tagspecification=nil, instancemarketoptions=nil, userdata=nil, dryrun=nil, camrolename=nil, hpcclusterid=nil, instancechargetype=nil, instancechargeprepaid=nil)
732
+ @Placement = placement
733
+ @LaunchTemplateId = launchtemplateid
734
+ @LaunchTemplateVersion = launchtemplateversion
735
+ @LaunchTemplateVersionDescription = launchtemplateversiondescription
736
+ @InstanceType = instancetype
737
+ @ImageId = imageid
738
+ @SystemDisk = systemdisk
739
+ @DataDisks = datadisks
740
+ @VirtualPrivateCloud = virtualprivatecloud
741
+ @InternetAccessible = internetaccessible
742
+ @InstanceCount = instancecount
743
+ @InstanceName = instancename
744
+ @LoginSettings = loginsettings
745
+ @SecurityGroupIds = securitygroupids
746
+ @EnhancedService = enhancedservice
747
+ @ClientToken = clienttoken
748
+ @HostName = hostname
749
+ @ActionTimer = actiontimer
750
+ @DisasterRecoverGroupIds = disasterrecovergroupids
751
+ @TagSpecification = tagspecification
752
+ @InstanceMarketOptions = instancemarketoptions
753
+ @UserData = userdata
754
+ @DryRun = dryrun
755
+ @CamRoleName = camrolename
756
+ @HpcClusterId = hpcclusterid
757
+ @InstanceChargeType = instancechargetype
758
+ @InstanceChargePrepaid = instancechargeprepaid
759
+ end
760
+
761
+ def deserialize(params)
762
+ unless params['Placement'].nil?
763
+ @Placement = Placement.new
764
+ @Placement.deserialize(params['Placement'])
765
+ end
766
+ @LaunchTemplateId = params['LaunchTemplateId']
767
+ @LaunchTemplateVersion = params['LaunchTemplateVersion']
768
+ @LaunchTemplateVersionDescription = params['LaunchTemplateVersionDescription']
769
+ @InstanceType = params['InstanceType']
770
+ @ImageId = params['ImageId']
771
+ unless params['SystemDisk'].nil?
772
+ @SystemDisk = SystemDisk.new
773
+ @SystemDisk.deserialize(params['SystemDisk'])
774
+ end
775
+ unless params['DataDisks'].nil?
776
+ @DataDisks = []
777
+ params['DataDisks'].each do |i|
778
+ datadisk_tmp = DataDisk.new
779
+ datadisk_tmp.deserialize(i)
780
+ @DataDisks << datadisk_tmp
781
+ end
782
+ end
783
+ unless params['VirtualPrivateCloud'].nil?
784
+ @VirtualPrivateCloud = VirtualPrivateCloud.new
785
+ @VirtualPrivateCloud.deserialize(params['VirtualPrivateCloud'])
786
+ end
787
+ unless params['InternetAccessible'].nil?
788
+ @InternetAccessible = InternetAccessible.new
789
+ @InternetAccessible.deserialize(params['InternetAccessible'])
790
+ end
791
+ @InstanceCount = params['InstanceCount']
792
+ @InstanceName = params['InstanceName']
793
+ unless params['LoginSettings'].nil?
794
+ @LoginSettings = LoginSettings.new
795
+ @LoginSettings.deserialize(params['LoginSettings'])
796
+ end
797
+ @SecurityGroupIds = params['SecurityGroupIds']
798
+ unless params['EnhancedService'].nil?
799
+ @EnhancedService = EnhancedService.new
800
+ @EnhancedService.deserialize(params['EnhancedService'])
801
+ end
802
+ @ClientToken = params['ClientToken']
803
+ @HostName = params['HostName']
804
+ unless params['ActionTimer'].nil?
805
+ @ActionTimer = ActionTimer.new
806
+ @ActionTimer.deserialize(params['ActionTimer'])
807
+ end
808
+ @DisasterRecoverGroupIds = params['DisasterRecoverGroupIds']
809
+ unless params['TagSpecification'].nil?
810
+ @TagSpecification = []
811
+ params['TagSpecification'].each do |i|
812
+ tagspecification_tmp = TagSpecification.new
813
+ tagspecification_tmp.deserialize(i)
814
+ @TagSpecification << tagspecification_tmp
815
+ end
816
+ end
817
+ unless params['InstanceMarketOptions'].nil?
818
+ @InstanceMarketOptions = InstanceMarketOptionsRequest.new
819
+ @InstanceMarketOptions.deserialize(params['InstanceMarketOptions'])
820
+ end
821
+ @UserData = params['UserData']
822
+ @DryRun = params['DryRun']
823
+ @CamRoleName = params['CamRoleName']
824
+ @HpcClusterId = params['HpcClusterId']
825
+ @InstanceChargeType = params['InstanceChargeType']
826
+ unless params['InstanceChargePrepaid'].nil?
827
+ @InstanceChargePrepaid = InstanceChargePrepaid.new
828
+ @InstanceChargePrepaid.deserialize(params['InstanceChargePrepaid'])
829
+ end
830
+ end
831
+ end
832
+
833
+ # CreateLaunchTemplateVersion返回参数结构体
834
+ class CreateLaunchTemplateVersionResponse < TencentCloud::Common::AbstractModel
835
+ # @param LaunchTemplateVersionNumber: 新创建的实例启动模板版本号。
836
+ # @type LaunchTemplateVersionNumber: Integer
837
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
838
+ # @type RequestId: String
839
+
840
+ attr_accessor :LaunchTemplateVersionNumber, :RequestId
841
+
842
+ def initialize(launchtemplateversionnumber=nil, requestid=nil)
843
+ @LaunchTemplateVersionNumber = launchtemplateversionnumber
844
+ @RequestId = requestid
845
+ end
846
+
847
+ def deserialize(params)
848
+ @LaunchTemplateVersionNumber = params['LaunchTemplateVersionNumber']
849
+ @RequestId = params['RequestId']
850
+ end
851
+ end
852
+
485
853
  # 描述了数据盘的信息
486
854
  class DataDisk < TencentCloud::Common::AbstractModel
487
855
  # @param DiskSize: 数据盘大小,单位:GB。最小调整步长为10G,不同数据盘类型取值范围不同,具体限制详见:[存储概述](https://cloud.tencent.com/document/product/213/4952)。默认值为0,表示不购买数据盘。更多限制详见产品文档。
@@ -642,6 +1010,74 @@ module TencentCloud
642
1010
  end
643
1011
  end
644
1012
 
1013
+ # DeleteLaunchTemplate请求参数结构体
1014
+ class DeleteLaunchTemplateRequest < TencentCloud::Common::AbstractModel
1015
+ # @param LaunchTemplateId: 启动模板ID。
1016
+ # @type LaunchTemplateId: String
1017
+
1018
+ attr_accessor :LaunchTemplateId
1019
+
1020
+ def initialize(launchtemplateid=nil)
1021
+ @LaunchTemplateId = launchtemplateid
1022
+ end
1023
+
1024
+ def deserialize(params)
1025
+ @LaunchTemplateId = params['LaunchTemplateId']
1026
+ end
1027
+ end
1028
+
1029
+ # DeleteLaunchTemplate返回参数结构体
1030
+ class DeleteLaunchTemplateResponse < TencentCloud::Common::AbstractModel
1031
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
1032
+ # @type RequestId: String
1033
+
1034
+ attr_accessor :RequestId
1035
+
1036
+ def initialize(requestid=nil)
1037
+ @RequestId = requestid
1038
+ end
1039
+
1040
+ def deserialize(params)
1041
+ @RequestId = params['RequestId']
1042
+ end
1043
+ end
1044
+
1045
+ # DeleteLaunchTemplateVersions请求参数结构体
1046
+ class DeleteLaunchTemplateVersionsRequest < TencentCloud::Common::AbstractModel
1047
+ # @param LaunchTemplateId: 启动模板ID。
1048
+ # @type LaunchTemplateId: String
1049
+ # @param LaunchTemplateVersions: 实例启动模板版本列表。
1050
+ # @type LaunchTemplateVersions: Array
1051
+
1052
+ attr_accessor :LaunchTemplateId, :LaunchTemplateVersions
1053
+
1054
+ def initialize(launchtemplateid=nil, launchtemplateversions=nil)
1055
+ @LaunchTemplateId = launchtemplateid
1056
+ @LaunchTemplateVersions = launchtemplateversions
1057
+ end
1058
+
1059
+ def deserialize(params)
1060
+ @LaunchTemplateId = params['LaunchTemplateId']
1061
+ @LaunchTemplateVersions = params['LaunchTemplateVersions']
1062
+ end
1063
+ end
1064
+
1065
+ # DeleteLaunchTemplateVersions返回参数结构体
1066
+ class DeleteLaunchTemplateVersionsResponse < TencentCloud::Common::AbstractModel
1067
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
1068
+ # @type RequestId: String
1069
+
1070
+ attr_accessor :RequestId
1071
+
1072
+ def initialize(requestid=nil)
1073
+ @RequestId = requestid
1074
+ end
1075
+
1076
+ def deserialize(params)
1077
+ @RequestId = params['RequestId']
1078
+ end
1079
+ end
1080
+
645
1081
  # DescribeAccountQuota请求参数结构体
646
1082
  class DescribeAccountQuotaRequest < TencentCloud::Common::AbstractModel
647
1083
  # @param Filters: <li><strong>zone</strong></li>
@@ -1609,6 +2045,146 @@ module TencentCloud
1609
2045
  end
1610
2046
  end
1611
2047
 
2048
+ # DescribeLaunchTemplateVersions请求参数结构体
2049
+ class DescribeLaunchTemplateVersionsRequest < TencentCloud::Common::AbstractModel
2050
+ # @param LaunchTemplateId: 启动模板ID。
2051
+ # @type LaunchTemplateId: String
2052
+ # @param LaunchTemplateVersions: 实例启动模板列表。
2053
+ # @type LaunchTemplateVersions: Array
2054
+ # @param MinVersion: 通过范围指定版本时的最小版本号,默认为0。
2055
+ # @type MinVersion: Integer
2056
+ # @param MaxVersion: 过范围指定版本时的最大版本号,默认为30。
2057
+ # @type MaxVersion: Integer
2058
+ # @param Offset: 偏移量,默认为0。关于`Offset`的更进一步介绍请参考 API [简介](https://cloud.tencent.com/document/api/213/15688)中的相关小节。
2059
+ # @type Offset: Integer
2060
+ # @param Limit: 返回数量,默认为20,最大值为100。关于`Limit`的更进一步介绍请参考 API [简介](https://cloud.tencent.com/document/api/213/15688)中的相关小节。
2061
+ # @type Limit: Integer
2062
+ # @param DefaultVersion: 是否查询默认版本。该参数不可与LaunchTemplateVersions同时指定。
2063
+ # @type DefaultVersion: Boolean
2064
+
2065
+ attr_accessor :LaunchTemplateId, :LaunchTemplateVersions, :MinVersion, :MaxVersion, :Offset, :Limit, :DefaultVersion
2066
+
2067
+ def initialize(launchtemplateid=nil, launchtemplateversions=nil, minversion=nil, maxversion=nil, offset=nil, limit=nil, defaultversion=nil)
2068
+ @LaunchTemplateId = launchtemplateid
2069
+ @LaunchTemplateVersions = launchtemplateversions
2070
+ @MinVersion = minversion
2071
+ @MaxVersion = maxversion
2072
+ @Offset = offset
2073
+ @Limit = limit
2074
+ @DefaultVersion = defaultversion
2075
+ end
2076
+
2077
+ def deserialize(params)
2078
+ @LaunchTemplateId = params['LaunchTemplateId']
2079
+ @LaunchTemplateVersions = params['LaunchTemplateVersions']
2080
+ @MinVersion = params['MinVersion']
2081
+ @MaxVersion = params['MaxVersion']
2082
+ @Offset = params['Offset']
2083
+ @Limit = params['Limit']
2084
+ @DefaultVersion = params['DefaultVersion']
2085
+ end
2086
+ end
2087
+
2088
+ # DescribeLaunchTemplateVersions返回参数结构体
2089
+ class DescribeLaunchTemplateVersionsResponse < TencentCloud::Common::AbstractModel
2090
+ # @param TotalCount: 实例启动模板总数。
2091
+ # @type TotalCount: Integer
2092
+ # @param LaunchTemplateVersionSet: 实例启动模板版本集合。
2093
+ # @type LaunchTemplateVersionSet: Array
2094
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
2095
+ # @type RequestId: String
2096
+
2097
+ attr_accessor :TotalCount, :LaunchTemplateVersionSet, :RequestId
2098
+
2099
+ def initialize(totalcount=nil, launchtemplateversionset=nil, requestid=nil)
2100
+ @TotalCount = totalcount
2101
+ @LaunchTemplateVersionSet = launchtemplateversionset
2102
+ @RequestId = requestid
2103
+ end
2104
+
2105
+ def deserialize(params)
2106
+ @TotalCount = params['TotalCount']
2107
+ unless params['LaunchTemplateVersionSet'].nil?
2108
+ @LaunchTemplateVersionSet = []
2109
+ params['LaunchTemplateVersionSet'].each do |i|
2110
+ launchtemplateversioninfo_tmp = LaunchTemplateVersionInfo.new
2111
+ launchtemplateversioninfo_tmp.deserialize(i)
2112
+ @LaunchTemplateVersionSet << launchtemplateversioninfo_tmp
2113
+ end
2114
+ end
2115
+ @RequestId = params['RequestId']
2116
+ end
2117
+ end
2118
+
2119
+ # DescribeLaunchTemplates请求参数结构体
2120
+ class DescribeLaunchTemplatesRequest < TencentCloud::Common::AbstractModel
2121
+ # @param LaunchTemplateIds: 启动模板ID,一个或者多个启动模板ID。若未指定,则显示用户所有模板。
2122
+ # @type LaunchTemplateIds: Array
2123
+ # @param Filters: <p style="padding-left: 30px;">按照【<strong>LaunchTemplateNames</strong>】进行过滤。</p><p style="padding-left: 30px;">类型:String</p><p style="padding-left: 30px;">必选:否</p>
2124
+ # 每次请求的`Filters`的上限为10,`Filter.Values`的上限为5。参数不支持同时指定`LaunchTemplateIds`和`Filters`。
2125
+ # @type Filters: Array
2126
+ # @param Offset: 偏移量,默认为0。关于`Offset`的更进一步介绍请参考 API [简介](https://cloud.tencent.com/document/api/213/15688)中的相关小节。
2127
+ # @type Offset: Integer
2128
+ # @param Limit: 返回数量,默认为20,最大值为100。关于`Limit`的更进一步介绍请参考 API [简介](https://cloud.tencent.com/document/api/213/15688)中的相关小节。
2129
+ # @type Limit: Integer
2130
+
2131
+ attr_accessor :LaunchTemplateIds, :Filters, :Offset, :Limit
2132
+
2133
+ def initialize(launchtemplateids=nil, filters=nil, offset=nil, limit=nil)
2134
+ @LaunchTemplateIds = launchtemplateids
2135
+ @Filters = filters
2136
+ @Offset = offset
2137
+ @Limit = limit
2138
+ end
2139
+
2140
+ def deserialize(params)
2141
+ @LaunchTemplateIds = params['LaunchTemplateIds']
2142
+ unless params['Filters'].nil?
2143
+ @Filters = []
2144
+ params['Filters'].each do |i|
2145
+ filter_tmp = Filter.new
2146
+ filter_tmp.deserialize(i)
2147
+ @Filters << filter_tmp
2148
+ end
2149
+ end
2150
+ @Offset = params['Offset']
2151
+ @Limit = params['Limit']
2152
+ end
2153
+ end
2154
+
2155
+ # DescribeLaunchTemplates返回参数结构体
2156
+ class DescribeLaunchTemplatesResponse < TencentCloud::Common::AbstractModel
2157
+ # @param TotalCount: 符合条件的实例模板数量。
2158
+ # 注意:此字段可能返回 null,表示取不到有效值。
2159
+ # @type TotalCount: Integer
2160
+ # @param LaunchTemplateSet: 实例详细信息列表。
2161
+ # 注意:此字段可能返回 null,表示取不到有效值。
2162
+ # @type LaunchTemplateSet: Array
2163
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
2164
+ # @type RequestId: String
2165
+
2166
+ attr_accessor :TotalCount, :LaunchTemplateSet, :RequestId
2167
+
2168
+ def initialize(totalcount=nil, launchtemplateset=nil, requestid=nil)
2169
+ @TotalCount = totalcount
2170
+ @LaunchTemplateSet = launchtemplateset
2171
+ @RequestId = requestid
2172
+ end
2173
+
2174
+ def deserialize(params)
2175
+ @TotalCount = params['TotalCount']
2176
+ unless params['LaunchTemplateSet'].nil?
2177
+ @LaunchTemplateSet = []
2178
+ params['LaunchTemplateSet'].each do |i|
2179
+ launchtemplateinfo_tmp = LaunchTemplateInfo.new
2180
+ launchtemplateinfo_tmp.deserialize(i)
2181
+ @LaunchTemplateSet << launchtemplateinfo_tmp
2182
+ end
2183
+ end
2184
+ @RequestId = params['RequestId']
2185
+ end
2186
+ end
2187
+
1612
2188
  # DescribeRegions请求参数结构体
1613
2189
  class DescribeRegionsRequest < TencentCloud::Common::AbstractModel
1614
2190
 
@@ -3859,6 +4435,39 @@ module TencentCloud
3859
4435
  end
3860
4436
  end
3861
4437
 
4438
+ # 实例启动模板,通过该参数可使用实例模板中的预设参数创建实例。
4439
+ class LaunchTemplate < TencentCloud::Common::AbstractModel
4440
+
4441
+
4442
+ def initialize()
4443
+ end
4444
+
4445
+ def deserialize(params)
4446
+ end
4447
+ end
4448
+
4449
+ # 实例启动模板简要信息。
4450
+ class LaunchTemplateInfo < TencentCloud::Common::AbstractModel
4451
+
4452
+
4453
+ def initialize()
4454
+ end
4455
+
4456
+ def deserialize(params)
4457
+ end
4458
+ end
4459
+
4460
+ # 实例启动模板版本集合
4461
+ class LaunchTemplateVersionInfo < TencentCloud::Common::AbstractModel
4462
+
4463
+
4464
+ def initialize()
4465
+ end
4466
+
4467
+ def deserialize(params)
4468
+ end
4469
+ end
4470
+
3862
4471
  # 本地磁盘规格
3863
4472
  class LocalDiskType < TencentCloud::Common::AbstractModel
3864
4473
  # @param Type: 本地磁盘类型。
@@ -4371,6 +4980,42 @@ module TencentCloud
4371
4980
  end
4372
4981
  end
4373
4982
 
4983
+ # ModifyLaunchTemplateDefaultVersion请求参数结构体
4984
+ class ModifyLaunchTemplateDefaultVersionRequest < TencentCloud::Common::AbstractModel
4985
+ # @param LaunchTemplateId: 启动模板ID。
4986
+ # @type LaunchTemplateId: String
4987
+ # @param DefaultVersion: 待设置的默认版本号。
4988
+ # @type DefaultVersion: Integer
4989
+
4990
+ attr_accessor :LaunchTemplateId, :DefaultVersion
4991
+
4992
+ def initialize(launchtemplateid=nil, defaultversion=nil)
4993
+ @LaunchTemplateId = launchtemplateid
4994
+ @DefaultVersion = defaultversion
4995
+ end
4996
+
4997
+ def deserialize(params)
4998
+ @LaunchTemplateId = params['LaunchTemplateId']
4999
+ @DefaultVersion = params['DefaultVersion']
5000
+ end
5001
+ end
5002
+
5003
+ # ModifyLaunchTemplateDefaultVersion返回参数结构体
5004
+ class ModifyLaunchTemplateDefaultVersionResponse < TencentCloud::Common::AbstractModel
5005
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
5006
+ # @type RequestId: String
5007
+
5008
+ attr_accessor :RequestId
5009
+
5010
+ def initialize(requestid=nil)
5011
+ @RequestId = requestid
5012
+ end
5013
+
5014
+ def deserialize(params)
5015
+ @RequestId = params['RequestId']
5016
+ end
5017
+ end
5018
+
4374
5019
  # 描述了单台实例操作次数限制
4375
5020
  class OperationCountLimit < TencentCloud::Common::AbstractModel
4376
5021
  # @param Operation: 实例操作。取值范围:<br><li>`INSTANCE_DEGRADE`:降配操作<br><li>`INTERNET_CHARGE_TYPE_CHANGE`:修改网络带宽计费模式
@@ -5345,11 +5990,13 @@ module TencentCloud
5345
5990
  # @type InstanceChargePrepaid: :class:`Tencentcloud::Cvm.v20170312.models.InstanceChargePrepaid`
5346
5991
  # @param Placement: 实例所在的位置。通过该参数可以指定实例所属可用区,所属项目,所属宿主机(在专用宿主机上创建子机时指定)等属性。
5347
5992
  # <b>注:本数据结构中的Zone为必填参数。</b>
5993
+ # 如果您不指定LaunchTemplate参数,则Placement为必选参数。若同时传递该参数和LaunchTemplate,则默认覆盖LaunchTemplate中对应的值。
5348
5994
  # @type Placement: :class:`Tencentcloud::Cvm.v20170312.models.Placement`
5349
5995
  # @param InstanceType: 实例机型。不同实例机型指定了不同的资源规格。
5350
5996
  # <br><li>对于付费模式为PREPAID或POSTPAID\_BY\_HOUR的实例创建,具体取值可通过调用接口[DescribeInstanceTypeConfigs](https://cloud.tencent.com/document/api/213/15749)来获得最新的规格表或参见[实例规格](https://cloud.tencent.com/document/product/213/11518)描述。若不指定该参数,则系统将根据当前地域的资源售卖情况动态指定默认机型。<br><li>对于付费模式为CDHPAID的实例创建,该参数以"CDH_"为前缀,根据CPU和内存配置生成,具体形式为:CDH_XCXG,例如对于创建CPU为1核,内存为1G大小的专用宿主机的实例,该参数应该为CDH_1C1G。
5351
5997
  # @type InstanceType: String
5352
5998
  # @param ImageId: 指定有效的[镜像](https://cloud.tencent.com/document/product/213/4940)ID,格式形如`img-xxx`。镜像类型分为四种:<br/><li>公共镜像</li><li>自定义镜像</li><li>共享镜像</li><li>服务市场镜像</li><br/>可通过以下方式获取可用的镜像ID:<br/><li>`公共镜像`、`自定义镜像`、`共享镜像`的镜像ID可通过登录[控制台](https://console.cloud.tencent.com/cvm/image?rid=1&imageType=PUBLIC_IMAGE)查询;`服务镜像市场`的镜像ID可通过[云市场](https://market.cloud.tencent.com/list)查询。</li><li>通过调用接口 [DescribeImages](https://cloud.tencent.com/document/api/213/15715) ,传入InstanceType获取当前机型支持的镜像列表,取返回信息中的`ImageId`字段。</li>
5999
+ # 如果您不指定LaunchTemplate参数,则ImageId为必选参数。若同时传递该参数和LaunchTemplate,则默认覆盖LaunchTemplate中对应的值。
5353
6000
  # @type ImageId: String
5354
6001
  # @param SystemDisk: 实例系统盘配置信息。若不指定该参数,则按照系统默认值进行分配。
5355
6002
  # @type SystemDisk: :class:`Tencentcloud::Cvm.v20170312.models.SystemDisk`
@@ -5393,10 +6040,12 @@ module TencentCloud
5393
6040
  # @type CamRoleName: String
5394
6041
  # @param HpcClusterId: 高性能计算集群ID。若创建的实例为高性能计算实例,需指定实例放置的集群,否则不可指定。
5395
6042
  # @type HpcClusterId: String
6043
+ # @param LaunchTemplate: 实例启动模板。
6044
+ # @type LaunchTemplate: :class:`Tencentcloud::Cvm.v20170312.models.LaunchTemplate`
5396
6045
 
5397
- attr_accessor :InstanceChargeType, :InstanceChargePrepaid, :Placement, :InstanceType, :ImageId, :SystemDisk, :DataDisks, :VirtualPrivateCloud, :InternetAccessible, :InstanceCount, :InstanceName, :LoginSettings, :SecurityGroupIds, :EnhancedService, :ClientToken, :HostName, :ActionTimer, :DisasterRecoverGroupIds, :TagSpecification, :InstanceMarketOptions, :UserData, :DryRun, :CamRoleName, :HpcClusterId
6046
+ attr_accessor :InstanceChargeType, :InstanceChargePrepaid, :Placement, :InstanceType, :ImageId, :SystemDisk, :DataDisks, :VirtualPrivateCloud, :InternetAccessible, :InstanceCount, :InstanceName, :LoginSettings, :SecurityGroupIds, :EnhancedService, :ClientToken, :HostName, :ActionTimer, :DisasterRecoverGroupIds, :TagSpecification, :InstanceMarketOptions, :UserData, :DryRun, :CamRoleName, :HpcClusterId, :LaunchTemplate
5398
6047
 
5399
- def initialize(instancechargetype=nil, instancechargeprepaid=nil, placement=nil, instancetype=nil, imageid=nil, systemdisk=nil, datadisks=nil, virtualprivatecloud=nil, internetaccessible=nil, instancecount=nil, instancename=nil, loginsettings=nil, securitygroupids=nil, enhancedservice=nil, clienttoken=nil, hostname=nil, actiontimer=nil, disasterrecovergroupids=nil, tagspecification=nil, instancemarketoptions=nil, userdata=nil, dryrun=nil, camrolename=nil, hpcclusterid=nil)
6048
+ def initialize(instancechargetype=nil, instancechargeprepaid=nil, placement=nil, instancetype=nil, imageid=nil, systemdisk=nil, datadisks=nil, virtualprivatecloud=nil, internetaccessible=nil, instancecount=nil, instancename=nil, loginsettings=nil, securitygroupids=nil, enhancedservice=nil, clienttoken=nil, hostname=nil, actiontimer=nil, disasterrecovergroupids=nil, tagspecification=nil, instancemarketoptions=nil, userdata=nil, dryrun=nil, camrolename=nil, hpcclusterid=nil, launchtemplate=nil)
5400
6049
  @InstanceChargeType = instancechargetype
5401
6050
  @InstanceChargePrepaid = instancechargeprepaid
5402
6051
  @Placement = placement
@@ -5421,6 +6070,7 @@ module TencentCloud
5421
6070
  @DryRun = dryrun
5422
6071
  @CamRoleName = camrolename
5423
6072
  @HpcClusterId = hpcclusterid
6073
+ @LaunchTemplate = launchtemplate
5424
6074
  end
5425
6075
 
5426
6076
  def deserialize(params)
@@ -5489,6 +6139,10 @@ module TencentCloud
5489
6139
  @DryRun = params['DryRun']
5490
6140
  @CamRoleName = params['CamRoleName']
5491
6141
  @HpcClusterId = params['HpcClusterId']
6142
+ unless params['LaunchTemplate'].nil?
6143
+ @LaunchTemplate = LaunchTemplate.new
6144
+ @LaunchTemplate.deserialize(params['LaunchTemplate'])
6145
+ end
5492
6146
  end
5493
6147
  end
5494
6148
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: tencentcloud-sdk-cvm
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.226
4
+ version: 1.0.227
5
5
  platform: ruby
6
6
  authors:
7
7
  - Tencent Cloud
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-12-17 00:00:00.000000000 Z
11
+ date: 2021-12-20 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: tencentcloud-sdk-common