lib/jets/application.rb in jets-1.9.14 vs lib/jets/application.rb in jets-1.9.15
- old
+ new
@@ -185,10 +185,11 @@
end
def set_iam_policy
config.iam_policy ||= self.class.default_iam_policy
config.managed_policy_definitions ||= [] # default empty
+ config.prewarm_job_iam_policy ||= self.class.default_prewarm_job_iam_policy
end
def self.default_iam_policy
project_namespace = Jets.project_namespace
logs = {
@@ -216,9 +217,26 @@
resource: "arn:aws:cloudformation:#{Jets.aws.region}:#{Jets.aws.account}:stack/#{project_namespace}*",
}
policies << cloudformation
end
policies
+ end
+
+ def self.default_prewarm_job_iam_policy
+ [
+ {
+ sid: "Statement1",
+ action: ["logs:*"],
+ effect: "Allow",
+ resource: "arn:aws:logs:#{Jets.aws.region}:#{Jets.aws.account}:log-group:#{Jets.config.project_namespace}-*",
+ },
+ {
+ sid: "Statement2",
+ action: ["lambda:InvokeFunction", "lambda:InvokeAsync"],
+ effect: "Allow",
+ resource: "arn:aws:lambda:#{Jets.aws.region}:#{Jets.aws.account}:function:#{Jets.config.project_namespace}-*",
+ }
+ ]
end
# It is pretty easy to attempt to set environment variables without
# the correct AWS Environment.Variables path struture.
# Auto-fix it for convenience.