alicloudroscdkbastionhost

package module
v1.5.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Dec 18, 2024 License: Apache-2.0 Imports: 7 Imported by: 0

README

Aliyun ROS BASTIONHOST Construct Library

This module is part of the AliCloud ROS Cloud Development Kit (ROS CDK) project.

import * as BASTIONHOST from '@alicloud/ros-cdk-bastionhost';

Documentation

Overview

Aliyun SDK Copyright (C) Alibaba Cloud Computing All rights reserved. http://www.aliyun.com

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func Host_IsConstruct

func Host_IsConstruct(x interface{}) *bool

Return whether the given object is a Construct.

func Instance_IsConstruct

func Instance_IsConstruct(x interface{}) *bool

Return whether the given object is a Construct.

func NewHost_Override

func NewHost_Override(h Host, scope alicloudroscdkcore.Construct, id *string, props *HostProps, enableResourcePropertyConstraint *bool)

Param scope - scope in which this resource is defined Param id - scoped id of the resource Param props - resource properties.

func NewInstance_Override

func NewInstance_Override(i Instance, scope alicloudroscdkcore.Construct, id *string, props *InstanceProps, enableResourcePropertyConstraint *bool)

Param scope - scope in which this resource is defined Param id - scoped id of the resource Param props - resource properties.

func NewRosHost_Override

func NewRosHost_Override(r RosHost, scope alicloudroscdkcore.Construct, id *string, props *RosHostProps, enableResourcePropertyConstraint *bool)

func NewRosInstance_Override

func NewRosInstance_Override(r RosInstance, scope alicloudroscdkcore.Construct, id *string, props *RosInstanceProps, enableResourcePropertyConstraint *bool)

func RosHost_IsConstruct

func RosHost_IsConstruct(x interface{}) *bool

Return whether the given object is a Construct.

func RosHost_IsRosElement

func RosHost_IsRosElement(x interface{}) *bool

Returns `true` if a construct is a stack element (i.e. part of the synthesized template).

Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.

Returns: The construct as a stack element or undefined if it is not a stack element.

func RosHost_IsRosResource

func RosHost_IsRosResource(construct alicloudroscdkcore.IConstruct) *bool

Check whether the given construct is a RosResource.

func RosHost_ROS_RESOURCE_TYPE_NAME

func RosHost_ROS_RESOURCE_TYPE_NAME() *string

func RosInstance_IsConstruct

func RosInstance_IsConstruct(x interface{}) *bool

Return whether the given object is a Construct.

func RosInstance_IsRosElement

func RosInstance_IsRosElement(x interface{}) *bool

Returns `true` if a construct is a stack element (i.e. part of the synthesized template).

Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.

Returns: The construct as a stack element or undefined if it is not a stack element.

func RosInstance_IsRosResource

func RosInstance_IsRosResource(construct alicloudroscdkcore.IConstruct) *bool

Check whether the given construct is a RosResource.

func RosInstance_ROS_RESOURCE_TYPE_NAME

func RosInstance_ROS_RESOURCE_TYPE_NAME() *string

Types

type Host

