Class: Jets::Cfn::TemplateMappers::IamPolicy::BasePolicyMapper

Inherits:
Object
  • Object
show all
Extended by:
Memoist
Defined in:
lib/jets/cfn/template_mappers/iam_policy/base_policy_mapper.rb

Instance Method Summary collapse

Instance Method Details

#classify_name(text) ⇒ Object

Need to underscore and then classify again for this case:

Jets::PreheatJob_policy => JetsPreheatJobPolicy

Or else you we get this:

Jets::PreheatJob_policy => JetsPreheatjobPolicy


40
41
42
# File 'lib/jets/cfn/template_mappers/iam_policy/base_policy_mapper.rb', line 40

def classify_name(text)
  text.gsub('::','_').underscore.classify
end

#namespaceObject



32
33
34
# File 'lib/jets/cfn/template_mappers/iam_policy/base_policy_mapper.rb', line 32

def namespace
  Jets.config.project_namespace.underscore
end

#propertiesObject



12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
# File 'lib/jets/cfn/template_mappers/iam_policy/base_policy_mapper.rb', line 12

def properties
  properties = {
    AssumeRolePolicyDocument: {
      Version: "2012-10-17",
      Statement: [{
        Effect: "Allow",
        Principal: {Service: ["lambda.amazonaws.com"]},
        Action: ["sts:AssumeRole"]}
      ]},
    Path: "/"
  }
  properties[:Policies] = [
    PolicyName: iam_policy.policy_name,
    PolicyDocument: iam_policy.policy_document,
  ]
  properties[:RoleName] = role_name
  properties.deep_stringify_keys!
  properties
end