Documentation
¶
Index ¶
- func CfnCluster_CFN_RESOURCE_TYPE_NAME() *string
- func CfnCluster_IsCfnElement(x interface{}) *bool
- func CfnCluster_IsCfnResource(x interface{}) *bool
- func CfnCluster_IsConstruct(x interface{}) *bool
- func CfnComputeNodeGroup_CFN_RESOURCE_TYPE_NAME() *string
- func CfnComputeNodeGroup_IsCfnElement(x interface{}) *bool
- func CfnComputeNodeGroup_IsCfnResource(x interface{}) *bool
- func CfnComputeNodeGroup_IsConstruct(x interface{}) *bool
- func CfnQueue_CFN_RESOURCE_TYPE_NAME() *string
- func CfnQueue_IsCfnElement(x interface{}) *bool
- func CfnQueue_IsCfnResource(x interface{}) *bool
- func CfnQueue_IsConstruct(x interface{}) *bool
- func NewCfnCluster_Override(c CfnCluster, scope constructs.Construct, id *string, props *CfnClusterProps)
- func NewCfnComputeNodeGroup_Override(c CfnComputeNodeGroup, scope constructs.Construct, id *string, ...)
- func NewCfnQueue_Override(c CfnQueue, scope constructs.Construct, id *string, props *CfnQueueProps)
- type CfnCluster
- type CfnClusterProps
- type CfnCluster_AuthKeyProperty
- type CfnCluster_EndpointProperty
- type CfnCluster_ErrorInfoProperty
- type CfnCluster_NetworkingProperty
- type CfnCluster_SchedulerProperty
- type CfnCluster_SlurmConfigurationProperty
- type CfnCluster_SlurmCustomSettingProperty
- type CfnComputeNodeGroup
- type CfnComputeNodeGroupProps
- type CfnComputeNodeGroup_CustomLaunchTemplateProperty
- type CfnComputeNodeGroup_ErrorInfoProperty
- type CfnComputeNodeGroup_InstanceConfigProperty
- type CfnComputeNodeGroup_ScalingConfigurationProperty
- type CfnComputeNodeGroup_SlurmConfigurationProperty
- type CfnComputeNodeGroup_SlurmCustomSettingProperty
- type CfnComputeNodeGroup_SpotOptionsProperty
- type CfnQueue
- type CfnQueueProps
- type CfnQueue_ComputeNodeGroupConfigurationProperty
- type CfnQueue_ErrorInfoProperty
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func CfnCluster_CFN_RESOURCE_TYPE_NAME ¶
func CfnCluster_CFN_RESOURCE_TYPE_NAME() *string
func CfnCluster_IsCfnElement ¶
func CfnCluster_IsCfnElement(x interface{}) *bool
Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation 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 CfnCluster_IsCfnResource ¶
func CfnCluster_IsCfnResource(x interface{}) *bool
Check whether the given object is a CfnResource.
func CfnCluster_IsConstruct ¶
func CfnCluster_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Use this method instead of `instanceof` to properly detect `Construct` instances, even when the construct library is symlinked.
Explanation: in JavaScript, multiple copies of the `constructs` library on disk are seen as independent, completely different libraries. As a consequence, the class `Construct` in each copy of the `constructs` library is seen as a different class, and an instance of one class will not test as `instanceof` the other class. `npm install` will not create installations like this, but users may manually symlink construct libraries together or use a monorepo tool: in those cases, multiple copies of the `constructs` library can be accidentally installed, and `instanceof` will behave unpredictably. It is safest to avoid using `instanceof`, and using this type-testing method instead.
Returns: true if `x` is an object created from a class which extends `Construct`.
func CfnComputeNodeGroup_CFN_RESOURCE_TYPE_NAME ¶
func CfnComputeNodeGroup_CFN_RESOURCE_TYPE_NAME() *string
func CfnComputeNodeGroup_IsCfnElement ¶
func CfnComputeNodeGroup_IsCfnElement(x interface{}) *bool
Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation 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 CfnComputeNodeGroup_IsCfnResource ¶
func CfnComputeNodeGroup_IsCfnResource(x interface{}) *bool
Check whether the given object is a CfnResource.
func CfnComputeNodeGroup_IsConstruct ¶
func CfnComputeNodeGroup_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Use this method instead of `instanceof` to properly detect `Construct` instances, even when the construct library is symlinked.
Explanation: in JavaScript, multiple copies of the `constructs` library on disk are seen as independent, completely different libraries. As a consequence, the class `Construct` in each copy of the `constructs` library is seen as a different class, and an instance of one class will not test as `instanceof` the other class. `npm install` will not create installations like this, but users may manually symlink construct libraries together or use a monorepo tool: in those cases, multiple copies of the `constructs` library can be accidentally installed, and `instanceof` will behave unpredictably. It is safest to avoid using `instanceof`, and using this type-testing method instead.
Returns: true if `x` is an object created from a class which extends `Construct`.
func CfnQueue_CFN_RESOURCE_TYPE_NAME ¶
func CfnQueue_CFN_RESOURCE_TYPE_NAME() *string
func CfnQueue_IsCfnElement ¶
func CfnQueue_IsCfnElement(x interface{}) *bool
Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation 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 CfnQueue_IsCfnResource ¶
func CfnQueue_IsCfnResource(x interface{}) *bool
Check whether the given object is a CfnResource.
func CfnQueue_IsConstruct ¶
func CfnQueue_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Use this method instead of `instanceof` to properly detect `Construct` instances, even when the construct library is symlinked.
Explanation: in JavaScript, multiple copies of the `constructs` library on disk are seen as independent, completely different libraries. As a consequence, the class `Construct` in each copy of the `constructs` library is seen as a different class, and an instance of one class will not test as `instanceof` the other class. `npm install` will not create installations like this, but users may manually symlink construct libraries together or use a monorepo tool: in those cases, multiple copies of the `constructs` library can be accidentally installed, and `instanceof` will behave unpredictably. It is safest to avoid using `instanceof`, and using this type-testing method instead.
Returns: true if `x` is an object created from a class which extends `Construct`.
func NewCfnCluster_Override ¶
func NewCfnCluster_Override(c CfnCluster, scope constructs.Construct, id *string, props *CfnClusterProps)
func NewCfnComputeNodeGroup_Override ¶
func NewCfnComputeNodeGroup_Override(c CfnComputeNodeGroup, scope constructs.Construct, id *string, props *CfnComputeNodeGroupProps)
func NewCfnQueue_Override ¶
func NewCfnQueue_Override(c CfnQueue, scope constructs.Construct, id *string, props *CfnQueueProps)
Types ¶
type CfnCluster ¶
type CfnCluster interface { awscdk.CfnResource awscdk.IInspectable awscdk.ITaggableV2 // The unique Amazon Resource Name (ARN) of the cluster. AttrArn() *string // The list of endpoints available for interaction with the scheduler. AttrEndpoints() awscdk.IResolvable // The list of errors that occurred during cluster provisioning. AttrErrorInfo() awscdk.IResolvable // The generated unique ID of the cluster. AttrId() *string // The provisioning status of the cluster. // // The provisioning status doesn't indicate the overall health of the cluster. AttrStatus() *string // Tag Manager which manages the tags for this resource. CdkTagManager() awscdk.TagManager // Options for this resource, such as condition, update policy etc. CfnOptions() awscdk.ICfnResourceOptions CfnProperties() *map[string]interface{} // AWS resource type. CfnResourceType() *string // Returns: the stack trace of the point where this Resource was created from, sourced // from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most // node +internal+ entries filtered. CreationStack() *[]*string // The logical ID for this CloudFormation 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 name that identifies the cluster. Name() *string SetName(val *string) // The networking configuration for the cluster's control plane. Networking() interface{} SetNetworking(val interface{}) // The tree node. Node() constructs.Node // Return a string that will be resolved to a CloudFormation `{ 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 // The cluster management and job scheduling software associated with the cluster. Scheduler() interface{} SetScheduler(val interface{}) // The size of the cluster. Size() *string SetSize(val *string) // Additional options related to the Slurm scheduler. SlurmConfiguration() interface{} SetSlurmConfiguration(val interface{}) // The stack in which this element is defined. // // CfnElements must be defined within a stack scope (directly or indirectly). Stack() awscdk.Stack // 1 or more tags added to the resource. Tags() *map[string]*string SetTags(val *map[string]*string) // Deprecated. // Deprecated: use `updatedProperties` // // 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{} // Return properties modified after initiation. // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. UpdatedProperties() *map[string]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. AddDependency(target awscdk.CfnResource) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // Deprecated: use addDependency. AddDependsOn(target awscdk.CfnResource) // Add a value to the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // AddMetadata(key *string, value interface{}) // Adds an override to the synthesized CloudFormation 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. // // To include a literal `.` in the property name, prefix with a `\`. In most // programming languages you will need to write this as `"\\."` because the // `\` itself will need to be escaped. // // For example, // “`typescript // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']); // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE'); // “` // would add the overrides // “`json // "Properties": { // "GlobalSecondaryIndexes": [ // { // "Projection": { // "NonKeyAttributes": [ "myattribute" ] // ... // } // ... // }, // { // "ProjectionType": "INCLUDE" // ... // }, // ] // ... // } // “` // // The `value` argument to `addOverride` will not be processed or translated // in any way. Pass raw JSON values in here with the correct capitalization // for CloudFormation. If you pass CDK classes or structs, they will be // rendered with lowercased key names, and CloudFormation will reject the // template. 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{}) // Sets the deletion policy of the resource based on the removal policy specified. // // The Removal Policy controls what happens to this resource when it stops // being managed by CloudFormation, either because you've removed it from the // CDK application or because you've made a change that requires the resource // to be replaced. // // The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS // account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). In some // cases, a snapshot can be taken of the resource prior to deletion // (`RemovalPolicy.SNAPSHOT`). A list of resources that support this policy // can be found in the following link:. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html#aws-attribute-deletionpolicy-options // ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.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, typeHint awscdk.ResolutionTypeHint) awscdk.Reference // Retrieve a value value from the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // GetMetadata(key *string) interface{} // Examines the CloudFormation resource and discloses attributes. Inspect(inspector awscdk.TreeInspector) // Retrieves an array of resources this resource depends on. // // This assembles dependencies on resources across stacks (including nested stacks) // automatically. ObtainDependencies() *[]interface{} // Get a shallow copy of dependencies between this resource and other resources in the same stack. ObtainResourceDependencies() *[]awscdk.CfnResource // Overrides the auto-generated logical ID with a specific ID. OverrideLogicalId(newLogicalId *string) // Indicates that this resource no longer depends on another resource. // // This can be used for resources across stacks (including nested stacks) // and the dependency will automatically be removed from the relevant scope. RemoveDependency(target awscdk.CfnResource) RenderProperties(props *map[string]interface{}) *map[string]interface{} // Replaces one dependency with another. ReplaceDependency(target awscdk.CfnResource, newTarget awscdk.CfnResource) // Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template. // // Returns: `true` if the resource should be included or `false` is the resource // should be omitted. ShouldSynthesize() *bool // Returns a string representation of this construct. // // Returns: a string representation of this resource. ToString() *string ValidateProperties(_properties interface{}) }
The `AWS::PCS::Cluster` resource creates an AWS PCS cluster.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnCluster := awscdk.Aws_pcs.NewCfnCluster(this, jsii.String("MyCfnCluster"), &CfnClusterProps{ Networking: &NetworkingProperty{ SecurityGroupIds: []*string{ jsii.String("securityGroupIds"), }, SubnetIds: []*string{ jsii.String("subnetIds"), }, }, Scheduler: &SchedulerProperty{ Type: jsii.String("type"), Version: jsii.String("version"), }, Size: jsii.String("size"), // the properties below are optional Name: jsii.String("name"), SlurmConfiguration: &SlurmConfigurationProperty{ AuthKey: &AuthKeyProperty{ SecretArn: jsii.String("secretArn"), SecretVersion: jsii.String("secretVersion"), }, ScaleDownIdleTimeInSeconds: jsii.Number(123), SlurmCustomSettings: []interface{}{ &SlurmCustomSettingProperty{ ParameterName: jsii.String("parameterName"), ParameterValue: jsii.String("parameterValue"), }, }, }, Tags: map[string]*string{ "tagsKey": jsii.String("tags"), }, })
See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pcs-cluster.html
func NewCfnCluster ¶
func NewCfnCluster(scope constructs.Construct, id *string, props *CfnClusterProps) CfnCluster
type CfnClusterProps ¶
type CfnClusterProps struct { // The networking configuration for the cluster's control plane. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pcs-cluster.html#cfn-pcs-cluster-networking // Networking interface{} `field:"required" json:"networking" yaml:"networking"` // The cluster management and job scheduling software associated with the cluster. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pcs-cluster.html#cfn-pcs-cluster-scheduler // Scheduler interface{} `field:"required" json:"scheduler" yaml:"scheduler"` // The size of the cluster. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pcs-cluster.html#cfn-pcs-cluster-size // Size *string `field:"required" json:"size" yaml:"size"` // The name that identifies the cluster. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pcs-cluster.html#cfn-pcs-cluster-name // Name *string `field:"optional" json:"name" yaml:"name"` // Additional options related to the Slurm scheduler. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pcs-cluster.html#cfn-pcs-cluster-slurmconfiguration // SlurmConfiguration interface{} `field:"optional" json:"slurmConfiguration" yaml:"slurmConfiguration"` // 1 or more tags added to the resource. // // Each tag consists of a tag key and tag value. The tag value is optional and can be an empty string. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pcs-cluster.html#cfn-pcs-cluster-tags // Tags *map[string]*string `field:"optional" json:"tags" yaml:"tags"` }
Properties for defining a `CfnCluster`.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnClusterProps := &CfnClusterProps{ Networking: &NetworkingProperty{ SecurityGroupIds: []*string{ jsii.String("securityGroupIds"), }, SubnetIds: []*string{ jsii.String("subnetIds"), }, }, Scheduler: &SchedulerProperty{ Type: jsii.String("type"), Version: jsii.String("version"), }, Size: jsii.String("size"), // the properties below are optional Name: jsii.String("name"), SlurmConfiguration: &SlurmConfigurationProperty{ AuthKey: &AuthKeyProperty{ SecretArn: jsii.String("secretArn"), SecretVersion: jsii.String("secretVersion"), }, ScaleDownIdleTimeInSeconds: jsii.Number(123), SlurmCustomSettings: []interface{}{ &SlurmCustomSettingProperty{ ParameterName: jsii.String("parameterName"), ParameterValue: jsii.String("parameterValue"), }, }, }, Tags: map[string]*string{ "tagsKey": jsii.String("tags"), }, }
See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pcs-cluster.html
type CfnCluster_AuthKeyProperty ¶
type CfnCluster_AuthKeyProperty struct { // The Amazon Resource Name (ARN) of the shared Slurm key. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pcs-cluster-authkey.html#cfn-pcs-cluster-authkey-secretarn // SecretArn *string `field:"required" json:"secretArn" yaml:"secretArn"` // The version of the shared Slurm key. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pcs-cluster-authkey.html#cfn-pcs-cluster-authkey-secretversion // SecretVersion *string `field:"required" json:"secretVersion" yaml:"secretVersion"` }
The shared Slurm key for authentication, also known as the *cluster secret* .
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" authKeyProperty := &AuthKeyProperty{ SecretArn: jsii.String("secretArn"), SecretVersion: jsii.String("secretVersion"), }
type CfnCluster_EndpointProperty ¶
type CfnCluster_EndpointProperty struct { // The endpoint's connection port number. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pcs-cluster-endpoint.html#cfn-pcs-cluster-endpoint-port // Port *string `field:"required" json:"port" yaml:"port"` // The endpoint's private IP address. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pcs-cluster-endpoint.html#cfn-pcs-cluster-endpoint-privateipaddress // PrivateIpAddress *string `field:"required" json:"privateIpAddress" yaml:"privateIpAddress"` // Indicates the type of endpoint running at the specific IP address. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pcs-cluster-endpoint.html#cfn-pcs-cluster-endpoint-type // Type *string `field:"required" json:"type" yaml:"type"` // The endpoint's public IP address. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pcs-cluster-endpoint.html#cfn-pcs-cluster-endpoint-publicipaddress // PublicIpAddress *string `field:"optional" json:"publicIpAddress" yaml:"publicIpAddress"` }
An endpoint available for interaction with the scheduler.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" endpointProperty := &EndpointProperty{ Port: jsii.String("port"), PrivateIpAddress: jsii.String("privateIpAddress"), Type: jsii.String("type"), // the properties below are optional PublicIpAddress: jsii.String("publicIpAddress"), }
type CfnCluster_ErrorInfoProperty ¶
type CfnCluster_ErrorInfoProperty struct { // The short-form error code. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pcs-cluster-errorinfo.html#cfn-pcs-cluster-errorinfo-code // Code *string `field:"optional" json:"code" yaml:"code"` // The detailed error information. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pcs-cluster-errorinfo.html#cfn-pcs-cluster-errorinfo-message // Message *string `field:"optional" json:"message" yaml:"message"` }
An error that occurred during resource provisioning.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" errorInfoProperty := &ErrorInfoProperty{ Code: jsii.String("code"), Message: jsii.String("message"), }
type CfnCluster_NetworkingProperty ¶
type CfnCluster_NetworkingProperty struct { // The list of security group IDs associated with the Elastic Network Interface (ENI) created in subnets. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pcs-cluster-networking.html#cfn-pcs-cluster-networking-securitygroupids // SecurityGroupIds *[]*string `field:"optional" json:"securityGroupIds" yaml:"securityGroupIds"` // The list of subnet IDs where AWS PCS creates an Elastic Network Interface (ENI) to enable communication between managed controllers and AWS PCS resources. // // The subnet must have an available IP address, cannot reside in AWS Outposts, AWS Wavelength, or an AWS Local Zone. AWS PCS currently supports only 1 subnet in this list. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pcs-cluster-networking.html#cfn-pcs-cluster-networking-subnetids // SubnetIds *[]*string `field:"optional" json:"subnetIds" yaml:"subnetIds"` }
TThe networking configuration for the cluster's control plane.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" networkingProperty := &NetworkingProperty{ SecurityGroupIds: []*string{ jsii.String("securityGroupIds"), }, SubnetIds: []*string{ jsii.String("subnetIds"), }, }
type CfnCluster_SchedulerProperty ¶
type CfnCluster_SchedulerProperty struct { // The software AWS PCS uses to manage cluster scaling and job scheduling. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pcs-cluster-scheduler.html#cfn-pcs-cluster-scheduler-type // Type *string `field:"required" json:"type" yaml:"type"` // The version of the specified scheduling software that AWS PCS uses to manage cluster scaling and job scheduling. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pcs-cluster-scheduler.html#cfn-pcs-cluster-scheduler-version // Version *string `field:"required" json:"version" yaml:"version"` }
The cluster management and job scheduling software associated with the cluster.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" schedulerProperty := &SchedulerProperty{ Type: jsii.String("type"), Version: jsii.String("version"), }
type CfnCluster_SlurmConfigurationProperty ¶
type CfnCluster_SlurmConfigurationProperty struct { // The shared Slurm key for authentication, also known as the cluster secret. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pcs-cluster-slurmconfiguration.html#cfn-pcs-cluster-slurmconfiguration-authkey // AuthKey interface{} `field:"optional" json:"authKey" yaml:"authKey"` // The time before an idle node is scaled down. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pcs-cluster-slurmconfiguration.html#cfn-pcs-cluster-slurmconfiguration-scaledownidletimeinseconds // ScaleDownIdleTimeInSeconds *float64 `field:"optional" json:"scaleDownIdleTimeInSeconds" yaml:"scaleDownIdleTimeInSeconds"` // Additional Slurm-specific configuration that directly maps to Slurm settings. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pcs-cluster-slurmconfiguration.html#cfn-pcs-cluster-slurmconfiguration-slurmcustomsettings // SlurmCustomSettings interface{} `field:"optional" json:"slurmCustomSettings" yaml:"slurmCustomSettings"` }
Additional options related to the Slurm scheduler.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" slurmConfigurationProperty := &SlurmConfigurationProperty{ AuthKey: &AuthKeyProperty{ SecretArn: jsii.String("secretArn"), SecretVersion: jsii.String("secretVersion"), }, ScaleDownIdleTimeInSeconds: jsii.Number(123), SlurmCustomSettings: []interface{}{ &SlurmCustomSettingProperty{ ParameterName: jsii.String("parameterName"), ParameterValue: jsii.String("parameterValue"), }, }, }
type CfnCluster_SlurmCustomSettingProperty ¶
type CfnCluster_SlurmCustomSettingProperty struct { // AWS PCS supports configuration of the following Slurm parameters:. // // - For *clusters* // // - [`Prolog`](https://docs.aws.amazon.com/https://slurm.schedmd.com/slurm.conf.html#OPT_Prolog_1) // - [`Epilog`](https://docs.aws.amazon.com/https://slurm.schedmd.com/slurm.conf.html#OPT_Epilog_1) // - [`SelectTypeParameters`](https://docs.aws.amazon.com/https://slurm.schedmd.com/slurm.conf.html#OPT_SelectTypeParameters) // - For *compute node groups* // // - [`Weight`](https://docs.aws.amazon.com/https://slurm.schedmd.com/slurm.conf.html#OPT_Weight) // - [`RealMemory`](https://docs.aws.amazon.com/https://slurm.schedmd.com/slurm.conf.html#OPT_Weight) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pcs-cluster-slurmcustomsetting.html#cfn-pcs-cluster-slurmcustomsetting-parametername // ParameterName *string `field:"required" json:"parameterName" yaml:"parameterName"` // The values for the configured Slurm settings. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pcs-cluster-slurmcustomsetting.html#cfn-pcs-cluster-slurmcustomsetting-parametervalue // ParameterValue *string `field:"required" json:"parameterValue" yaml:"parameterValue"` }
Additional settings that directly map to Slurm settings.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" slurmCustomSettingProperty := &SlurmCustomSettingProperty{ ParameterName: jsii.String("parameterName"), ParameterValue: jsii.String("parameterValue"), }
type CfnComputeNodeGroup ¶
type CfnComputeNodeGroup interface { awscdk.CfnResource awscdk.IInspectable awscdk.ITaggableV2 // The ID of the Amazon Machine Image (AMI) that AWS PCS uses to launch instances. AmiId() *string SetAmiId(val *string) // The unique Amazon Resource Name (ARN) of the compute node group. AttrArn() *string // The list of errors that occurred during compute node group provisioning. AttrErrorInfo() awscdk.IResolvable // The generated unique ID of the compute node group. AttrId() *string // The provisioning status of the compute node group. // // The provisioning status doesn't indicate the overall health of the compute node group. AttrStatus() *string // Tag Manager which manages the tags for this resource. CdkTagManager() awscdk.TagManager // Options for this resource, such as condition, update policy etc. CfnOptions() awscdk.ICfnResourceOptions CfnProperties() *map[string]interface{} // AWS resource type. CfnResourceType() *string // The ID of the cluster of the compute node group. ClusterId() *string SetClusterId(val *string) // Returns: the stack trace of the point where this Resource was created from, sourced // from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most // node +internal+ entries filtered. CreationStack() *[]*string // An Amazon EC2 launch template AWS PCS uses to launch compute nodes. CustomLaunchTemplate() interface{} SetCustomLaunchTemplate(val interface{}) // The Amazon Resource Name (ARN) of the IAM instance profile used to pass an IAM role when launching EC2 instances. IamInstanceProfileArn() *string SetIamInstanceProfileArn(val *string) // A list of EC2 instance configurations that AWS PCS can provision in the compute node group. InstanceConfigs() interface{} SetInstanceConfigs(val interface{}) // The logical ID for this CloudFormation 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 name that identifies the compute node group. Name() *string SetName(val *string) // The tree node. Node() constructs.Node // Specifies how EC2 instances are purchased on your behalf. PurchaseOption() *string SetPurchaseOption(val *string) // Return a string that will be resolved to a CloudFormation `{ 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 // Specifies the boundaries of the compute node group auto scaling. ScalingConfiguration() interface{} SetScalingConfiguration(val interface{}) // Additional options related to the Slurm scheduler. SlurmConfiguration() interface{} SetSlurmConfiguration(val interface{}) // Additional configuration when you specify `SPOT` as the `purchaseOption` . SpotOptions() interface{} SetSpotOptions(val interface{}) // The stack in which this element is defined. // // CfnElements must be defined within a stack scope (directly or indirectly). Stack() awscdk.Stack // The list of subnet IDs where instances are provisioned by the compute node group. SubnetIds() *[]*string SetSubnetIds(val *[]*string) // 1 or more tags added to the resource. Tags() *map[string]*string SetTags(val *map[string]*string) // Deprecated. // Deprecated: use `updatedProperties` // // 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{} // Return properties modified after initiation. // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. UpdatedProperties() *map[string]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. AddDependency(target awscdk.CfnResource) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // Deprecated: use addDependency. AddDependsOn(target awscdk.CfnResource) // Add a value to the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // AddMetadata(key *string, value interface{}) // Adds an override to the synthesized CloudFormation 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. // // To include a literal `.` in the property name, prefix with a `\`. In most // programming languages you will need to write this as `"\\."` because the // `\` itself will need to be escaped. // // For example, // “`typescript // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']); // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE'); // “` // would add the overrides // “`json // "Properties": { // "GlobalSecondaryIndexes": [ // { // "Projection": { // "NonKeyAttributes": [ "myattribute" ] // ... // } // ... // }, // { // "ProjectionType": "INCLUDE" // ... // }, // ] // ... // } // “` // // The `value` argument to `addOverride` will not be processed or translated // in any way. Pass raw JSON values in here with the correct capitalization // for CloudFormation. If you pass CDK classes or structs, they will be // rendered with lowercased key names, and CloudFormation will reject the // template. 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{}) // Sets the deletion policy of the resource based on the removal policy specified. // // The Removal Policy controls what happens to this resource when it stops // being managed by CloudFormation, either because you've removed it from the // CDK application or because you've made a change that requires the resource // to be replaced. // // The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS // account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). In some // cases, a snapshot can be taken of the resource prior to deletion // (`RemovalPolicy.SNAPSHOT`). A list of resources that support this policy // can be found in the following link:. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html#aws-attribute-deletionpolicy-options // ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.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, typeHint awscdk.ResolutionTypeHint) awscdk.Reference // Retrieve a value value from the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // GetMetadata(key *string) interface{} // Examines the CloudFormation resource and discloses attributes. Inspect(inspector awscdk.TreeInspector) // Retrieves an array of resources this resource depends on. // // This assembles dependencies on resources across stacks (including nested stacks) // automatically. ObtainDependencies() *[]interface{} // Get a shallow copy of dependencies between this resource and other resources in the same stack. ObtainResourceDependencies() *[]awscdk.CfnResource // Overrides the auto-generated logical ID with a specific ID. OverrideLogicalId(newLogicalId *string) // Indicates that this resource no longer depends on another resource. // // This can be used for resources across stacks (including nested stacks) // and the dependency will automatically be removed from the relevant scope. RemoveDependency(target awscdk.CfnResource) RenderProperties(props *map[string]interface{}) *map[string]interface{} // Replaces one dependency with another. ReplaceDependency(target awscdk.CfnResource, newTarget awscdk.CfnResource) // Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template. // // Returns: `true` if the resource should be included or `false` is the resource // should be omitted. ShouldSynthesize() *bool // Returns a string representation of this construct. // // Returns: a string representation of this resource. ToString() *string ValidateProperties(_properties interface{}) }
The `AWS::PCS::ComputeNodeGroup` resource creates an AWS PCS compute node group.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnComputeNodeGroup := awscdk.Aws_pcs.NewCfnComputeNodeGroup(this, jsii.String("MyCfnComputeNodeGroup"), &CfnComputeNodeGroupProps{ ClusterId: jsii.String("clusterId"), CustomLaunchTemplate: &CustomLaunchTemplateProperty{ Id: jsii.String("id"), Version: jsii.String("version"), }, IamInstanceProfileArn: jsii.String("iamInstanceProfileArn"), InstanceConfigs: []interface{}{ &InstanceConfigProperty{ InstanceType: jsii.String("instanceType"), }, }, ScalingConfiguration: &ScalingConfigurationProperty{ MaxInstanceCount: jsii.Number(123), MinInstanceCount: jsii.Number(123), }, SubnetIds: []*string{ jsii.String("subnetIds"), }, // the properties below are optional AmiId: jsii.String("amiId"), Name: jsii.String("name"), PurchaseOption: jsii.String("purchaseOption"), SlurmConfiguration: &SlurmConfigurationProperty{ SlurmCustomSettings: []interface{}{ &SlurmCustomSettingProperty{ ParameterName: jsii.String("parameterName"), ParameterValue: jsii.String("parameterValue"), }, }, }, SpotOptions: &SpotOptionsProperty{ AllocationStrategy: jsii.String("allocationStrategy"), }, Tags: map[string]*string{ "tagsKey": jsii.String("tags"), }, })
See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pcs-computenodegroup.html
func NewCfnComputeNodeGroup ¶
func NewCfnComputeNodeGroup(scope constructs.Construct, id *string, props *CfnComputeNodeGroupProps) CfnComputeNodeGroup
type CfnComputeNodeGroupProps ¶
type CfnComputeNodeGroupProps struct { // The ID of the cluster of the compute node group. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pcs-computenodegroup.html#cfn-pcs-computenodegroup-clusterid // ClusterId *string `field:"required" json:"clusterId" yaml:"clusterId"` // An Amazon EC2 launch template AWS PCS uses to launch compute nodes. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pcs-computenodegroup.html#cfn-pcs-computenodegroup-customlaunchtemplate // CustomLaunchTemplate interface{} `field:"required" json:"customLaunchTemplate" yaml:"customLaunchTemplate"` // The Amazon Resource Name (ARN) of the IAM instance profile used to pass an IAM role when launching EC2 instances. // // The role contained in your instance profile must have pcs:RegisterComputeNodeGroupInstance permissions attached to provision instances correctly. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pcs-computenodegroup.html#cfn-pcs-computenodegroup-iaminstanceprofilearn // IamInstanceProfileArn *string `field:"required" json:"iamInstanceProfileArn" yaml:"iamInstanceProfileArn"` // A list of EC2 instance configurations that AWS PCS can provision in the compute node group. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pcs-computenodegroup.html#cfn-pcs-computenodegroup-instanceconfigs // InstanceConfigs interface{} `field:"required" json:"instanceConfigs" yaml:"instanceConfigs"` // Specifies the boundaries of the compute node group auto scaling. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pcs-computenodegroup.html#cfn-pcs-computenodegroup-scalingconfiguration // ScalingConfiguration interface{} `field:"required" json:"scalingConfiguration" yaml:"scalingConfiguration"` // The list of subnet IDs where instances are provisioned by the compute node group. // // The subnets must be in the same VPC as the cluster. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pcs-computenodegroup.html#cfn-pcs-computenodegroup-subnetids // SubnetIds *[]*string `field:"required" json:"subnetIds" yaml:"subnetIds"` // The ID of the Amazon Machine Image (AMI) that AWS PCS uses to launch instances. // // If not provided, AWS PCS uses the AMI ID specified in the custom launch template. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pcs-computenodegroup.html#cfn-pcs-computenodegroup-amiid // AmiId *string `field:"optional" json:"amiId" yaml:"amiId"` // The name that identifies the compute node group. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pcs-computenodegroup.html#cfn-pcs-computenodegroup-name // Name *string `field:"optional" json:"name" yaml:"name"` // Specifies how EC2 instances are purchased on your behalf. // // AWS PCS supports On-Demand and Spot instances. For more information, see Instance purchasing options in the Amazon Elastic Compute Cloud User Guide. If you don't provide this option, it defaults to On-Demand. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pcs-computenodegroup.html#cfn-pcs-computenodegroup-purchaseoption // PurchaseOption *string `field:"optional" json:"purchaseOption" yaml:"purchaseOption"` // Additional options related to the Slurm scheduler. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pcs-computenodegroup.html#cfn-pcs-computenodegroup-slurmconfiguration // SlurmConfiguration interface{} `field:"optional" json:"slurmConfiguration" yaml:"slurmConfiguration"` // Additional configuration when you specify `SPOT` as the `purchaseOption` . // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pcs-computenodegroup.html#cfn-pcs-computenodegroup-spotoptions // SpotOptions interface{} `field:"optional" json:"spotOptions" yaml:"spotOptions"` // 1 or more tags added to the resource. // // Each tag consists of a tag key and tag value. The tag value is optional and can be an empty string. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pcs-computenodegroup.html#cfn-pcs-computenodegroup-tags // Tags *map[string]*string `field:"optional" json:"tags" yaml:"tags"` }
Properties for defining a `CfnComputeNodeGroup`.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnComputeNodeGroupProps := &CfnComputeNodeGroupProps{ ClusterId: jsii.String("clusterId"), CustomLaunchTemplate: &CustomLaunchTemplateProperty{ Id: jsii.String("id"), Version: jsii.String("version"), }, IamInstanceProfileArn: jsii.String("iamInstanceProfileArn"), InstanceConfigs: []interface{}{ &InstanceConfigProperty{ InstanceType: jsii.String("instanceType"), }, }, ScalingConfiguration: &ScalingConfigurationProperty{ MaxInstanceCount: jsii.Number(123), MinInstanceCount: jsii.Number(123), }, SubnetIds: []*string{ jsii.String("subnetIds"), }, // the properties below are optional AmiId: jsii.String("amiId"), Name: jsii.String("name"), PurchaseOption: jsii.String("purchaseOption"), SlurmConfiguration: &SlurmConfigurationProperty{ SlurmCustomSettings: []interface{}{ &SlurmCustomSettingProperty{ ParameterName: jsii.String("parameterName"), ParameterValue: jsii.String("parameterValue"), }, }, }, SpotOptions: &SpotOptionsProperty{ AllocationStrategy: jsii.String("allocationStrategy"), }, Tags: map[string]*string{ "tagsKey": jsii.String("tags"), }, }
See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pcs-computenodegroup.html
type CfnComputeNodeGroup_CustomLaunchTemplateProperty ¶
type CfnComputeNodeGroup_CustomLaunchTemplateProperty struct { // The ID of the EC2 launch template to use to provision instances. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pcs-computenodegroup-customlaunchtemplate.html#cfn-pcs-computenodegroup-customlaunchtemplate-id // Id *string `field:"required" json:"id" yaml:"id"` // The version of the EC2 launch template to use to provision instances. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pcs-computenodegroup-customlaunchtemplate.html#cfn-pcs-computenodegroup-customlaunchtemplate-version // Version *string `field:"required" json:"version" yaml:"version"` }
An Amazon EC2 launch template AWS PCS uses to launch compute nodes.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" customLaunchTemplateProperty := &CustomLaunchTemplateProperty{ Id: jsii.String("id"), Version: jsii.String("version"), }
type CfnComputeNodeGroup_ErrorInfoProperty ¶
type CfnComputeNodeGroup_ErrorInfoProperty struct { // The short-form error code. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pcs-computenodegroup-errorinfo.html#cfn-pcs-computenodegroup-errorinfo-code // Code *string `field:"optional" json:"code" yaml:"code"` // The detailed error information. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pcs-computenodegroup-errorinfo.html#cfn-pcs-computenodegroup-errorinfo-message // Message *string `field:"optional" json:"message" yaml:"message"` }
The list of errors that occurred during compute node group provisioning.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" errorInfoProperty := &ErrorInfoProperty{ Code: jsii.String("code"), Message: jsii.String("message"), }
type CfnComputeNodeGroup_InstanceConfigProperty ¶
type CfnComputeNodeGroup_InstanceConfigProperty struct { // The EC2 instance type that AWS PCS can provision in the compute node group. // // Example: `t2.xlarge` // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pcs-computenodegroup-instanceconfig.html#cfn-pcs-computenodegroup-instanceconfig-instancetype // InstanceType *string `field:"optional" json:"instanceType" yaml:"instanceType"` }
An EC2 instance configuration AWS PCS uses to launch compute nodes.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" instanceConfigProperty := &InstanceConfigProperty{ InstanceType: jsii.String("instanceType"), }
type CfnComputeNodeGroup_ScalingConfigurationProperty ¶
type CfnComputeNodeGroup_ScalingConfigurationProperty struct { // The upper bound of the number of instances allowed in the compute fleet. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pcs-computenodegroup-scalingconfiguration.html#cfn-pcs-computenodegroup-scalingconfiguration-maxinstancecount // MaxInstanceCount *float64 `field:"required" json:"maxInstanceCount" yaml:"maxInstanceCount"` // The lower bound of the number of instances allowed in the compute fleet. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pcs-computenodegroup-scalingconfiguration.html#cfn-pcs-computenodegroup-scalingconfiguration-mininstancecount // MinInstanceCount *float64 `field:"required" json:"minInstanceCount" yaml:"minInstanceCount"` }
Specifies the boundaries of the compute node group auto scaling.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" scalingConfigurationProperty := &ScalingConfigurationProperty{ MaxInstanceCount: jsii.Number(123), MinInstanceCount: jsii.Number(123), }
type CfnComputeNodeGroup_SlurmConfigurationProperty ¶
type CfnComputeNodeGroup_SlurmConfigurationProperty struct { // Additional Slurm-specific configuration that directly maps to Slurm settings. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pcs-computenodegroup-slurmconfiguration.html#cfn-pcs-computenodegroup-slurmconfiguration-slurmcustomsettings // SlurmCustomSettings interface{} `field:"optional" json:"slurmCustomSettings" yaml:"slurmCustomSettings"` }
Additional options related to the Slurm scheduler.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" slurmConfigurationProperty := &SlurmConfigurationProperty{ SlurmCustomSettings: []interface{}{ &SlurmCustomSettingProperty{ ParameterName: jsii.String("parameterName"), ParameterValue: jsii.String("parameterValue"), }, }, }
type CfnComputeNodeGroup_SlurmCustomSettingProperty ¶
type CfnComputeNodeGroup_SlurmCustomSettingProperty struct { // AWS PCS supports configuration of the following Slurm parameters:. // // - For *clusters* // // - [`Prolog`](https://docs.aws.amazon.com/https://slurm.schedmd.com/slurm.conf.html#OPT_Prolog_1) // - [`Epilog`](https://docs.aws.amazon.com/https://slurm.schedmd.com/slurm.conf.html#OPT_Epilog_1) // - [`SelectTypeParameters`](https://docs.aws.amazon.com/https://slurm.schedmd.com/slurm.conf.html#OPT_SelectTypeParameters) // - For *compute node groups* // // - [`Weight`](https://docs.aws.amazon.com/https://slurm.schedmd.com/slurm.conf.html#OPT_Weight) // - [`RealMemory`](https://docs.aws.amazon.com/https://slurm.schedmd.com/slurm.conf.html#OPT_Weight) // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pcs-computenodegroup-slurmcustomsetting.html#cfn-pcs-computenodegroup-slurmcustomsetting-parametername // ParameterName *string `field:"required" json:"parameterName" yaml:"parameterName"` // The values for the configured Slurm settings. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pcs-computenodegroup-slurmcustomsetting.html#cfn-pcs-computenodegroup-slurmcustomsetting-parametervalue // ParameterValue *string `field:"required" json:"parameterValue" yaml:"parameterValue"` }
Additional settings that directly map to Slurm settings.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" slurmCustomSettingProperty := &SlurmCustomSettingProperty{ ParameterName: jsii.String("parameterName"), ParameterValue: jsii.String("parameterValue"), }
type CfnComputeNodeGroup_SpotOptionsProperty ¶
type CfnComputeNodeGroup_SpotOptionsProperty struct { // The Amazon EC2 allocation strategy AWS PCS uses to provision EC2 instances. // // AWS PCS supports lowest price, capacity optimized, and price capacity optimized. If you don't provide this option, it defaults to price capacity optimized. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pcs-computenodegroup-spotoptions.html#cfn-pcs-computenodegroup-spotoptions-allocationstrategy // AllocationStrategy *string `field:"optional" json:"allocationStrategy" yaml:"allocationStrategy"` }
Additional configuration when you specify `SPOT` as the `purchaseOption` .
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" spotOptionsProperty := &SpotOptionsProperty{ AllocationStrategy: jsii.String("allocationStrategy"), }
type CfnQueue ¶
type CfnQueue interface { awscdk.CfnResource awscdk.IInspectable awscdk.ITaggableV2 // The unique Amazon Resource Name (ARN) of the queue. AttrArn() *string // The list of errors that occurred during queue provisioning. AttrErrorInfo() awscdk.IResolvable // The generated unique ID of the queue. AttrId() *string // The provisioning status of the queue. // // The provisioning status doesn't indicate the overall health of the queue. AttrStatus() *string // Tag Manager which manages the tags for this resource. CdkTagManager() awscdk.TagManager // Options for this resource, such as condition, update policy etc. CfnOptions() awscdk.ICfnResourceOptions CfnProperties() *map[string]interface{} // AWS resource type. CfnResourceType() *string // The ID of the cluster of the queue. ClusterId() *string SetClusterId(val *string) // The list of compute node group configurations associated with the queue. ComputeNodeGroupConfigurations() interface{} SetComputeNodeGroupConfigurations(val interface{}) // Returns: the stack trace of the point where this Resource was created from, sourced // from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most // node +internal+ entries filtered. CreationStack() *[]*string // The logical ID for this CloudFormation 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 name that identifies the queue. Name() *string SetName(val *string) // The tree node. Node() constructs.Node // Return a string that will be resolved to a CloudFormation `{ 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 // The stack in which this element is defined. // // CfnElements must be defined within a stack scope (directly or indirectly). Stack() awscdk.Stack // 1 or more tags added to the resource. Tags() *map[string]*string SetTags(val *map[string]*string) // Deprecated. // Deprecated: use `updatedProperties` // // 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{} // Return properties modified after initiation. // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. UpdatedProperties() *map[string]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. AddDependency(target awscdk.CfnResource) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // Deprecated: use addDependency. AddDependsOn(target awscdk.CfnResource) // Add a value to the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // AddMetadata(key *string, value interface{}) // Adds an override to the synthesized CloudFormation 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. // // To include a literal `.` in the property name, prefix with a `\`. In most // programming languages you will need to write this as `"\\."` because the // `\` itself will need to be escaped. // // For example, // “`typescript // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']); // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE'); // “` // would add the overrides // “`json // "Properties": { // "GlobalSecondaryIndexes": [ // { // "Projection": { // "NonKeyAttributes": [ "myattribute" ] // ... // } // ... // }, // { // "ProjectionType": "INCLUDE" // ... // }, // ] // ... // } // “` // // The `value` argument to `addOverride` will not be processed or translated // in any way. Pass raw JSON values in here with the correct capitalization // for CloudFormation. If you pass CDK classes or structs, they will be // rendered with lowercased key names, and CloudFormation will reject the // template. 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{}) // Sets the deletion policy of the resource based on the removal policy specified. // // The Removal Policy controls what happens to this resource when it stops // being managed by CloudFormation, either because you've removed it from the // CDK application or because you've made a change that requires the resource // to be replaced. // // The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS // account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). In some // cases, a snapshot can be taken of the resource prior to deletion // (`RemovalPolicy.SNAPSHOT`). A list of resources that support this policy // can be found in the following link:. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html#aws-attribute-deletionpolicy-options // ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.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, typeHint awscdk.ResolutionTypeHint) awscdk.Reference // Retrieve a value value from the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // GetMetadata(key *string) interface{} // Examines the CloudFormation resource and discloses attributes. Inspect(inspector awscdk.TreeInspector) // Retrieves an array of resources this resource depends on. // // This assembles dependencies on resources across stacks (including nested stacks) // automatically. ObtainDependencies() *[]interface{} // Get a shallow copy of dependencies between this resource and other resources in the same stack. ObtainResourceDependencies() *[]awscdk.CfnResource // Overrides the auto-generated logical ID with a specific ID. OverrideLogicalId(newLogicalId *string) // Indicates that this resource no longer depends on another resource. // // This can be used for resources across stacks (including nested stacks) // and the dependency will automatically be removed from the relevant scope. RemoveDependency(target awscdk.CfnResource) RenderProperties(props *map[string]interface{}) *map[string]interface{} // Replaces one dependency with another. ReplaceDependency(target awscdk.CfnResource, newTarget awscdk.CfnResource) // Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template. // // Returns: `true` if the resource should be included or `false` is the resource // should be omitted. ShouldSynthesize() *bool // Returns a string representation of this construct. // // Returns: a string representation of this resource. ToString() *string ValidateProperties(_properties interface{}) }
The `AWS::PCS::Queue` resource creates an AWS PCS queue.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnQueue := awscdk.Aws_pcs.NewCfnQueue(this, jsii.String("MyCfnQueue"), &CfnQueueProps{ ClusterId: jsii.String("clusterId"), // the properties below are optional ComputeNodeGroupConfigurations: []interface{}{ &ComputeNodeGroupConfigurationProperty{ ComputeNodeGroupId: jsii.String("computeNodeGroupId"), }, }, Name: jsii.String("name"), Tags: map[string]*string{ "tagsKey": jsii.String("tags"), }, })
See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pcs-queue.html
func NewCfnQueue ¶
func NewCfnQueue(scope constructs.Construct, id *string, props *CfnQueueProps) CfnQueue
type CfnQueueProps ¶
type CfnQueueProps struct { // The ID of the cluster of the queue. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pcs-queue.html#cfn-pcs-queue-clusterid // ClusterId *string `field:"required" json:"clusterId" yaml:"clusterId"` // The list of compute node group configurations associated with the queue. // // Queues assign jobs to associated compute node groups. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pcs-queue.html#cfn-pcs-queue-computenodegroupconfigurations // ComputeNodeGroupConfigurations interface{} `field:"optional" json:"computeNodeGroupConfigurations" yaml:"computeNodeGroupConfigurations"` // The name that identifies the queue. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pcs-queue.html#cfn-pcs-queue-name // Name *string `field:"optional" json:"name" yaml:"name"` // 1 or more tags added to the resource. // // Each tag consists of a tag key and tag value. The tag value is optional and can be an empty string. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pcs-queue.html#cfn-pcs-queue-tags // Tags *map[string]*string `field:"optional" json:"tags" yaml:"tags"` }
Properties for defining a `CfnQueue`.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnQueueProps := &CfnQueueProps{ ClusterId: jsii.String("clusterId"), // the properties below are optional ComputeNodeGroupConfigurations: []interface{}{ &ComputeNodeGroupConfigurationProperty{ ComputeNodeGroupId: jsii.String("computeNodeGroupId"), }, }, Name: jsii.String("name"), Tags: map[string]*string{ "tagsKey": jsii.String("tags"), }, }
See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pcs-queue.html
type CfnQueue_ComputeNodeGroupConfigurationProperty ¶
type CfnQueue_ComputeNodeGroupConfigurationProperty struct { // The compute node group ID for the compute node group configuration. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pcs-queue-computenodegroupconfiguration.html#cfn-pcs-queue-computenodegroupconfiguration-computenodegroupid // ComputeNodeGroupId *string `field:"optional" json:"computeNodeGroupId" yaml:"computeNodeGroupId"` }
The compute node group configuration for a queue.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" computeNodeGroupConfigurationProperty := &ComputeNodeGroupConfigurationProperty{ ComputeNodeGroupId: jsii.String("computeNodeGroupId"), }
type CfnQueue_ErrorInfoProperty ¶
type CfnQueue_ErrorInfoProperty struct { // The short-form error code. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pcs-queue-errorinfo.html#cfn-pcs-queue-errorinfo-code // Code *string `field:"optional" json:"code" yaml:"code"` // TBDThe detailed error information. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pcs-queue-errorinfo.html#cfn-pcs-queue-errorinfo-message // Message *string `field:"optional" json:"message" yaml:"message"` }
An error that occurred during resource provisioning.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" errorInfoProperty := &ErrorInfoProperty{ Code: jsii.String("code"), Message: jsii.String("message"), }
Source Files
¶
- CfnCluster.go
- CfnClusterProps.go
- CfnCluster_AuthKeyProperty.go
- CfnCluster_EndpointProperty.go
- CfnCluster_ErrorInfoProperty.go
- CfnCluster_NetworkingProperty.go
- CfnCluster_SchedulerProperty.go
- CfnCluster_SlurmConfigurationProperty.go
- CfnCluster_SlurmCustomSettingProperty.go
- CfnCluster__checks.go
- CfnComputeNodeGroup.go
- CfnComputeNodeGroupProps.go
- CfnComputeNodeGroup_CustomLaunchTemplateProperty.go
- CfnComputeNodeGroup_ErrorInfoProperty.go
- CfnComputeNodeGroup_InstanceConfigProperty.go
- CfnComputeNodeGroup_ScalingConfigurationProperty.go
- CfnComputeNodeGroup_SlurmConfigurationProperty.go
- CfnComputeNodeGroup_SlurmCustomSettingProperty.go
- CfnComputeNodeGroup_SpotOptionsProperty.go
- CfnComputeNodeGroup__checks.go
- CfnQueue.go
- CfnQueueProps.go
- CfnQueue_ComputeNodeGroupConfigurationProperty.go
- CfnQueue_ErrorInfoProperty.go
- CfnQueue__checks.go
- main.go