type Host interface {
	alicloudroscdkcore.Resource
	// Attribute HostId: The ID of the host that was created.
	AttrHostId() alicloudroscdkcore.IResolvable
	EnableResourcePropertyConstraint() *bool
	SetEnableResourcePropertyConstraint(val *bool)
	Id() *string
	SetId(val *string)
	// The construct tree node associated with this construct.
	Node() alicloudroscdkcore.ConstructNode
	// Returns a string-encoded token that resolves to the physical name that should be passed to the ROS resource.
	//
	// This value will resolve to one of the following:
	// - a concrete value (e.g. `"my-awesome-bucket"`)
	// - `undefined`, when a name should be generated by ROS
	// - a concrete name generated automatically during synthesis, in
	//    cross-environment scenarios.
	// Experimental.
	PhysicalName() *string
	Props() *HostProps
	SetProps(val *HostProps)
	Ref() *string
	Resource() alicloudroscdkcore.RosResource
	SetResource(val alicloudroscdkcore.RosResource)
	Scope() alicloudroscdkcore.Construct
	SetScope(val alicloudroscdkcore.Construct)
	// The stack in which this resource is defined.
	Stack() alicloudroscdkcore.Stack
	AddCondition(condition alicloudroscdkcore.RosCondition)
	AddCount(count interface{})
	AddDependency(resource alicloudroscdkcore.Resource)
	AddResourceDesc(desc *string)
	ApplyRemovalPolicy(policy alicloudroscdkcore.RemovalPolicy)
	GeneratePhysicalName() *string
	GetAtt(name *string) alicloudroscdkcore.IResolvable
	// Perform final modifications before synthesis.
	//
	// This method can be implemented by derived constructs in order to perform
	// final changes before synthesis. prepare() will be called after child
	// constructs have been prepared.
	//
	// This is an advanced framework feature. Only use this if you
	// understand the implications.
	OnPrepare()
	// Allows this construct to emit artifacts into the cloud assembly during synthesis.
	//
	// This method is usually implemented by framework-level constructs such as `Stack` and `Asset`
	// as they participate in synthesizing the cloud assembly.
	OnSynthesize(session constructs.ISynthesisSession)
	// Validate the current construct.
	//
	// This method can be implemented by derived constructs in order to perform
	// validation logic. It is called on all constructs before synthesis.
	//
	// Returns: An array of validation error messages, or an empty array if the construct is valid.
	OnValidate() *[]*string
	// Perform final modifications before synthesis.
	//
	// This method can be implemented by derived constructs in order to perform
	// final changes before synthesis. prepare() will be called after child
	// constructs have been prepared.
	//
	// This is an advanced framework feature. Only use this if you
	// understand the implications.
	Prepare()
	SetMetadata(key *string, value interface{})
	// Allows this construct to emit artifacts into the cloud assembly during synthesis.
	//
	// This method is usually implemented by framework-level constructs such as `Stack` and `Asset`
	// as they participate in synthesizing the cloud assembly.
	Synthesize(session alicloudroscdkcore.ISynthesisSession)
	// Returns a string representation of this construct.
	ToString() *string
	// Validate the current construct.
	//
	// This method can be implemented by derived constructs in order to perform
	// validation logic. It is called on all constructs before synthesis.
	//
	// Returns: An array of validation error messages, or an empty array if the construct is valid.
	Validate() *[]*string
}

This class encapsulates and extends the ROS resource type `ALIYUN::BastionHost::Host`, which is used to create a host for O&M in a bastion host.

func NewHost

func NewHost(scope alicloudroscdkcore.Construct, id *string, props *HostProps, enableResourcePropertyConstraint *bool) Host

Param scope - scope in which this resource is defined Param id - scoped id of the resource Param props - resource properties.

type HostProps

type HostProps struct {
	// Property activeAddressType: The endpoint type of the host that you want to create.
	//
	// Valid values:
	// Public: a public endpoint
	// Private: an internal endpoint.
	ActiveAddressType interface{} `field:"required" json:"activeAddressType" yaml:"activeAddressType"`
	// Property hostName: The name of the host that you want to create.
	//
	// The name can be up to 128 characters in length.
	HostName interface{} `field:"required" json:"hostName" yaml:"hostName"`
	// Property instanceId: The ID of the Bastionhost instance where you want to create the host.
	//
	// Note: You can call the DescribeInstances operation to query the ID of the Bastionhost instance.
	InstanceId interface{} `field:"required" json:"instanceId" yaml:"instanceId"`
	// Property osType: The operating system of the host that you want to create.
	//
	// Valid values:
	// - Linux
	// - Windows.
	OsType interface{} `field:"required" json:"osType" yaml:"osType"`
	// Property source: The source of the host that you want to create.
	//
	// Valid values:
	// - Local: an on-premises host
	// - Ecs: an Elastic Compute Service (ECS) instance
	// - Rds: a host in a dedicated cluster.
	Source interface{} `field:"required" json:"source" yaml:"source"`
	// Property comment: The description of the host that you want to create.
	//
	// The value can be up to 500 characters.
	Comment interface{} `field:"optional" json:"comment" yaml:"comment"`
	// Property hostPrivateAddress: The internal endpoint of the host that you want to create.
	//
	// You can set this parameter to a domain name or an IP address.
	// Note: This parameter is required if the ActiveAddressType parameter is set to Private.
	HostPrivateAddress interface{} `field:"optional" json:"hostPrivateAddress" yaml:"hostPrivateAddress"`
	// Property hostPublicAddress: The public endpoint of the host that you want to create.
	//
	// You can set this parameter to a domain name or an IP address.
	// Note: This parameter is required if the ActiveAddressType parameter is set to Public.
	HostPublicAddress interface{} `field:"optional" json:"hostPublicAddress" yaml:"hostPublicAddress"`
	// Property instanceRegionId: The ID of the region where the ECS instance or dedicated cluster host that you want to create resides.
	//
	// Note: This parameter is required if the Source parameter is set to Ecs or Rds.
	InstanceRegionId interface{} `field:"optional" json:"instanceRegionId" yaml:"instanceRegionId"`
	// Property sourceInstanceId: The ID of the ECS instance or dedicated cluster host that you want to create.
	//
	// Note This parameter is required if the Source parameter is set to Ecs or Rds.
	SourceInstanceId interface{} `field:"optional" json:"sourceInstanceId" yaml:"sourceInstanceId"`
}

