You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
34 lines
820 B
HCL
34 lines
820 B
HCL
data "aws_iam_policy_document" "lambda-load-role" {
|
|
statement {
|
|
effect = "Allow"
|
|
principals {
|
|
type = "Service"
|
|
identifiers = ["lambda.amazonaws.com"]
|
|
}
|
|
actions = ["sts:AssumeRole"]
|
|
}
|
|
}
|
|
|
|
resource "aws_iam_role" "lambda-load-role" {
|
|
name = "lambda-load-role"
|
|
assume_role_policy = data.aws_iam_policy_document.lambda-load-role.json
|
|
}
|
|
|
|
data "archive_file" "lambda-load-role" {
|
|
type = "zip"
|
|
source_file = "src/load.py"
|
|
output_path = "src/load.zip"
|
|
}
|
|
|
|
resource "aws_lambda_function" "load" {
|
|
function_name = "transponder-tracker-load"
|
|
runtime = "python3.11"
|
|
|
|
role = aws_iam_role.lambda-load-role.arn
|
|
|
|
handler = "load"
|
|
filename = "src/load.zip"
|
|
source_code_hash = data.archive_file.lambda-load-role.output_base64sha256
|
|
}
|
|
|