Class: AWSCDK::Batch::CfnComputeEnvironment
- Inherits:
-
CfnResource
- Object
- CfnResource
- AWSCDK::Batch::CfnComputeEnvironment
- Includes:
- IInspectable, ITaggable, Interfaces::AWSBatch::IComputeEnvironmentRef
- Defined in:
- batch/cfn_compute_environment.rb
Overview
The AWS::Batch::ComputeEnvironment resource defines your AWS Batch compute environment.
You can define MANAGED or UNMANAGED compute environments. MANAGED compute environments can use Amazon EC2 or AWS Fargate resources. UNMANAGED compute environments can only use EC2 resources. For more information, see Compute Environments in the ** .
In a managed compute environment, AWS Batch manages the capacity and instance types of the compute resources within the environment. This is based on the compute resource specification that you define or the launch template that you specify when you create the compute environment. You can choose either to use EC2 On-Demand Instances and EC2 Spot Instances, or to use Fargate and Fargate Spot capacity in your managed compute environment. You can optionally set a maximum price so that Spot Instances only launch when the Spot Instance price is below a specified percentage of the On-Demand price.
Multi-node parallel jobs are not supported on Spot Instances.
In an unmanaged compute environment, you can manage your own EC2 compute resources and have a lot of flexibility with how you configure your compute resources. For example, you can use custom AMI. However, you need to verify that your AMI meets the Amazon ECS container instance AMI specification. For more information, see container instance AMIs in the Amazon Elastic Container Service Developer Guide . After you have created your unmanaged compute environment, you can use the DescribeComputeEnvironments operation to find the Amazon ECS cluster that is associated with it. Then, manually launch your container instances into that Amazon ECS cluster. For more information, see Launching an Amazon ECS container instance in the Amazon Elastic Container Service Developer Guide .
To create a compute environment that uses EKS resources, the caller must have permissions to call
eks:DescribeCluster. > AWS Batch doesn't upgrade the AMIs in a compute environment after it's created except under specific conditions. For example, it doesn't automatically update the AMIs when a newer version of the Amazon ECS optimized AMI is available. Therefore, you're responsible for the management of the guest operating system (including updates and security patches) and any additional application software or utilities that you install on the compute resources. There are two ways to use a new AMI for your AWS Batch jobs. The original method is to complete these steps:
- Create a new compute environment with the new AMI.
- Add the compute environment to an existing job queue.
- Remove the earlier compute environment from your job queue.
- Delete the earlier compute environment.
In April 2022, AWS Batch added enhanced support for updating compute environments. For example, the
UpdateComputeEnvironentAPI lets you use theReplaceComputeEnvironmentproperty to dynamically update compute environment parameters such as the launch template or instance type without replacement. For more information, see Updating compute environments in the AWS Batch User Guide .To use the enhanced updating of compute environments to update AMIs, follow these rules:
- Either do not set the ServiceRole property or set it to the AWSServiceRoleForBatch service-linked role.
- Set the AllocationStrategy property to
BEST_FIT_PROGRESSIVEorSPOT_CAPACITY_OPTIMIZED.- Set the ReplaceComputeEnvironment property to
false.Set the
ReplaceComputeEnvironmentproperty totrueif the compute environment uses theBEST_FITallocation strategy. > If theReplaceComputeEnvironmentproperty is set tofalse, you might receive an error message when you update the CFN template for a compute environment. This issue occurs if the updateddesiredvcpusvalue is less than the currentdesiredvcpusvalue. As a workaround, delete thedesiredvcpusvalue from the updated template or use theminvcpusproperty to manage the number of vCPUs. For information, see Error message when you update theDesiredvCpussetting .
- Set the UpdateToLatestImageVersion property to
true. This property is used when you update a compute environment. The UpdateToLatestImageVersion property is ignored when you create a compute environment.- Either do not specify an image ID in ImageId or ImageIdOverride properties, or in the launch template identified by the Launch Template property. In that case AWS Batch will select the latest Amazon ECS optimized AMI supported by AWS Batch at the time the infrastructure update is initiated. Alternatively you can specify the AMI ID in the
ImageIdorImageIdOverrideproperties, or the launch template identified by theLaunchTemplateproperties. Changing any of these properties will trigger an infrastructure update.If these rules are followed, any update that triggers an infrastructure update will cause the AMI ID to be re-selected. If the Version property of the LaunchTemplateSpecification is set to
$Latestor$Default, the latest or default version of the launch template will be evaluated up at the time of the infrastructure update, even if theLaunchTemplateSpecificationwas not updated.
Class Method Summary collapse
- .arn_for_compute_environment(resource) ⇒ String
-
.CFN_RESOURCE_TYPE_NAME ⇒ String
The CloudFormation resource type name for this resource class.
-
.is_cfn_compute_environment(x) ⇒ Boolean
Checks whether the given object is a CfnComputeEnvironment.
- .jsii_overridable_methods ⇒ Object
Instance Method Summary collapse
-
#add_deletion_override(path) ⇒ void
Syntactic sugar for
addOverride(path, undefined). -
#add_dependency(target) ⇒ void
Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
-
#add_depends_on(target) ⇒ void
deprecated
Deprecated.
use addDependency
-
#add_metadata(key, value) ⇒ void
Add a value to the CloudFormation Resource Metadata.
-
#add_override(path, value) ⇒ void
Adds an override to the synthesized CloudFormation resource.
-
#add_property_deletion_override(property_path) ⇒ void
Adds an override that deletes the value of a property from the resource definition.
-
#add_property_override(property_path, value) ⇒ void
Adds an override to a resource property.
-
#apply_cross_stack_reference_strength(strength) ⇒ void
Sets the cross-stack reference strength for this resource.
-
#apply_removal_policy(policy = nil, options = nil) ⇒ void
Sets the deletion policy of the resource based on the removal policy specified.
-
#attr_compute_environment_arn ⇒ String
Returns the compute environment ARN, such as
batch: *us-east-1* : *111122223333* :compute-environment/ *ComputeEnvironmentName*. -
#cfn_options ⇒ AWSCDK::ICfnResourceOptions
Options for this resource, such as condition, update policy etc.
- #cfn_properties ⇒ Hash{String => Object}
- #cfn_property_name(cdk_property_name) ⇒ String?
- #cfn_property_names ⇒ Hash{String => String}
-
#cfn_resource_type ⇒ String
AWS resource type.
-
#compute_environment_name ⇒ String?
The name for your compute environment.
- #compute_environment_name=(value) ⇒ Object
-
#compute_environment_ref ⇒ AWSCDK::Interfaces::AWSBatch::ComputeEnvironmentReference
A reference to a ComputeEnvironment resource.
-
#compute_resources ⇒ AWSCDK::IResolvable, ...
The ComputeResources property type specifies details of the compute resources managed by the compute environment.
- #compute_resources=(value) ⇒ Object
-
#context ⇒ String?
Reserved.
- #context=(value) ⇒ Object
- #creation_stack ⇒ Array<String>
-
#eks_configuration ⇒ AWSCDK::IResolvable, ...
The details for the Amazon EKS cluster that supports the compute environment.
- #eks_configuration=(value) ⇒ Object
- #env ⇒ AWSCDK::Interfaces::ResourceEnvironment
-
#get_att(attribute_name, type_hint = nil) ⇒ AWSCDK::Reference
Returns a token for an runtime attribute of this resource.
-
#get_metadata(key) ⇒ Object
Retrieve a value value from the CloudFormation Resource Metadata.
-
#initialize(scope, id, props) ⇒ CfnComputeEnvironment
constructor
Create a new
AWS::Batch::ComputeEnvironment. -
#inspect(inspector) ⇒ void
Examines the CloudFormation resource and discloses attributes.
-
#logical_id ⇒ String
The logical ID for this CloudFormation stack element.
-
#node ⇒ Constructs::Node
The tree node.
-
#obtain_dependencies ⇒ Array<AWSCDK::CfnResource, AWSCDK::Stack>
Retrieves an array of resources this resource depends on.
-
#obtain_resource_dependencies ⇒ Array<AWSCDK::CfnResource>
Get a shallow copy of dependencies between this resource and other resources in the same stack.
-
#override_logical_id(new_logical_id) ⇒ void
Overrides the auto-generated logical ID with a specific ID.
-
#ref ⇒ String
Return a string that will be resolved to a CloudFormation
{ Ref }for this element. -
#remove_dependency(target) ⇒ void
Indicates that this resource no longer depends on another resource.
- #render_properties(props) ⇒ Hash{String => Object}
-
#replace_compute_environment ⇒ Boolean, ...
Specifies whether the compute environment is replaced if an update is made that requires replacing the instances in the compute environment.
- #replace_compute_environment=(value) ⇒ Object
-
#replace_dependency(target, new_target) ⇒ void
Replaces one dependency with another.
-
#service_role ⇒ String?
The full Amazon Resource Name (ARN) of the IAM role that allows AWS Batch to make calls to other AWS services on your behalf.
- #service_role=(value) ⇒ Object
-
#should_synthesize ⇒ Boolean
Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template.
-
#stack ⇒ AWSCDK::Stack
The stack in which this element is defined.
-
#state ⇒ String?
The state of the compute environment.
- #state=(value) ⇒ Object
-
#tags ⇒ AWSCDK::TagManager
Tag Manager which manages the tags for this resource.
-
#tags_raw ⇒ Hash{String => String}?
The tags applied to the compute environment.
- #tags_raw=(value) ⇒ Object
-
#to_string ⇒ String
Returns a string representation of this construct.
-
#type ⇒ String
The type of the compute environment:
MANAGEDorUNMANAGED. - #type=(value) ⇒ Object
-
#unmanagedv_cpus ⇒ Numeric?
The maximum number of vCPUs for an unmanaged compute environment.
- #unmanagedv_cpus=(value) ⇒ Object
-
#update_policy ⇒ AWSCDK::IResolvable, ...
Specifies the infrastructure update policy for the compute environment.
- #update_policy=(value) ⇒ Object
-
#updated_properites ⇒ Hash{String => Object}
deprecated
Deprecated.
use
updatedPropertiesReturn properties modified after initiation Resources that expose mutable properties should override this function to collect and return the properties object for this resource. -
#updated_properties ⇒ Hash{String => Object}
Return properties modified after initiation.
- #validate_properties(_properties) ⇒ void
-
#with(*mixins) ⇒ Constructs::IConstruct
Applies one or more mixins to this construct.
Constructor Details
#initialize(scope, id, props) ⇒ CfnComputeEnvironment
Create a new AWS::Batch::ComputeEnvironment.
48 49 50 51 52 53 54 |
# File 'batch/cfn_compute_environment.rb', line 48 def initialize(scope, id, props) props = props.is_a?(Hash) ? ::AWSCDK::Batch::CfnComputeEnvironmentProps.new(**props.transform_keys(&:to_sym)) : props Jsii::Type.check_type(scope, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJjb25zdHJ1Y3RzLkNvbnN0cnVjdCJ9")), "scope") Jsii::Type.check_type(id, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "id") Jsii::Type.check_type(props, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfYmF0Y2guQ2ZuQ29tcHV0ZUVudmlyb25tZW50UHJvcHMifQ==")), "props") Jsii::Object.instance_method(:initialize).bind(self).call(scope, id, props) end |
Class Method Details
.arn_for_compute_environment(resource) ⇒ String
112 113 114 115 |
# File 'batch/cfn_compute_environment.rb', line 112 def self.arn_for_compute_environment(resource) Jsii::Type.check_type(resource, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5pbnRlcmZhY2VzLmF3c19iYXRjaC5JQ29tcHV0ZUVudmlyb25tZW50UmVmIn0=")), "resource") Jsii::Kernel.instance.call_static("aws-cdk-lib.aws_batch.CfnComputeEnvironment", "arnForComputeEnvironment", [resource]) end |
.CFN_RESOURCE_TYPE_NAME ⇒ String
The CloudFormation resource type name for this resource class.
219 220 221 |
# File 'batch/cfn_compute_environment.rb', line 219 def self.CFN_RESOURCE_TYPE_NAME() Jsii::Kernel.instance.get_static("aws-cdk-lib.aws_batch.CfnComputeEnvironment", "CFN_RESOURCE_TYPE_NAME") end |
.is_cfn_compute_environment(x) ⇒ Boolean
Checks whether the given object is a CfnComputeEnvironment.
121 122 123 124 |
# File 'batch/cfn_compute_environment.rb', line 121 def self.is_cfn_compute_environment(x) Jsii::Type.check_type(x, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJhbnkifQ==")), "x") Jsii::Kernel.instance.call_static("aws-cdk-lib.aws_batch.CfnComputeEnvironment", "isCfnComputeEnvironment", [x]) end |
.jsii_overridable_methods ⇒ Object
56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 |
# File 'batch/cfn_compute_environment.rb', line 56 def self.jsii_overridable_methods { :node => { kind: :property, name: "node", is_optional: false }, :creation_stack => { kind: :property, name: "creationStack", is_optional: false }, :logical_id => { kind: :property, name: "logicalId", is_optional: false }, :stack => { kind: :property, name: "stack", is_optional: false }, :ref => { kind: :property, name: "ref", is_optional: false }, :cfn_options => { kind: :property, name: "cfnOptions", is_optional: false }, :cfn_properties => { kind: :property, name: "cfnProperties", is_optional: false }, :cfn_property_names => { kind: :property, name: "cfnPropertyNames", is_optional: false }, :cfn_resource_type => { kind: :property, name: "cfnResourceType", is_optional: false }, :env => { kind: :property, name: "env", is_optional: false }, :updated_properites => { kind: :property, name: "updatedProperites", is_optional: false }, :updated_properties => { kind: :property, name: "updatedProperties", is_optional: false }, :attr_compute_environment_arn => { kind: :property, name: "attrComputeEnvironmentArn", is_optional: false }, :compute_environment_ref => { kind: :property, name: "computeEnvironmentRef", is_optional: false }, :tags => { kind: :property, name: "tags", is_optional: false }, :type => { kind: :property, name: "type", is_optional: false }, :compute_environment_name => { kind: :property, name: "computeEnvironmentName", is_optional: true }, :compute_resources => { kind: :property, name: "computeResources", is_optional: true }, :context => { kind: :property, name: "context", is_optional: true }, :eks_configuration => { kind: :property, name: "eksConfiguration", is_optional: true }, :replace_compute_environment => { kind: :property, name: "replaceComputeEnvironment", is_optional: true }, :service_role => { kind: :property, name: "serviceRole", is_optional: true }, :state => { kind: :property, name: "state", is_optional: true }, :tags_raw => { kind: :property, name: "tagsRaw", is_optional: true }, :unmanagedv_cpus => { kind: :property, name: "unmanagedvCpus", is_optional: true }, :update_policy => { kind: :property, name: "updatePolicy", is_optional: true }, :to_string => { kind: :method, name: "toString", is_optional: false }, :with => { kind: :method, name: "with", is_optional: false }, :override_logical_id => { kind: :method, name: "overrideLogicalId", is_optional: false }, :add_deletion_override => { kind: :method, name: "addDeletionOverride", is_optional: false }, :add_dependency => { kind: :method, name: "addDependency", is_optional: false }, :add_depends_on => { kind: :method, name: "addDependsOn", is_optional: false }, :add_metadata => { kind: :method, name: "addMetadata", is_optional: false }, :add_override => { kind: :method, name: "addOverride", is_optional: false }, :add_property_deletion_override => { kind: :method, name: "addPropertyDeletionOverride", is_optional: false }, :add_property_override => { kind: :method, name: "addPropertyOverride", is_optional: false }, :apply_cross_stack_reference_strength => { kind: :method, name: "applyCrossStackReferenceStrength", is_optional: false }, :apply_removal_policy => { kind: :method, name: "applyRemovalPolicy", is_optional: false }, :cfn_property_name => { kind: :method, name: "cfnPropertyName", is_optional: false }, :get_att => { kind: :method, name: "getAtt", is_optional: false }, :get_metadata => { kind: :method, name: "getMetadata", is_optional: false }, :obtain_dependencies => { kind: :method, name: "obtainDependencies", is_optional: false }, :obtain_resource_dependencies => { kind: :method, name: "obtainResourceDependencies", is_optional: false }, :remove_dependency => { kind: :method, name: "removeDependency", is_optional: false }, :render_properties => { kind: :method, name: "renderProperties", is_optional: false }, :replace_dependency => { kind: :method, name: "replaceDependency", is_optional: false }, :should_synthesize => { kind: :method, name: "shouldSynthesize", is_optional: false }, :validate_properties => { kind: :method, name: "validateProperties", is_optional: false }, :inspect => { kind: :method, name: "inspect", is_optional: false }, } end |
Instance Method Details
#add_deletion_override(path) ⇒ void
This method returns an undefined value.
Syntactic sugar for addOverride(path, undefined).
415 416 417 418 |
# File 'batch/cfn_compute_environment.rb', line 415 def add_deletion_override(path) Jsii::Type.check_type(path, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "path") jsii_call_method("addDeletionOverride", [path]) end |
#add_dependency(target) ⇒ void
This method returns an undefined value.
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.
427 428 429 430 |
# File 'batch/cfn_compute_environment.rb', line 427 def add_dependency(target) Jsii::Type.check_type(target, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5DZm5SZXNvdXJjZSJ9")), "target") jsii_call_method("addDependency", [target]) end |
#add_depends_on(target) ⇒ void
use addDependency
This method returns an undefined value.
Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
437 438 439 440 |
# File 'batch/cfn_compute_environment.rb', line 437 def add_depends_on(target) Jsii::Type.check_type(target, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5DZm5SZXNvdXJjZSJ9")), "target") jsii_call_method("addDependsOn", [target]) end |
#add_metadata(key, value) ⇒ void
This method returns an undefined value.
Add a value to the CloudFormation Resource Metadata.
448 449 450 451 452 |
# File 'batch/cfn_compute_environment.rb', line 448 def (key, value) Jsii::Type.check_type(key, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "key") Jsii::Type.check_type(value, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJhbnkifQ==")), "value") jsii_call_method("addMetadata", [key, value]) end |
#add_override(path, value) ⇒ void
This method returns an undefined value.
Adds an override to the synthesized CloudFormation resource.
To add a
property override, either use add_property_override 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,
# Example automatically generated from non-compiling source. May contain errors.
cfn_resource.add_override("Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes", ["myattribute"])
cfn_resource.add_override("Properties.GlobalSecondaryIndexes.1.ProjectionType", "INCLUDE")
would add the overrides
"Properties": {
"GlobalSecondaryIndexes": [
{
"Projection": {
"NonKeyAttributes": [ "myattribute" ]
...
}
...
},
{
"ProjectionType": "INCLUDE"
...
},
]
...
}
The value argument to add_override 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.
505 506 507 508 509 |
# File 'batch/cfn_compute_environment.rb', line 505 def add_override(path, value) Jsii::Type.check_type(path, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "path") Jsii::Type.check_type(value, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJhbnkifQ==")), "value") jsii_call_method("addOverride", [path, value]) end |
#add_property_deletion_override(property_path) ⇒ void
This method returns an undefined value.
Adds an override that deletes the value of a property from the resource definition.
515 516 517 518 |
# File 'batch/cfn_compute_environment.rb', line 515 def add_property_deletion_override(property_path) Jsii::Type.check_type(property_path, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "propertyPath") jsii_call_method("addPropertyDeletionOverride", [property_path]) end |
#add_property_override(property_path, value) ⇒ void
This method returns an undefined value.
Adds an override to a resource property.
Syntactic sugar for addOverride("Properties.<...>", value).
527 528 529 530 531 |
# File 'batch/cfn_compute_environment.rb', line 527 def add_property_override(property_path, value) Jsii::Type.check_type(property_path, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "propertyPath") Jsii::Type.check_type(value, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJhbnkifQ==")), "value") jsii_call_method("addPropertyOverride", [property_path, value]) end |
#apply_cross_stack_reference_strength(strength) ⇒ void
This method returns an undefined value.
Sets the cross-stack reference strength for this resource.
When set, any cross-stack reference to this resource will use the specified strength instead of the global default from the consuming stack's context.
540 541 542 543 |
# File 'batch/cfn_compute_environment.rb', line 540 def apply_cross_stack_reference_strength(strength) Jsii::Type.check_type(strength, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5SZWZlcmVuY2VTdHJlbmd0aCJ9")), "strength") jsii_call_method("applyCrossStackReferenceStrength", [strength]) end |
#apply_removal_policy(policy = nil, options = nil) ⇒ void
This method returns an undefined value.
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:
562 563 564 565 566 567 |
# File 'batch/cfn_compute_environment.rb', line 562 def apply_removal_policy(policy = nil, = nil) Jsii::Type.check_type(policy, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5SZW1vdmFsUG9saWN5In0=")), "policy") unless policy.nil? = .is_a?(Hash) ? ::AWSCDK::RemovalPolicyOptions.new(**.transform_keys(&:to_sym)) : Jsii::Type.check_type(, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5SZW1vdmFsUG9saWN5T3B0aW9ucyJ9")), "options") unless .nil? jsii_call_method("applyRemovalPolicy", [policy, ]) end |
#attr_compute_environment_arn ⇒ String
Returns the compute environment ARN, such as batch: *us-east-1* : *111122223333* :compute-environment/ *ComputeEnvironmentName* .
226 227 228 |
# File 'batch/cfn_compute_environment.rb', line 226 def attr_compute_environment_arn() jsii_get_property("attrComputeEnvironmentArn") end |
#cfn_options ⇒ AWSCDK::ICfnResourceOptions
Options for this resource, such as condition, update policy etc.
172 173 174 |
# File 'batch/cfn_compute_environment.rb', line 172 def () jsii_get_property("cfnOptions") end |
#cfn_properties ⇒ Hash{String => Object}
177 178 179 |
# File 'batch/cfn_compute_environment.rb', line 177 def cfn_properties() jsii_get_property("cfnProperties") end |
#cfn_property_name(cdk_property_name) ⇒ String?
571 572 573 574 |
# File 'batch/cfn_compute_environment.rb', line 571 def cfn_property_name(cdk_property_name) Jsii::Type.check_type(cdk_property_name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "cdkPropertyName") jsii_call_method("cfnPropertyName", [cdk_property_name]) end |
#cfn_property_names ⇒ Hash{String => String}
182 183 184 |
# File 'batch/cfn_compute_environment.rb', line 182 def cfn_property_names() jsii_get_property("cfnPropertyNames") end |
#cfn_resource_type ⇒ String
AWS resource type.
189 190 191 |
# File 'batch/cfn_compute_environment.rb', line 189 def cfn_resource_type() jsii_get_property("cfnResourceType") end |
#compute_environment_name ⇒ String?
The name for your compute environment.
259 260 261 |
# File 'batch/cfn_compute_environment.rb', line 259 def compute_environment_name() jsii_get_property("computeEnvironmentName") end |
#compute_environment_name=(value) ⇒ Object
263 264 265 266 |
# File 'batch/cfn_compute_environment.rb', line 263 def compute_environment_name=(value) Jsii::Type.check_type(value, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "computeEnvironmentName") unless value.nil? jsii_set_property("computeEnvironmentName", value) end |
#compute_environment_ref ⇒ AWSCDK::Interfaces::AWSBatch::ComputeEnvironmentReference
A reference to a ComputeEnvironment resource.
233 234 235 |
# File 'batch/cfn_compute_environment.rb', line 233 def compute_environment_ref() jsii_get_property("computeEnvironmentRef") end |
#compute_resources ⇒ AWSCDK::IResolvable, ...
The ComputeResources property type specifies details of the compute resources managed by the compute environment.
271 272 273 |
# File 'batch/cfn_compute_environment.rb', line 271 def compute_resources() jsii_get_property("computeResources") end |
#compute_resources=(value) ⇒ Object
275 276 277 278 279 |
# File 'batch/cfn_compute_environment.rb', line 275 def compute_resources=(value) value = value.is_a?(Hash) ? ::AWSCDK::Batch::CfnComputeEnvironment::ComputeResourcesProperty.new(**value.transform_keys(&:to_sym)) : value Jsii::Type.check_type(value, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19iYXRjaC5DZm5Db21wdXRlRW52aXJvbm1lbnQuQ29tcHV0ZVJlc291cmNlc1Byb3BlcnR5In1dfX0=")), "computeResources") unless value.nil? jsii_set_property("computeResources", value) end |
#context ⇒ String?
Reserved.
284 285 286 |
# File 'batch/cfn_compute_environment.rb', line 284 def context() jsii_get_property("context") end |
#context=(value) ⇒ Object
288 289 290 291 |
# File 'batch/cfn_compute_environment.rb', line 288 def context=(value) Jsii::Type.check_type(value, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "context") unless value.nil? jsii_set_property("context", value) end |
#creation_stack ⇒ Array<String>
134 135 136 |
# File 'batch/cfn_compute_environment.rb', line 134 def creation_stack() jsii_get_property("creationStack") end |
#eks_configuration ⇒ AWSCDK::IResolvable, ...
The details for the Amazon EKS cluster that supports the compute environment.
296 297 298 |
# File 'batch/cfn_compute_environment.rb', line 296 def eks_configuration() jsii_get_property("eksConfiguration") end |
#eks_configuration=(value) ⇒ Object
300 301 302 303 304 |
# File 'batch/cfn_compute_environment.rb', line 300 def eks_configuration=(value) value = value.is_a?(Hash) ? ::AWSCDK::Batch::CfnComputeEnvironment::EKSConfigurationProperty.new(**value.transform_keys(&:to_sym)) : value Jsii::Type.check_type(value, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19iYXRjaC5DZm5Db21wdXRlRW52aXJvbm1lbnQuRWtzQ29uZmlndXJhdGlvblByb3BlcnR5In1dfX0=")), "eksConfiguration") unless value.nil? jsii_set_property("eksConfiguration", value) end |
#env ⇒ AWSCDK::Interfaces::ResourceEnvironment
194 195 196 |
# File 'batch/cfn_compute_environment.rb', line 194 def env() jsii_get_property("env") end |
#get_att(attribute_name, type_hint = nil) ⇒ AWSCDK::Reference
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.
584 585 586 587 588 |
# File 'batch/cfn_compute_environment.rb', line 584 def get_att(attribute_name, type_hint = nil) Jsii::Type.check_type(attribute_name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "attributeName") Jsii::Type.check_type(type_hint, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5SZXNvbHV0aW9uVHlwZUhpbnQifQ==")), "typeHint") unless type_hint.nil? jsii_call_method("getAtt", [attribute_name, type_hint]) end |
#get_metadata(key) ⇒ Object
Retrieve a value value from the CloudFormation Resource Metadata.
595 596 597 598 |
# File 'batch/cfn_compute_environment.rb', line 595 def (key) Jsii::Type.check_type(key, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "key") jsii_call_method("getMetadata", [key]) end |
#inspect(inspector) ⇒ void
This method returns an undefined value.
Examines the CloudFormation resource and discloses attributes.
665 666 667 668 |
# File 'batch/cfn_compute_environment.rb', line 665 def inspect(inspector) Jsii::Type.check_type(inspector, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5UcmVlSW5zcGVjdG9yIn0=")), "inspector") jsii_call_method("inspect", [inspector]) end |
#logical_id ⇒ 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 override_logical_id(new_logical_id).
146 147 148 |
# File 'batch/cfn_compute_environment.rb', line 146 def logical_id() jsii_get_property("logicalId") end |
#node ⇒ Constructs::Node
The tree node.
129 130 131 |
# File 'batch/cfn_compute_environment.rb', line 129 def node() jsii_get_property("node") end |
#obtain_dependencies ⇒ Array<AWSCDK::CfnResource, AWSCDK::Stack>
Retrieves an array of resources this resource depends on.
This assembles dependencies on resources across stacks (including nested stacks) automatically.
606 607 608 |
# File 'batch/cfn_compute_environment.rb', line 606 def obtain_dependencies() jsii_call_method("obtainDependencies", []) end |
#obtain_resource_dependencies ⇒ Array<AWSCDK::CfnResource>
Get a shallow copy of dependencies between this resource and other resources in the same stack.
613 614 615 |
# File 'batch/cfn_compute_environment.rb', line 613 def obtain_resource_dependencies() jsii_call_method("obtainResourceDependencies", []) end |
#override_logical_id(new_logical_id) ⇒ void
This method returns an undefined value.
Overrides the auto-generated logical ID with a specific ID.
406 407 408 409 |
# File 'batch/cfn_compute_environment.rb', line 406 def override_logical_id(new_logical_id) Jsii::Type.check_type(new_logical_id, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "newLogicalId") jsii_call_method("overrideLogicalId", [new_logical_id]) end |
#ref ⇒ 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 }).
165 166 167 |
# File 'batch/cfn_compute_environment.rb', line 165 def ref() jsii_get_property("ref") end |
#remove_dependency(target) ⇒ void
This method returns an undefined value.
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.
624 625 626 627 |
# File 'batch/cfn_compute_environment.rb', line 624 def remove_dependency(target) Jsii::Type.check_type(target, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5DZm5SZXNvdXJjZSJ9")), "target") jsii_call_method("removeDependency", [target]) end |
#render_properties(props) ⇒ Hash{String => Object}
631 632 633 634 |
# File 'batch/cfn_compute_environment.rb', line 631 def render_properties(props) Jsii::Type.check_type(props, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7InByaW1pdGl2ZSI6ImFueSJ9LCJraW5kIjoibWFwIn19")), "props") jsii_call_method("renderProperties", [props]) end |
#replace_compute_environment ⇒ Boolean, ...
Specifies whether the compute environment is replaced if an update is made that requires replacing the instances in the compute environment.
309 310 311 |
# File 'batch/cfn_compute_environment.rb', line 309 def replace_compute_environment() jsii_get_property("replaceComputeEnvironment") end |
#replace_compute_environment=(value) ⇒ Object
313 314 315 316 |
# File 'batch/cfn_compute_environment.rb', line 313 def replace_compute_environment=(value) Jsii::Type.check_type(value, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3sicHJpbWl0aXZlIjoiYm9vbGVhbiJ9LHsiZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifV19fQ==")), "replaceComputeEnvironment") unless value.nil? jsii_set_property("replaceComputeEnvironment", value) end |
#replace_dependency(target, new_target) ⇒ void
This method returns an undefined value.
Replaces one dependency with another.
641 642 643 644 645 |
# File 'batch/cfn_compute_environment.rb', line 641 def replace_dependency(target, new_target) Jsii::Type.check_type(target, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5DZm5SZXNvdXJjZSJ9")), "target") Jsii::Type.check_type(new_target, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5DZm5SZXNvdXJjZSJ9")), "newTarget") jsii_call_method("replaceDependency", [target, new_target]) end |
#service_role ⇒ String?
The full Amazon Resource Name (ARN) of the IAM role that allows AWS Batch to make calls to other AWS services on your behalf.
321 322 323 |
# File 'batch/cfn_compute_environment.rb', line 321 def service_role() jsii_get_property("serviceRole") end |
#service_role=(value) ⇒ Object
325 326 327 328 |
# File 'batch/cfn_compute_environment.rb', line 325 def service_role=(value) Jsii::Type.check_type(value, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "serviceRole") unless value.nil? jsii_set_property("serviceRole", value) end |
#should_synthesize ⇒ Boolean
Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template.
650 651 652 |
# File 'batch/cfn_compute_environment.rb', line 650 def should_synthesize() jsii_call_method("shouldSynthesize", []) end |
#stack ⇒ AWSCDK::Stack
The stack in which this element is defined.
CfnElements must be defined within a stack scope (directly or indirectly).
155 156 157 |
# File 'batch/cfn_compute_environment.rb', line 155 def stack() jsii_get_property("stack") end |
#state ⇒ String?
The state of the compute environment.
333 334 335 |
# File 'batch/cfn_compute_environment.rb', line 333 def state() jsii_get_property("state") end |
#state=(value) ⇒ Object
337 338 339 340 |
# File 'batch/cfn_compute_environment.rb', line 337 def state=(value) Jsii::Type.check_type(value, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "state") unless value.nil? jsii_set_property("state", value) end |
#tags ⇒ AWSCDK::TagManager
Tag Manager which manages the tags for this resource.
240 241 242 |
# File 'batch/cfn_compute_environment.rb', line 240 def () jsii_get_property("tags") end |
#tags_raw ⇒ Hash{String => String}?
The tags applied to the compute environment.
345 346 347 |
# File 'batch/cfn_compute_environment.rb', line 345 def () jsii_get_property("tagsRaw") end |
#tags_raw=(value) ⇒ Object
349 350 351 352 |
# File 'batch/cfn_compute_environment.rb', line 349 def (value) Jsii::Type.check_type(value, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7InByaW1pdGl2ZSI6InN0cmluZyJ9LCJraW5kIjoibWFwIn19")), "tagsRaw") unless value.nil? jsii_set_property("tagsRaw", value) end |
#to_string ⇒ String
Returns a string representation of this construct.
382 383 384 |
# File 'batch/cfn_compute_environment.rb', line 382 def to_string() jsii_call_method("toString", []) end |
#type ⇒ String
The type of the compute environment: MANAGED or UNMANAGED .
247 248 249 |
# File 'batch/cfn_compute_environment.rb', line 247 def type() jsii_get_property("type") end |
#type=(value) ⇒ Object
251 252 253 254 |
# File 'batch/cfn_compute_environment.rb', line 251 def type=(value) Jsii::Type.check_type(value, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "type") jsii_set_property("type", value) end |
#unmanagedv_cpus ⇒ Numeric?
The maximum number of vCPUs for an unmanaged compute environment.
357 358 359 |
# File 'batch/cfn_compute_environment.rb', line 357 def unmanagedv_cpus() jsii_get_property("unmanagedvCpus") end |
#unmanagedv_cpus=(value) ⇒ Object
361 362 363 364 |
# File 'batch/cfn_compute_environment.rb', line 361 def unmanagedv_cpus=(value) Jsii::Type.check_type(value, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "unmanagedvCpus") unless value.nil? jsii_set_property("unmanagedvCpus", value) end |
#update_policy ⇒ AWSCDK::IResolvable, ...
Specifies the infrastructure update policy for the compute environment.
369 370 371 |
# File 'batch/cfn_compute_environment.rb', line 369 def update_policy() jsii_get_property("updatePolicy") end |
#update_policy=(value) ⇒ Object
373 374 375 376 377 |
# File 'batch/cfn_compute_environment.rb', line 373 def update_policy=(value) value = value.is_a?(Hash) ? ::AWSCDK::Batch::CfnComputeEnvironment::UpdatePolicyProperty.new(**value.transform_keys(&:to_sym)) : value Jsii::Type.check_type(value, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19iYXRjaC5DZm5Db21wdXRlRW52aXJvbm1lbnQuVXBkYXRlUG9saWN5UHJvcGVydHkifV19fQ==")), "updatePolicy") unless value.nil? jsii_set_property("updatePolicy", value) end |
#updated_properites ⇒ Hash{String => Object}
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.
Deprecated.
202 203 204 |
# File 'batch/cfn_compute_environment.rb', line 202 def updated_properites() jsii_get_property("updatedProperites") end |
#updated_properties ⇒ Hash{String => Object}
Return properties modified after initiation.
Resources that expose mutable properties should override this function to collect and return the properties object for this resource.
212 213 214 |
# File 'batch/cfn_compute_environment.rb', line 212 def updated_properties() jsii_get_property("updatedProperties") end |
#validate_properties(_properties) ⇒ void
This method returns an undefined value.
656 657 658 659 |
# File 'batch/cfn_compute_environment.rb', line 656 def validate_properties(_properties) Jsii::Type.check_type(_properties, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJhbnkifQ==")), "_properties") jsii_call_method("validateProperties", [_properties]) end |
#with(*mixins) ⇒ Constructs::IConstruct
Applies one or more mixins to this construct.
Mixins are applied in order. The list of constructs is captured at the
start of the call, so constructs added by a mixin will not be visited.
Use multiple with() calls if subsequent mixins should apply to added
constructs.
395 396 397 398 399 400 |
# File 'batch/cfn_compute_environment.rb', line 395 def with(*mixins) mixins.each_with_index do |item, index| Jsii::Type.check_type(item, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJjb25zdHJ1Y3RzLklNaXhpbiJ9")), "mixins[#{index}]") end jsii_call_method("with", [*mixins]) end |