Class: AWSCDK::DeviceFarm::CfnProjectProps

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
device_farm/cfn_project_props.rb

Overview

Properties for defining a CfnProject.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(name:, default_job_timeout_minutes: nil, environment_variables: nil, execution_role_arn: nil, tags: nil, vpc_config: nil) ⇒ CfnProjectProps

Returns a new instance of CfnProjectProps.

Parameters:



15
16
17
18
19
20
21
22
23
24
25
26
27
28
# File 'device_farm/cfn_project_props.rb', line 15

def initialize(name:, default_job_timeout_minutes: nil, environment_variables: nil, execution_role_arn: nil, tags: nil, vpc_config: nil)
  @name = name
  Jsii::Type.check_type(@name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "name")
  @default_job_timeout_minutes = default_job_timeout_minutes
  Jsii::Type.check_type(@default_job_timeout_minutes, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "defaultJobTimeoutMinutes") unless @default_job_timeout_minutes.nil?
  @environment_variables = environment_variables
  Jsii::Type.check_type(@environment_variables, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImNvbGxlY3Rpb24iOnsiZWxlbWVudHR5cGUiOnsidW5pb24iOnsidHlwZXMiOlt7ImZxbiI6ImF3cy1jZGstbGliLklSZXNvbHZhYmxlIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfZGV2aWNlZmFybS5DZm5Qcm9qZWN0LkVudmlyb25tZW50VmFyaWFibGVQcm9wZXJ0eSJ9XX19LCJraW5kIjoiYXJyYXkifX1dfX0=")), "environmentVariables") unless @environment_variables.nil?
  @execution_role_arn = execution_role_arn
  Jsii::Type.check_type(@execution_role_arn, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "executionRoleArn") unless @execution_role_arn.nil?
  @tags = tags.is_a?(Array) ? tags.map { |jsii_v0| jsii_v0.is_a?(Hash) ? ::AWSCDK::CfnTag.new(**jsii_v0.transform_keys(&:to_sym)) : jsii_v0 } : tags
  Jsii::Type.check_type(@tags, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7ImZxbiI6ImF3cy1jZGstbGliLkNmblRhZyJ9LCJraW5kIjoiYXJyYXkifX0=")), "tags") unless @tags.nil?
  @vpc_config = vpc_config.is_a?(Hash) ? ::AWSCDK::DeviceFarm::CfnProject::VPCConfigProperty.new(**vpc_config.transform_keys(&:to_sym)) : vpc_config
  Jsii::Type.check_type(@vpc_config, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19kZXZpY2VmYXJtLkNmblByb2plY3QuVnBjQ29uZmlnUHJvcGVydHkifV19fQ==")), "vpcConfig") unless @vpc_config.nil?
end

Instance Attribute Details

#default_job_timeout_minutesNumeric? (readonly)

Sets the execution timeout value (in minutes) for a project.

All test runs in this project use the specified execution timeout value unless overridden when scheduling a run.



41
42
43
# File 'device_farm/cfn_project_props.rb', line 41

def default_job_timeout_minutes
  @default_job_timeout_minutes
end

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



44
45
46
# File 'device_farm/cfn_project_props.rb', line 44

def environment_variables
  @environment_variables
end

#execution_role_arnString? (readonly)



47
48
49
# File 'device_farm/cfn_project_props.rb', line 47

def execution_role_arn
  @execution_role_arn
end

#nameString (readonly)

The project's name.



34
35
36
# File 'device_farm/cfn_project_props.rb', line 34

def name
  @name
end

#tagsArray<AWSCDK::CfnTag>? (readonly)

The tags to add to the resource.

A tag is an array of key-value pairs. Tag keys can have a maximum character length of 128 characters. Tag values can have a maximum length of 256 characters.



54
55
56
# File 'device_farm/cfn_project_props.rb', line 54

def tags
  @tags
end

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

The VPC security groups and subnets that are attached to a project.



59
60
61
# File 'device_farm/cfn_project_props.rb', line 59

def vpc_config
  @vpc_config
end

Class Method Details

.jsii_propertiesObject



61
62
63
64
65
66
67
68
69
70
# File 'device_farm/cfn_project_props.rb', line 61

def self.jsii_properties
  {
    :name => "name",
    :default_job_timeout_minutes => "defaultJobTimeoutMinutes",
    :environment_variables => "environmentVariables",
    :execution_role_arn => "executionRoleArn",
    :tags => "tags",
    :vpc_config => "vpcConfig",
  }
end

Instance Method Details

#to_jsiiObject



72
73
74
75
76
77
78
79
80
81
82
83
# File 'device_farm/cfn_project_props.rb', line 72

def to_jsii
  result = {}
  result.merge!({
    "name" => @name,
    "defaultJobTimeoutMinutes" => @default_job_timeout_minutes,
    "environmentVariables" => @environment_variables,
    "executionRoleArn" => @execution_role_arn,
    "tags" => @tags,
    "vpcConfig" => @vpc_config,
  })
  result.compact
end