Properties for defining a `Host`.

See https://www.alibabacloud.com/help/ros/developer-reference/aliyun-bastionhost-host

type Instance

type Instance interface {
	alicloudroscdkcore.Resource
	// Attribute InstanceId: Instance Id.
	AttrInstanceId() alicloudroscdkcore.IResolvable
	EnableResourcePropertyConstraint() *bool
	SetEnableResourcePropertyConstraint(val *bool)
	Id() *string
	SetId(val *string)
	// The construct tree node associated with this construct.
	Node() alicloudroscdkcore.ConstructNode
	// Returns a string-encoded token that resolves to the physical name that should be passed to the ROS resource.
	//
	// This value will resolve to one of the following:
	// - a concrete value (e.g. `"my-awesome-bucket"`)
	// - `undefined`, when a name should be generated by ROS
	// - a concrete name generated automatically during synthesis, in
	//    cross-environment scenarios.
	// Experimental.
	PhysicalName() *string
	Props() *InstanceProps
	SetProps(val *InstanceProps)
	Ref() *string
	Resource() alicloudroscdkcore.RosResource
	SetResource(val alicloudroscdkcore.RosResource)
	Scope() alicloudroscdkcore.Construct
	SetScope(val alicloudroscdkcore.Construct)
	// The stack in which this resource is defined.
	Stack() alicloudroscdkcore.Stack
	AddCondition(condition alicloudroscdkcore.RosCondition)
	AddCount(count interface{})
	AddDependency(resource alicloudroscdkcore.Resource)
	AddResourceDesc(desc *string)
	ApplyRemovalPolicy(policy alicloudroscdkcore.RemovalPolicy)
	GeneratePhysicalName() *string
	GetAtt(name *string) alicloudroscdkcore.IResolvable
	// Perform final modifications before synthesis.
	//
	// This method can be implemented by derived constructs in order to perform
	// final changes before synthesis. prepare() will be called after child
	// constructs have been prepared.
	//
	// This is an advanced framework feature. Only use this if you
	// understand the implications.
	OnPrepare()
	// Allows this construct to emit artifacts into the cloud assembly during synthesis.
	//
	// This method is usually implemented by framework-level constructs such as `Stack` and `Asset`
	// as they participate in synthesizing the cloud assembly.
	OnSynthesize(session constructs.ISynthesisSession)
	// Validate the current construct.
	//
	// This method can be implemented by derived constructs in order to perform
	// validation logic. It is called on all constructs before synthesis.
	//
	// Returns: An array of validation error messages, or an empty array if the construct is valid.
	OnValidate() *[]*string
	// Perform final modifications before synthesis.
	//
	// This method can be implemented by derived constructs in order to perform
	// final changes before synthesis. prepare() will be called after child
	// constructs have been prepared.
	//
	// This is an advanced framework feature. Only use this if you
	// understand the implications.
	Prepare()
	SetMetadata(key *string, value interface{})
	// Allows this construct to emit artifacts into the cloud assembly during synthesis.
	//
	// This method is usually implemented by framework-level constructs such as `Stack` and `Asset`
	// as they participate in synthesizing the cloud assembly.
	Synthesize(session alicloudroscdkcore.ISynthesisSession)
	// Returns a string representation of this construct.
	ToString() *string
	// Validate the current construct.
	//
	// This method can be implemented by derived constructs in order to perform
	// validation logic. It is called on all constructs before synthesis.
	//
	// Returns: An array of validation error messages, or an empty array if the construct is valid.
	Validate() *[]*string
}

