Class: AWSCDK::Greengrassv2::CfnDeploymentProps
- Inherits:
-
Jsii::Struct
- Object
- Jsii::Struct
- AWSCDK::Greengrassv2::CfnDeploymentProps
- Defined in:
- greengrassv2/cfn_deployment_props.rb
Overview
Properties for defining a CfnDeployment.
Instance Attribute Summary collapse
-
#components ⇒ AWSCDK::IResolvable, ...
readonly
The components to deploy.
-
#deployment_name ⇒ String?
readonly
The name of the deployment.
-
#deployment_policies ⇒ AWSCDK::IResolvable, ...
readonly
The deployment policies for the deployment.
-
#iot_job_configuration ⇒ AWSCDK::IResolvable, ...
readonly
The job configuration for the deployment configuration.
-
#parent_target_arn ⇒ String?
readonly
The parent deployment's ARN for a subdeployment.
-
#tags ⇒ Hash{String => String}?
readonly
Application-specific metadata to attach to the deployment.
-
#target_arn ⇒ String
readonly
The ARN of the target AWS IoT thing or thing group.
Class Method Summary collapse
Instance Method Summary collapse
-
#initialize(target_arn:, components: nil, deployment_name: nil, deployment_policies: nil, iot_job_configuration: nil, parent_target_arn: nil, tags: nil) ⇒ CfnDeploymentProps
constructor
A new instance of CfnDeploymentProps.
- #to_jsii ⇒ Object
Constructor Details
#initialize(target_arn:, components: nil, deployment_name: nil, deployment_policies: nil, iot_job_configuration: nil, parent_target_arn: nil, tags: nil) ⇒ CfnDeploymentProps
Returns a new instance of CfnDeploymentProps.
16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 |
# File 'greengrassv2/cfn_deployment_props.rb', line 16 def initialize(target_arn:, components: nil, deployment_name: nil, deployment_policies: nil, iot_job_configuration: nil, parent_target_arn: nil, tags: nil) @target_arn = target_arn Jsii::Type.check_type(@target_arn, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "targetArn") @components = components Jsii::Type.check_type(@components, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImNvbGxlY3Rpb24iOnsiZWxlbWVudHR5cGUiOnsidW5pb24iOnsidHlwZXMiOlt7ImZxbiI6ImF3cy1jZGstbGliLklSZXNvbHZhYmxlIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfZ3JlZW5ncmFzc3YyLkNmbkRlcGxveW1lbnQuQ29tcG9uZW50RGVwbG95bWVudFNwZWNpZmljYXRpb25Qcm9wZXJ0eSJ9XX19LCJraW5kIjoibWFwIn19XX19")), "components") unless @components.nil? @deployment_name = deployment_name Jsii::Type.check_type(@deployment_name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "deploymentName") unless @deployment_name.nil? @deployment_policies = deployment_policies.is_a?(Hash) ? ::AWSCDK::Greengrassv2::CfnDeployment::DeploymentPoliciesProperty.new(**deployment_policies.transform_keys(&:to_sym)) : deployment_policies Jsii::Type.check_type(@deployment_policies, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19ncmVlbmdyYXNzdjIuQ2ZuRGVwbG95bWVudC5EZXBsb3ltZW50UG9saWNpZXNQcm9wZXJ0eSJ9XX19")), "deploymentPolicies") unless @deployment_policies.nil? @iot_job_configuration = iot_job_configuration.is_a?(Hash) ? ::AWSCDK::Greengrassv2::CfnDeployment::DeploymentIoTJobConfigurationProperty.new(**iot_job_configuration.transform_keys(&:to_sym)) : iot_job_configuration Jsii::Type.check_type(@iot_job_configuration, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19ncmVlbmdyYXNzdjIuQ2ZuRGVwbG95bWVudC5EZXBsb3ltZW50SW9USm9iQ29uZmlndXJhdGlvblByb3BlcnR5In1dfX0=")), "iotJobConfiguration") unless @iot_job_configuration.nil? @parent_target_arn = parent_target_arn Jsii::Type.check_type(@parent_target_arn, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "parentTargetArn") unless @parent_target_arn.nil? @tags = Jsii::Type.check_type(@tags, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7InByaW1pdGl2ZSI6InN0cmluZyJ9LCJraW5kIjoibWFwIn19")), "tags") unless @tags.nil? end |
Instance Attribute Details
#components ⇒ AWSCDK::IResolvable, ... (readonly)
The components to deploy.
This is a dictionary, where each key is the name of a component, and each key's value is the version and configuration to deploy for that component.
44 45 46 |
# File 'greengrassv2/cfn_deployment_props.rb', line 44 def components @components end |
#deployment_name ⇒ String? (readonly)
The name of the deployment.
49 50 51 |
# File 'greengrassv2/cfn_deployment_props.rb', line 49 def deployment_name @deployment_name end |
#deployment_policies ⇒ AWSCDK::IResolvable, ... (readonly)
The deployment policies for the deployment.
These policies define how the deployment updates components and handles failure.
56 57 58 |
# File 'greengrassv2/cfn_deployment_props.rb', line 56 def deployment_policies @deployment_policies end |
#iot_job_configuration ⇒ AWSCDK::IResolvable, ... (readonly)
The job configuration for the deployment configuration.
The job configuration specifies the rollout, timeout, and stop configurations for the deployment configuration.
63 64 65 |
# File 'greengrassv2/cfn_deployment_props.rb', line 63 def iot_job_configuration @iot_job_configuration end |
#parent_target_arn ⇒ String? (readonly)
The parent deployment's ARN for a subdeployment.
68 69 70 |
# File 'greengrassv2/cfn_deployment_props.rb', line 68 def parent_target_arn @parent_target_arn end |
#tags ⇒ Hash{String => String}? (readonly)
Application-specific metadata to attach to the deployment.
You can use tags in IAM policies to control access to AWS IoT Greengrass resources. You can also use tags to categorize your resources. For more information, see Tag your AWS IoT Greengrass Version 2 resources in the AWS IoT Greengrass V2 Developer Guide .
This Json property type is processed as a map of key-value pairs. It uses the following format, which is different from most Tags implementations in CloudFormation templates.
"Tags": { "KeyName0": "value", "KeyName1": "value", "KeyName2": "value"
}
82 83 84 |
# File 'greengrassv2/cfn_deployment_props.rb', line 82 def @tags end |
#target_arn ⇒ String (readonly)
The ARN of the target AWS IoT thing or thing group.
37 38 39 |
# File 'greengrassv2/cfn_deployment_props.rb', line 37 def target_arn @target_arn end |
Class Method Details
.jsii_properties ⇒ Object
84 85 86 87 88 89 90 91 92 93 94 |
# File 'greengrassv2/cfn_deployment_props.rb', line 84 def self.jsii_properties { :target_arn => "targetArn", :components => "components", :deployment_name => "deploymentName", :deployment_policies => "deploymentPolicies", :iot_job_configuration => "iotJobConfiguration", :parent_target_arn => "parentTargetArn", :tags => "tags", } end |
Instance Method Details
#to_jsii ⇒ Object
96 97 98 99 100 101 102 103 104 105 106 107 108 |
# File 'greengrassv2/cfn_deployment_props.rb', line 96 def to_jsii result = {} result.merge!({ "targetArn" => @target_arn, "components" => @components, "deploymentName" => @deployment_name, "deploymentPolicies" => @deployment_policies, "iotJobConfiguration" => @iot_job_configuration, "parentTargetArn" => @parent_target_arn, "tags" => @tags, }) result.compact end |