Class: AWSCDK::FIS::CfnExperimentTemplateProps

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
fis/cfn_experiment_template_props.rb

Overview

Properties for defining a CfnExperimentTemplate.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(description:, role_arn:, stop_conditions:, targets:, actions: nil, experiment_options: nil, experiment_report_configuration: nil, log_configuration: nil, tags: nil) ⇒ CfnExperimentTemplateProps

Returns a new instance of CfnExperimentTemplateProps.

Parameters:



18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
# File 'fis/cfn_experiment_template_props.rb', line 18

def initialize(description:, role_arn:, stop_conditions:, targets:, actions: nil, experiment_options: nil, experiment_report_configuration: nil, log_configuration: nil, tags: nil)
  @description = description
  Jsii::Type.check_type(@description, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "description")
  @role_arn = role_arn
  Jsii::Type.check_type(@role_arn, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3sicHJpbWl0aXZlIjoic3RyaW5nIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5pbnRlcmZhY2VzLmF3c19pYW0uSVJvbGVSZWYifV19fQ==")), "roleArn")
  @stop_conditions = stop_conditions
  Jsii::Type.check_type(@stop_conditions, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImNvbGxlY3Rpb24iOnsiZWxlbWVudHR5cGUiOnsidW5pb24iOnsidHlwZXMiOlt7ImZxbiI6ImF3cy1jZGstbGliLklSZXNvbHZhYmxlIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfZmlzLkNmbkV4cGVyaW1lbnRUZW1wbGF0ZS5FeHBlcmltZW50VGVtcGxhdGVTdG9wQ29uZGl0aW9uUHJvcGVydHkifV19fSwia2luZCI6ImFycmF5In19XX19")), "stopConditions")
  @targets = targets
  Jsii::Type.check_type(@targets, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImNvbGxlY3Rpb24iOnsiZWxlbWVudHR5cGUiOnsidW5pb24iOnsidHlwZXMiOlt7ImZxbiI6ImF3cy1jZGstbGliLklSZXNvbHZhYmxlIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfZmlzLkNmbkV4cGVyaW1lbnRUZW1wbGF0ZS5FeHBlcmltZW50VGVtcGxhdGVUYXJnZXRQcm9wZXJ0eSJ9XX19LCJraW5kIjoibWFwIn19XX19")), "targets")
  @actions = actions
  Jsii::Type.check_type(@actions, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImNvbGxlY3Rpb24iOnsiZWxlbWVudHR5cGUiOnsidW5pb24iOnsidHlwZXMiOlt7ImZxbiI6ImF3cy1jZGstbGliLklSZXNvbHZhYmxlIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfZmlzLkNmbkV4cGVyaW1lbnRUZW1wbGF0ZS5FeHBlcmltZW50VGVtcGxhdGVBY3Rpb25Qcm9wZXJ0eSJ9XX19LCJraW5kIjoibWFwIn19XX19")), "actions") unless @actions.nil?
  @experiment_options = experiment_options.is_a?(Hash) ? ::AWSCDK::FIS::CfnExperimentTemplate::ExperimentTemplateExperimentOptionsProperty.new(**experiment_options.transform_keys(&:to_sym)) : experiment_options
  Jsii::Type.check_type(@experiment_options, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19maXMuQ2ZuRXhwZXJpbWVudFRlbXBsYXRlLkV4cGVyaW1lbnRUZW1wbGF0ZUV4cGVyaW1lbnRPcHRpb25zUHJvcGVydHkifV19fQ==")), "experimentOptions") unless @experiment_options.nil?
  @experiment_report_configuration = experiment_report_configuration.is_a?(Hash) ? ::AWSCDK::FIS::CfnExperimentTemplate::ExperimentTemplateExperimentReportConfigurationProperty.new(**experiment_report_configuration.transform_keys(&:to_sym)) : experiment_report_configuration
  Jsii::Type.check_type(@experiment_report_configuration, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19maXMuQ2ZuRXhwZXJpbWVudFRlbXBsYXRlLkV4cGVyaW1lbnRUZW1wbGF0ZUV4cGVyaW1lbnRSZXBvcnRDb25maWd1cmF0aW9uUHJvcGVydHkifV19fQ==")), "experimentReportConfiguration") unless @experiment_report_configuration.nil?
  @log_configuration = log_configuration.is_a?(Hash) ? ::AWSCDK::FIS::CfnExperimentTemplate::ExperimentTemplateLogConfigurationProperty.new(**log_configuration.transform_keys(&:to_sym)) : log_configuration
  Jsii::Type.check_type(@log_configuration, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19maXMuQ2ZuRXhwZXJpbWVudFRlbXBsYXRlLkV4cGVyaW1lbnRUZW1wbGF0ZUxvZ0NvbmZpZ3VyYXRpb25Qcm9wZXJ0eSJ9XX19")), "logConfiguration") unless @log_configuration.nil?
  @tags = tags
  Jsii::Type.check_type(@tags, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7InByaW1pdGl2ZSI6InN0cmluZyJ9LCJraW5kIjoibWFwIn19")), "tags") unless @tags.nil?
end

Instance Attribute Details

#actionsAWSCDK::IResolvable, ... (readonly)

The actions for the experiment.



63
64
65
# File 'fis/cfn_experiment_template_props.rb', line 63

def actions
  @actions
end

#descriptionString (readonly)

The description for the experiment template.



43
44
45
# File 'fis/cfn_experiment_template_props.rb', line 43

def description
  @description
end

#experiment_optionsAWSCDK::IResolvable, ... (readonly)

The experiment options for an experiment template.



68
69
70
# File 'fis/cfn_experiment_template_props.rb', line 68

def experiment_options
  @experiment_options
end

#experiment_report_configurationAWSCDK::IResolvable, ... (readonly)

Describes the report configuration for the experiment template.



73
74
75
# File 'fis/cfn_experiment_template_props.rb', line 73

def experiment_report_configuration
  @experiment_report_configuration
end

#log_configurationAWSCDK::IResolvable, ... (readonly)

The configuration for experiment logging.



78
79
80
# File 'fis/cfn_experiment_template_props.rb', line 78

def log_configuration
  @log_configuration
end

#role_arnString, AWSCDK::Interfaces::AWSIAM::IRoleRef (readonly)

The Amazon Resource Name (ARN) of an IAM role.



48
49
50
# File 'fis/cfn_experiment_template_props.rb', line 48

def role_arn
  @role_arn
end

#tagsHash{String => String}? (readonly)

The tags for the experiment template.



83
84
85
# File 'fis/cfn_experiment_template_props.rb', line 83

def tags
  @tags
end

Class Method Details

.jsii_propertiesObject



85
86
87
88
89
90
91
92
93
94
95
96
97
# File 'fis/cfn_experiment_template_props.rb', line 85

def self.jsii_properties
  {
    :description => "description",
    :role_arn => "roleArn",
    :stop_conditions => "stopConditions",
    :targets => "targets",
    :actions => "actions",
    :experiment_options => "experimentOptions",
    :experiment_report_configuration => "experimentReportConfiguration",
    :log_configuration => "logConfiguration",
    :tags => "tags",
  }
end

Instance Method Details

#to_jsiiObject



99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
# File 'fis/cfn_experiment_template_props.rb', line 99

def to_jsii
  result = {}
  result.merge!({
    "description" => @description,
    "roleArn" => @role_arn,
    "stopConditions" => @stop_conditions,
    "targets" => @targets,
    "actions" => @actions,
    "experimentOptions" => @experiment_options,
    "experimentReportConfiguration" => @experiment_report_configuration,
    "logConfiguration" => @log_configuration,
    "tags" => @tags,
  })
  result.compact
end