This class encapsulates and extends the ROS resource type `ALIYUN::BastionHost::Instance`, which is used to create a bastion host.

func NewInstance

func NewInstance(scope alicloudroscdkcore.Construct, id *string, props *InstanceProps, enableResourcePropertyConstraint *bool) Instance

Param scope - scope in which this resource is defined Param id - scoped id of the resource Param props - resource properties.

type InstanceProps

type InstanceProps struct {
	// Property extendedStoragePlans: If the default storage capacity is insufficient, you can purchase extended storage plans.Unit: TB.
	ExtendedStoragePlans interface{} `field:"required" json:"extendedStoragePlans" yaml:"extendedStoragePlans"`
	// Property extraBandwidth: Additional bandwidth is added to the default settings to ensure efficient O&M.Unit: Mbps.
	ExtraBandwidth interface{} `field:"required" json:"extraBandwidth" yaml:"extraBandwidth"`
	// Property plan: The number of asset authorization and concurrency limit.Unit: Asset number.
	Plan interface{} `field:"required" json:"plan" yaml:"plan"`
	// Property startInstanceParam: Parameters required to start a bastion host instance.
	StartInstanceParam interface{} `field:"required" json:"startInstanceParam" yaml:"startInstanceParam"`
	// Property version: Enterprise version:- Deployment instructions: dual-engine architecture, supports multiple availability zones, and ensures high stability - Operation and maintenance scenarios: unified operation and maintenance of assets on Alibaba Cloud, offline IDC servers, and third-party clouds - Asset type: Linux\/Windows, database assets - User management: RAM, AD\/LDAP and local users - Control strategy: fine-grained strategic control such as operation and maintenance approval, high-risk command blocking, etc.
	//
	// - Operation and maintenance audit: full traceability of operation and maintenance log audit and video audit
	// Value-added capabilities: automatic password change of Linux assets, database operation and maintenance management and control, convenient operation and maintenance of Web and client, network domain agent hybrid cloud scenario operation and maintenance mode, etc.Basic version:- Deployment instructions: The basic version is deployed on a single machine and does not support multiple availability zones.
	// - Operation and maintenance scenarios: unified operation and maintenance of assets on Alibaba Cloud, offline IDC servers, and third-party clouds
	// - Asset type: Linux\/Windows assets
	// - User management: RAM, AD\/LDAP and local users
	// - Control strategy: Operation and maintenance approval, high-risk command blocking and other strategic management and control
	// - Operation and maintenance audit: full traceability of operation and maintenance log audit and video audit.
	Version interface{} `field:"required" json:"version" yaml:"version"`
	// Property autoPay: Whether to auto pay the bill.
	AutoPay interface{} `field:"optional" json:"autoPay" yaml:"autoPay"`
	// Property autoRenew: Whether to auto renew the prepay instance.
	//
	// The auto-renewal period is Monthly.After you enable auto-renewal, the system deducts the renewal fee nine days before the resource expires.If the payment fails, the system does not stop deducting the fee until the deduction is successful or one day before the resource expires.
	AutoRenew interface{} `field:"optional" json:"autoRenew" yaml:"autoRenew"`
	// Property period: The subscription period of the bastionhost instanceIf PeriodUnit is month, the valid range is 1, 3, 6 If periodUnit is year, the valid range is 1, 2, 3.
	Period interface{} `field:"optional" json:"period" yaml:"period"`
	// Property periodUnit: The unit of the subscription duration.
	//
	// Valid values:
	// Month
	// Year
	// Default value: Month.
	PeriodUnit interface{} `field:"optional" json:"periodUnit" yaml:"periodUnit"`
	// Property resourceGroupId: Resource group ID.
	ResourceGroupId interface{} `field:"optional" json:"resourceGroupId" yaml:"resourceGroupId"`
}

