Sha256: cd097f36df8ea9d45e81a92c95369a7cc644c4f71f7253c5a958b2db1759cbea
Contents?: true
Size: 829 Bytes
Versions: 10
Compression:
Stored size: 829 Bytes
Contents
# Implements: # # initialize # iam_policy # logical_id # role_name # module Jets::Cfn::TemplateMappers::IamPolicy class FunctionPolicyMapper < BasePolicyMapper def initialize(task) @task = task @app_class = task.class_name.to_s # IE: @app_class: PostsController, HardJob, Hello, HelloFunction end def iam_policy Jets::Cfn::TemplateBuilders::IamPolicy::FunctionPolicy.new(@task) end memoize :iam_policy # Example: PostsControllerShowLambdaFunction # There should be no namespace in the logical_id. def logical_id classify_name("#{@app_class}_#{@task.meth}_iam_role") end # There should be namespace in the role_name. def role_name classify_name("#{namespace}_#{@app_class}_#{@task.meth}_iam_role").underscore.dasherize end end end
Version data entries
10 entries across 10 versions & 1 rubygems