3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
|
# File 'lib/jets/resource/iam/base_role_definition.rb', line 3
def definition
logical_id = role_logical_id
definition = {
logical_id => {
type: "AWS::IAM::Role",
properties: {
role_name: role_name,
path: "/",
assume_role_policy_document: {
version: "2012-10-17",
statement: [{
effect: "Allow",
principal: {service: ["lambda.amazonaws.com"]},
action: ["sts:AssumeRole"]}
]
}
}
}
}
definition[logical_id][:properties][:policies] = [
policy_name: "#{role_name}-policy",
policy_document: policy_document,
] unless policy_document['Statement'].empty?
unless managed_policy_arns.empty?
definition[logical_id][:properties][:managed_policy_arns] = managed_policy_arns
end
definition
end
|