Properties for defining a `Instance`.

See https://www.alibabacloud.com/help/ros/developer-reference/aliyun-bastionhost-instance

type RosHost

type RosHost interface {
	alicloudroscdkcore.RosResource
	ActiveAddressType() interface{}
	SetActiveAddressType(val interface{})
	AttrHostId() alicloudroscdkcore.IResolvable
	Comment() interface{}
	SetComment(val interface{})
	// Returns: the stack trace of the point where this Resource was created from, sourced
	// from the +metadata+ entry typed +aliyun:ros:logicalId+, and with the bottom-most
	// node +internal+ entries filtered.
	CreationStack() *[]*string
	EnableResourcePropertyConstraint() *bool
	SetEnableResourcePropertyConstraint(val *bool)
	HostName() interface{}
	SetHostName(val interface{})
	HostPrivateAddress() interface{}
	SetHostPrivateAddress(val interface{})
	HostPublicAddress() interface{}
	SetHostPublicAddress(val interface{})
	InstanceId() interface{}
	SetInstanceId(val interface{})
	InstanceRegionId() interface{}
	SetInstanceRegionId(val interface{})
	// The logical ID for this stack element.
	//
	// The logical ID of the element
	// is calculated from the path of the resource node in the construct tree.
	//
	// To override this value, use `overrideLogicalId(newLogicalId)`.
	//
	// Returns: the logical ID as a stringified token. This value will only get
	// resolved during synthesis.
	LogicalId() *string
	// The construct tree node associated with this construct.
	Node() alicloudroscdkcore.ConstructNode
	OsType() interface{}
	SetOsType(val interface{})
	// Return a string that will be resolved to a RosTemplate `{ Ref }` for this element.
	//
	// If, by any chance, the intrinsic reference of a resource is not a string, you could
	// coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`.
	Ref() *string
	// Options for this resource, such as condition, update policy etc.
	RosOptions() alicloudroscdkcore.IRosResourceOptions
	RosProperties() *map[string]interface{}
	// ROS resource type.
	RosResourceType() *string
	Source() interface{}
	SetSource(val interface{})
	SourceInstanceId() interface{}
	SetSourceInstanceId(val interface{})
	// The stack in which this element is defined.
	//
	// RosElements must be defined within a stack scope (directly or indirectly).
	Stack() alicloudroscdkcore.Stack
	// Return properties modified after initiation.
	//
	// Resources that expose mutable properties should override this function to
	// collect and return the properties object for this resource.
	UpdatedProperites() *map[string]interface{}
	AddCondition(con alicloudroscdkcore.RosCondition)
	AddCount(count interface{})
	// Syntactic sugar for `addOverride(path, undefined)`.
	AddDeletionOverride(path *string)
	// Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
	//
	// This can be used for resources across stacks (or nested stack) boundaries
	// and the dependency will automatically be transferred to the relevant scope.
	AddDependsOn(target alicloudroscdkcore.RosResource)
	AddDesc(desc *string)
	AddMetaData(key *string, value interface{})
	// Adds an override to the synthesized ROS resource.
	//
	// To add a
	// property override, either use `addPropertyOverride` or prefix `path` with
	// "Properties." (i.e. `Properties.TopicName`).
	//
	// If the override is nested, separate each nested level using a dot (.) in the path parameter.
	// If there is an array as part of the nesting, specify the index in the path.
	//
	// For example,
	// “`typescript
	// addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute'])
	// addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE')
	// “`
	// would add the overrides
	// “`json
	// "Properties": {
	//    "GlobalSecondaryIndexes": [
	//      {
	//        "Projection": {
	//          "NonKeyAttributes": [ "myattribute" ]
	//          ...
	//        }
	//        ...
	//      },
	//      {
	//        "ProjectionType": "INCLUDE"
	//        ...
	//      },
	//    ]
	//    ...
	// }
	// “`.
	AddOverride(path *string, value interface{})
	// Adds an override that deletes the value of a property from the resource definition.
	AddPropertyDeletionOverride(propertyPath *string)
	// Adds an override to a resource property.
	//
	// Syntactic sugar for `addOverride("Properties.<...>", value)`.
	AddPropertyOverride(propertyPath *string, value interface{})
	AddRosDependency(target *string)
	// Sets the deletion policy of the resource based on the removal policy specified.
	ApplyRemovalPolicy(policy alicloudroscdkcore.RemovalPolicy, options *alicloudroscdkcore.RemovalPolicyOptions)
	// Returns a token for an runtime attribute of this resource.
	//
	// Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility
	// in case there is no generated attribute.
	GetAtt(attributeName *string) alicloudroscdkcore.Reference
	// Perform final modifications before synthesis.
	//
	// This method can be implemented by derived constructs in order to perform
	// final changes before synthesis. prepare() will be called after child
	// constructs have been prepared.
	//
	// This is an advanced framework feature. Only use this if you
	// understand the implications.
	OnPrepare()
	// Allows this construct to emit artifacts into the cloud assembly during synthesis.
	//
	// This method is usually implemented by framework-level constructs such as `Stack` and `Asset`
	// as they participate in synthesizing the cloud assembly.
	OnSynthesize(session constructs.ISynthesisSession)
	// Validate the current construct.
	//
	// This method can be implemented by derived constructs in order to perform
	// validation logic. It is called on all constructs before synthesis.
	//
	// Returns: An array of validation error messages, or an empty array if the construct is valid.
	OnValidate() *[]*string
	// Overrides the auto-generated logical ID with a specific ID.
	OverrideLogicalId(newLogicalId *string)
	// Perform final modifications before synthesis.
	//
	// This method can be implemented by derived constructs in order to perform
	// final changes before synthesis. prepare() will be called after child
	// constructs have been prepared.
	//
	// This is an advanced framework feature. Only use this if you
	// understand the implications.
	Prepare()
	RenderProperties(props *map[string]interface{}) *map[string]interface{}
	// Allows this construct to emit artifacts into the cloud assembly during synthesis.
	//
	// This method is usually implemented by framework-level constructs such as `Stack` and `Asset`
	// as they participate in synthesizing the cloud assembly.
	Synthesize(session alicloudroscdkcore.ISynthesisSession)
	// Returns a string representation of this construct.
	//
	// Returns: a string representation of this resource.
	ToString() *string
	// Validate the current construct.
	//
	// This method can be implemented by derived constructs in order to perform
	// validation logic. It is called on all constructs before synthesis.
	//
	// Returns: An array of validation error messages, or an empty array if the construct is valid.
	Validate() *[]*string
	ValidateProperties(_properties interface{})
}

