Class: AWSCDK::Evidently::CfnLaunchProps
- Inherits:
-
Jsii::Struct
- Object
- Jsii::Struct
- AWSCDK::Evidently::CfnLaunchProps
- Defined in:
- evidently/cfn_launch_props.rb
Overview
Properties for defining a CfnLaunch.
Instance Attribute Summary collapse
-
#description ⇒ String?
readonly
An optional description for the launch.
-
#execution_status ⇒ AWSCDK::IResolvable, ...
readonly
A structure that you can use to start and stop the launch.
-
#groups ⇒ AWSCDK::IResolvable, Array<AWSCDK::IResolvable, AWSCDK::Evidently::CfnLaunch::LaunchGroupObjectProperty>
readonly
An array of structures that contains the feature and variations that are to be used for the launch.
-
#metric_monitors ⇒ AWSCDK::IResolvable, ...
readonly
An array of structures that define the metrics that will be used to monitor the launch performance.
-
#name ⇒ String
readonly
The name for the launch.
-
#project ⇒ String, AWSCDK::Interfaces::AWSEvidently::IProjectRef
readonly
The name or ARN of the project that you want to create the launch in.
-
#randomization_salt ⇒ String?
readonly
When Evidently assigns a particular user session to a launch, it must use a randomization ID to determine which variation the user session is served.
-
#scheduled_splits_config ⇒ AWSCDK::IResolvable, Array<AWSCDK::IResolvable, AWSCDK::Evidently::CfnLaunch::StepConfigProperty>
readonly
An array of structures that define the traffic allocation percentages among the feature variations during each step of the launch.
-
#tags ⇒ Array<AWSCDK::CfnTag>?
readonly
Assigns one or more tags (key-value pairs) to the launch.
Class Method Summary collapse
Instance Method Summary collapse
-
#initialize(groups:, name:, project:, scheduled_splits_config:, description: nil, execution_status: nil, metric_monitors: nil, randomization_salt: nil, tags: nil) ⇒ CfnLaunchProps
constructor
A new instance of CfnLaunchProps.
- #to_jsii ⇒ Object
Constructor Details
#initialize(groups:, name:, project:, scheduled_splits_config:, description: nil, execution_status: nil, metric_monitors: nil, randomization_salt: nil, tags: nil) ⇒ CfnLaunchProps
Returns a new instance of CfnLaunchProps.
18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 |
# File 'evidently/cfn_launch_props.rb', line 18 def initialize(groups:, name:, project:, scheduled_splits_config:, description: nil, execution_status: nil, metric_monitors: nil, randomization_salt: nil, tags: nil) @groups = groups Jsii::Type.check_type(@groups, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImNvbGxlY3Rpb24iOnsiZWxlbWVudHR5cGUiOnsidW5pb24iOnsidHlwZXMiOlt7ImZxbiI6ImF3cy1jZGstbGliLklSZXNvbHZhYmxlIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfZXZpZGVudGx5LkNmbkxhdW5jaC5MYXVuY2hHcm91cE9iamVjdFByb3BlcnR5In1dfX0sImtpbmQiOiJhcnJheSJ9fV19fQ==")), "groups") @name = name Jsii::Type.check_type(@name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "name") @project = project Jsii::Type.check_type(@project, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3sicHJpbWl0aXZlIjoic3RyaW5nIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5pbnRlcmZhY2VzLmF3c19ldmlkZW50bHkuSVByb2plY3RSZWYifV19fQ==")), "project") @scheduled_splits_config = scheduled_splits_config Jsii::Type.check_type(@scheduled_splits_config, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImNvbGxlY3Rpb24iOnsiZWxlbWVudHR5cGUiOnsidW5pb24iOnsidHlwZXMiOlt7ImZxbiI6ImF3cy1jZGstbGliLklSZXNvbHZhYmxlIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfZXZpZGVudGx5LkNmbkxhdW5jaC5TdGVwQ29uZmlnUHJvcGVydHkifV19fSwia2luZCI6ImFycmF5In19XX19")), "scheduledSplitsConfig") @description = description Jsii::Type.check_type(@description, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "description") unless @description.nil? @execution_status = execution_status.is_a?(Hash) ? ::AWSCDK::Evidently::CfnLaunch::ExecutionStatusObjectProperty.new(**execution_status.transform_keys(&:to_sym)) : execution_status Jsii::Type.check_type(@execution_status, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19ldmlkZW50bHkuQ2ZuTGF1bmNoLkV4ZWN1dGlvblN0YXR1c09iamVjdFByb3BlcnR5In1dfX0=")), "executionStatus") unless @execution_status.nil? @metric_monitors = metric_monitors Jsii::Type.check_type(@metric_monitors, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImNvbGxlY3Rpb24iOnsiZWxlbWVudHR5cGUiOnsidW5pb24iOnsidHlwZXMiOlt7ImZxbiI6ImF3cy1jZGstbGliLklSZXNvbHZhYmxlIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfZXZpZGVudGx5LkNmbkxhdW5jaC5NZXRyaWNEZWZpbml0aW9uT2JqZWN0UHJvcGVydHkifV19fSwia2luZCI6ImFycmF5In19XX19")), "metricMonitors") unless @metric_monitors.nil? @randomization_salt = randomization_salt Jsii::Type.check_type(@randomization_salt, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "randomizationSalt") unless @randomization_salt.nil? @tags = .is_a?(Array) ? .map { |jsii_v0| jsii_v0.is_a?(Hash) ? ::AWSCDK::CfnTag.new(**jsii_v0.transform_keys(&:to_sym)) : jsii_v0 } : Jsii::Type.check_type(@tags, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7ImZxbiI6ImF3cy1jZGstbGliLkNmblRhZyJ9LCJraW5kIjoiYXJyYXkifX0=")), "tags") unless @tags.nil? end |
Instance Attribute Details
#description ⇒ String? (readonly)
An optional description for the launch.
67 68 69 |
# File 'evidently/cfn_launch_props.rb', line 67 def description @description end |
#execution_status ⇒ AWSCDK::IResolvable, ... (readonly)
A structure that you can use to start and stop the launch.
72 73 74 |
# File 'evidently/cfn_launch_props.rb', line 72 def execution_status @execution_status end |
#groups ⇒ AWSCDK::IResolvable, Array<AWSCDK::IResolvable, AWSCDK::Evidently::CfnLaunch::LaunchGroupObjectProperty> (readonly)
An array of structures that contains the feature and variations that are to be used for the launch.
You can up to five launch groups in a launch.
45 46 47 |
# File 'evidently/cfn_launch_props.rb', line 45 def groups @groups end |
#metric_monitors ⇒ AWSCDK::IResolvable, ... (readonly)
An array of structures that define the metrics that will be used to monitor the launch performance.
You can have up to three metric monitors in the array.
79 80 81 |
# File 'evidently/cfn_launch_props.rb', line 79 def metric_monitors @metric_monitors end |
#name ⇒ String (readonly)
The name for the launch.
It can include up to 127 characters.
52 53 54 |
# File 'evidently/cfn_launch_props.rb', line 52 def name @name end |
#project ⇒ String, AWSCDK::Interfaces::AWSEvidently::IProjectRef (readonly)
The name or ARN of the project that you want to create the launch in.
57 58 59 |
# File 'evidently/cfn_launch_props.rb', line 57 def project @project end |
#randomization_salt ⇒ String? (readonly)
When Evidently assigns a particular user session to a launch, it must use a randomization ID to determine which variation the user session is served.
This randomization ID is a combination of the entity ID and randomization_salt . If you omit randomization_salt , Evidently uses the launch name as the randomizations_salt .
86 87 88 |
# File 'evidently/cfn_launch_props.rb', line 86 def randomization_salt @randomization_salt end |
#scheduled_splits_config ⇒ AWSCDK::IResolvable, Array<AWSCDK::IResolvable, AWSCDK::Evidently::CfnLaunch::StepConfigProperty> (readonly)
An array of structures that define the traffic allocation percentages among the feature variations during each step of the launch.
62 63 64 |
# File 'evidently/cfn_launch_props.rb', line 62 def scheduled_splits_config @scheduled_splits_config end |
#tags ⇒ Array<AWSCDK::CfnTag>? (readonly)
Assigns one or more tags (key-value pairs) to the launch.
Tags can help you organize and categorize your resources. You can also use them to scope user permissions by granting a user permission to access or change only resources with certain tag values.
Tags don't have any semantic meaning to AWS and are interpreted strictly as strings of characters.
You can associate as many as 50 tags with a launch.
For more information, see Tagging AWS resources .
99 100 101 |
# File 'evidently/cfn_launch_props.rb', line 99 def @tags end |
Class Method Details
.jsii_properties ⇒ Object
101 102 103 104 105 106 107 108 109 110 111 112 113 |
# File 'evidently/cfn_launch_props.rb', line 101 def self.jsii_properties { :groups => "groups", :name => "name", :project => "project", :scheduled_splits_config => "scheduledSplitsConfig", :description => "description", :execution_status => "executionStatus", :metric_monitors => "metricMonitors", :randomization_salt => "randomizationSalt", :tags => "tags", } end |
Instance Method Details
#to_jsii ⇒ Object
115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 |
# File 'evidently/cfn_launch_props.rb', line 115 def to_jsii result = {} result.merge!({ "groups" => @groups, "name" => @name, "project" => @project, "scheduledSplitsConfig" => @scheduled_splits_config, "description" => @description, "executionStatus" => @execution_status, "metricMonitors" => @metric_monitors, "randomizationSalt" => @randomization_salt, "tags" => @tags, }) result.compact end |