Class: AWSCDK::MPA::CfnApprovalTeamProps

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
mpa/cfn_approval_team_props.rb

Overview

Properties for defining a CfnApprovalTeam.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(approval_strategy:, approvers:, description:, name:, policies:, tags: nil) ⇒ CfnApprovalTeamProps

Returns a new instance of CfnApprovalTeamProps.

Parameters:



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

def initialize(approval_strategy:, approvers:, description:, name:, policies:, tags: nil)
  @approval_strategy = approval_strategy.is_a?(Hash) ? ::AWSCDK::MPA::CfnApprovalTeam::ApprovalStrategyProperty.new(**approval_strategy.transform_keys(&:to_sym)) : approval_strategy
  Jsii::Type.check_type(@approval_strategy, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19tcGEuQ2ZuQXBwcm92YWxUZWFtLkFwcHJvdmFsU3RyYXRlZ3lQcm9wZXJ0eSJ9XX19")), "approvalStrategy")
  @approvers = approvers
  Jsii::Type.check_type(@approvers, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImNvbGxlY3Rpb24iOnsiZWxlbWVudHR5cGUiOnsidW5pb24iOnsidHlwZXMiOlt7ImZxbiI6ImF3cy1jZGstbGliLklSZXNvbHZhYmxlIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfbXBhLkNmbkFwcHJvdmFsVGVhbS5BcHByb3ZlclByb3BlcnR5In1dfX0sImtpbmQiOiJhcnJheSJ9fV19fQ==")), "approvers")
  @description = description
  Jsii::Type.check_type(@description, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "description")
  @name = name
  Jsii::Type.check_type(@name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "name")
  @policies = policies
  Jsii::Type.check_type(@policies, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImNvbGxlY3Rpb24iOnsiZWxlbWVudHR5cGUiOnsidW5pb24iOnsidHlwZXMiOlt7ImZxbiI6ImF3cy1jZGstbGliLklSZXNvbHZhYmxlIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfbXBhLkNmbkFwcHJvdmFsVGVhbS5Qb2xpY3lQcm9wZXJ0eSJ9XX19LCJraW5kIjoiYXJyYXkifX1dfX0=")), "policies")
  @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?
end

Instance Attribute Details

#approval_strategyAWSCDK::IResolvable, AWSCDK::MPA::CfnApprovalTeam::ApprovalStrategyProperty (readonly)

Contains details for how an approval team grants approval.



34
35
36
# File 'mpa/cfn_approval_team_props.rb', line 34

def approval_strategy
  @approval_strategy
end

#descriptionString (readonly)

Description for the team.



44
45
46
# File 'mpa/cfn_approval_team_props.rb', line 44

def description
  @description
end

#nameString (readonly)

Name of the team.



49
50
51
# File 'mpa/cfn_approval_team_props.rb', line 49

def name
  @name
end

#policiesAWSCDK::IResolvable, Array<AWSCDK::IResolvable, AWSCDK::MPA::CfnApprovalTeam::PolicyProperty> (readonly)

Contains details for a policy.

Policies define what operations a team that define the permissions for team resources.



56
57
58
# File 'mpa/cfn_approval_team_props.rb', line 56

def policies
  @policies
end

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

Tags that you have added to the specified resource.



61
62
63
# File 'mpa/cfn_approval_team_props.rb', line 61

def tags
  @tags
end

Class Method Details

.jsii_propertiesObject



63
64
65
66
67
68
69
70
71
72
# File 'mpa/cfn_approval_team_props.rb', line 63

def self.jsii_properties
  {
    :approval_strategy => "approvalStrategy",
    :approvers => "approvers",
    :description => "description",
    :name => "name",
    :policies => "policies",
    :tags => "tags",
  }
end

Instance Method Details

#to_jsiiObject



74
75
76
77
78
79
80
81
82
83
84
85
# File 'mpa/cfn_approval_team_props.rb', line 74

def to_jsii
  result = {}
  result.merge!({
    "approvalStrategy" => @approval_strategy,
    "approvers" => @approvers,
    "description" => @description,
    "name" => @name,
    "policies" => @policies,
    "tags" => @tags,
  })
  result.compact
end