This class is a base encapsulation around the ROS resource type `ALIYUN::BastionHost::Host`, which is used to create a host for O&M in a bastion host.

func NewRosHost

func NewRosHost(scope alicloudroscdkcore.Construct, id *string, props *RosHostProps, enableResourcePropertyConstraint *bool) RosHost

type RosHostProps

type RosHostProps struct {
	ActiveAddressType  interface{} `field:"required" json:"activeAddressType" yaml:"activeAddressType"`
	HostName           interface{} `field:"required" json:"hostName" yaml:"hostName"`
	InstanceId         interface{} `field:"required" json:"instanceId" yaml:"instanceId"`
	OsType             interface{} `field:"required" json:"osType" yaml:"osType"`
	Source             interface{} `field:"required" json:"source" yaml:"source"`
	Comment            interface{} `field:"optional" json:"comment" yaml:"comment"`
	HostPrivateAddress interface{} `field:"optional" json:"hostPrivateAddress" yaml:"hostPrivateAddress"`
	HostPublicAddress  interface{} `field:"optional" json:"hostPublicAddress" yaml:"hostPublicAddress"`
	InstanceRegionId   interface{} `field:"optional" json:"instanceRegionId" yaml:"instanceRegionId"`
	SourceInstanceId   interface{} `field:"optional" json:"sourceInstanceId" yaml:"sourceInstanceId"`
}

Properties for defining a `RosHost`.

See https://www.alibabacloud.com/help/ros/developer-reference/aliyun-bastionhost-host

type RosInstance

