resource "aws_iam_role" "lambda_role" { name = "blog_scraper_lambda_role" assume_role_policy = jsonencode({ Version = "2012-10-17" Statement = [ { Action = "sts:AssumeRole" Effect = "Allow" Principal = { Service = "lambda.amazonaws.com" } } ] }) } resource "aws_iam_policy" "lambda_basic_execution_policy" { name = "blog_scraper_lambda_basic_execution_policy" description = "Basic execution policy for blog scraper Lambda function" policy = jsonencode({ Version = "2012-10-17" Statement = [ { Effect = "Allow" Action = [ "logs:CreateLogGroup", "logs:CreateLogStream", "logs:PutLogEvents" ] Resource = "arn:aws:logs:*:*:*" } ] }) } resource "aws_iam_role_policy_attachment" "lambda_basic_execution_attachment" { role = aws_iam_role.lambda_role.name policy_arn = aws_iam_policy.lambda_basic_execution_policy.arn } # Install dependencies using uv (since it's a uv project) resource "null_resource" "uv_install" { provisioner "local-exec" { command = <