type RosInstance interface {
	alicloudroscdkcore.RosResource
	AttrInstanceId() alicloudroscdkcore.IResolvable
	AutoPay() interface{}
	SetAutoPay(val interface{})
	AutoRenew() interface{}
	SetAutoRenew(val interface{})
	// Returns: the stack trace of the point where this Resource was created from, sourced
	// from the +metadata+ entry typed +aliyun:ros:logicalId+, and with the bottom-most
	// node +internal+ entries filtered.
	CreationStack() *[]*string
	EnableResourcePropertyConstraint() *bool
	SetEnableResourcePropertyConstraint(val *bool)
	ExtendedStoragePlans() interface{}
	SetExtendedStoragePlans(val interface{})
	ExtraBandwidth() interface{}
	SetExtraBandwidth(val interface{})
	// The logical ID for this stack element.
	//
	// The logical ID of the element
	// is calculated from the path of the resource node in the construct tree.
	//
	// To override this value, use `overrideLogicalId(newLogicalId)`.
	//
	// Returns: the logical ID as a stringified token. This value will only get
	// resolved during synthesis.
	LogicalId() *string
	// The construct tree node associated with this construct.
	Node() alicloudroscdkcore.ConstructNode
	Period() interface{}
	SetPeriod(val interface{})
	PeriodUnit() interface{}
	SetPeriodUnit(val interface{})
	Plan() interface{}
	SetPlan(val interface{})
	// Return a string that will be resolved to a RosTemplate `{ Ref }` for this element.
	//
	// If, by any chance, the intrinsic reference of a resource is not a string, you could
	// coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`.
	Ref() *string
	ResourceGroupId() interface{}
	SetResourceGroupId(val interface{})
	// Options for this resource, such as condition, update policy etc.
	RosOptions() alicloudroscdkcore.IRosResourceOptions
	RosProperties() *map[string]interface{}
	// ROS resource type.
	RosResourceType() *string
	// The stack in which this element is defined.
	//
	// RosElements must be defined within a stack scope (directly or indirectly).
	Stack() alicloudroscdkcore.Stack
	StartInstanceParam() interface{}
	SetStartInstanceParam(val interface{})
	// Return properties modified after initiation.
	//
	// Resources that expose mutable properties should override this function to
	// collect and return the properties object for this resource.
	UpdatedProperites() *map[string]interface{}
	Version() interface{}
	SetVersion(val interface{})
	AddCondition(con alicloudroscdkcore.RosCondition)
	AddCount(count interface{})
	// Syntactic sugar for `addOverride(path, undefined)`.
	AddDeletionOverride(path *string)
	// Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
	//
	// This can be used for resources across stacks (or nested stack) boundaries
	// and the dependency will automatically be transferred to the relevant scope.
	AddDependsOn(target alicloudroscdkcore.RosResource)
	AddDesc(desc *string)
	AddMetaData(key *string, value interface{})
	// Adds an override to the synthesized ROS resource.
	//
	// To add a
	// property override, either use `addPropertyOverride` or prefix `path` with
	// "Properties." (i.e. `Properties.TopicName`).
	//
	// If the override is nested, separate each nested level using a dot (.) in the path parameter.
	// If there is an array as part of the nesting, specify the index in the path.
	//
	// For example,
	// “`typescript
	// addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute'])
	// addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE')
	// “`
	// would add the overrides
	// “`json
	// "Properties": {
	//    "GlobalSecondaryIndexes": [
	//      {
	//        "Projection": {
	//          "NonKeyAttributes": [ "myattribute" ]
	//          ...
	//        }
	//        ...
	//      },
	//      {
	//        "ProjectionType": "INCLUDE"
	//        ...
	//      },
	//    ]
	//    ...
	// }
	// “`.
	AddOverride(path *string, value interface{})
	// Adds an override that deletes the value of a property from the resource definition.
	AddPropertyDeletionOverride(propertyPath *string)
	// Adds an override to a resource property.
	//
	// Syntactic sugar for `addOverride("Properties.<...>", value)`.
	AddPropertyOverride(propertyPath *string, value interface{})
	AddRosDependency(target *string)
	// Sets the deletion policy of the resource based on the removal policy specified.
	ApplyRemovalPolicy(policy alicloudroscdkcore.RemovalPolicy, options *alicloudroscdkcore.RemovalPolicyOptions)
	// Returns a token for an runtime attribute of this resource.
	//
	// Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility
	// in case there is no generated attribute.
	GetAtt(attributeName *string) alicloudroscdkcore.Reference
	// Perform final modifications before synthesis.
	//
	// This method can be implemented by derived constructs in order to perform
	// final changes before synthesis. prepare() will be called after child
	// constructs have been prepared.
	//
	// This is an advanced framework feature. Only use this if you
	// understand the implications.
	OnPrepare()
	// Allows this construct to emit artifacts into the cloud assembly during synthesis.
	//
	// This method is usually implemented by framework-level constructs such as `Stack` and `Asset`
	// as they participate in synthesizing the cloud assembly.
	OnSynthesize(session constructs.ISynthesisSession)
	// Validate the current construct.
	//
	// This method can be implemented by derived constructs in order to perform
	// validation logic. It is called on all constructs before synthesis.
	//
	// Returns: An array of validation error messages, or an empty array if the construct is valid.
	OnValidate() *[]*string
	// Overrides the auto-generated logical ID with a specific ID.
	OverrideLogicalId(newLogicalId *string)
	// Perform final modifications before synthesis.
	//
	// This method can be implemented by derived constructs in order to perform
	// final changes before synthesis. prepare() will be called after child
	// constructs have been prepared.
	//
	// This is an advanced framework feature. Only use this if you
	// understand the implications.
	Prepare()
	RenderProperties(props *map[string]interface{}) *map[string]interface{}
	// Allows this construct to emit artifacts into the cloud assembly during synthesis.
	//
	// This method is usually implemented by framework-level constructs such as `Stack` and `Asset`
	// as they participate in synthesizing the cloud assembly.
	Synthesize(session alicloudroscdkcore.ISynthesisSession)
	// Returns a string representation of this construct.
	//
	// Returns: a string representation of this resource.
	ToString() *string
	// Validate the current construct.
	//
	// This method can be implemented by derived constructs in order to perform
	// validation logic. It is called on all constructs before synthesis.
	//
	// Returns: An array of validation error messages, or an empty array if the construct is valid.
	Validate() *[]*string
	ValidateProperties(_properties interface{})
}

This class is a base encapsulation around the ROS resource type `ALIYUN::BastionHost::Instance`, which is used to create a bastion host.

func NewRosInstance

func NewRosInstance(scope alicloudroscdkcore.Construct, id *string, props *RosInstanceProps, enableResourcePropertyConstraint *bool) RosInstance

type RosInstanceProps

type RosInstanceProps struct {
	ExtendedStoragePlans interface{} `field:"required" json:"extendedStoragePlans" yaml:"extendedStoragePlans"`
	ExtraBandwidth       interface{} `field:"required" json:"extraBandwidth" yaml:"extraBandwidth"`
	Plan                 interface{} `field:"required" json:"plan" yaml:"plan"`
	StartInstanceParam   interface{} `field:"required" json:"startInstanceParam" yaml:"startInstanceParam"`
	Version              interface{} `field:"required" json:"version" yaml:"version"`
	AutoPay              interface{} `field:"optional" json:"autoPay" yaml:"autoPay"`
	AutoRenew            interface{} `field:"optional" json:"autoRenew" yaml:"autoRenew"`
	Period               interface{} `field:"optional" json:"period" yaml:"period"`
	PeriodUnit           interface{} `field:"optional" json:"periodUnit" yaml:"periodUnit"`
	ResourceGroupId      interface{} `field:"optional" json:"resourceGroupId" yaml:"resourceGroupId"`
}

Properties for defining a `RosInstance`.

See https://www.alibabacloud.com/help/ros/developer-reference/aliyun-bastionhost-instance

type RosInstance_StartInstanceParamProperty

type RosInstance_StartInstanceParamProperty struct {
	SecurityGroupIds interface{} `field:"required" json:"securityGroupIds" yaml:"securityGroupIds"`
	VswitchId        interface{} `field:"required" json:"vswitchId" yaml:"vswitchId"`
}

Directories

Path Synopsis
Package jsii contains the functionaility needed for jsii packages to initialize their dependencies and themselves.
Package jsii contains the functionaility needed for jsii packages to initialize their dependencies and themselves.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL