Sketching out more infra
parent
0dd174d756
commit
ed8f56fec1
@ -0,0 +1,4 @@
|
||||
resource "aws_athena_database" "transponder-metrics" {
|
||||
name = "transponder_metrics"
|
||||
bucket = aws_s3_bucket.transponder-data.id
|
||||
}
|
@ -0,0 +1,33 @@
|
||||
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
|
||||
}
|
||||
|
@ -0,0 +1,33 @@
|
||||
data "aws_iam_policy_document" "lambda-metrics-role" {
|
||||
statement {
|
||||
effect = "Allow"
|
||||
principals {
|
||||
type = "Service"
|
||||
identifiers = ["lambda.amazonaws.com"]
|
||||
}
|
||||
actions = ["sts:AssumeRole"]
|
||||
}
|
||||
}
|
||||
|
||||
resource "aws_iam_role" "lambda-metrics-role" {
|
||||
name = "lambda-metrics-role"
|
||||
assume_role_policy = data.aws_iam_policy_document.lambda-metrics-role.json
|
||||
}
|
||||
|
||||
data "archive_file" "lambda-metrics-role" {
|
||||
type = "zip"
|
||||
source_file = "src/metrics.py"
|
||||
output_path = "src/metrics.zip"
|
||||
}
|
||||
|
||||
resource "aws_lambda_function" "metrics" {
|
||||
function_name = "transponder-tracker-metrics"
|
||||
runtime = "python3.11"
|
||||
|
||||
role = aws_iam_role.lambda-metrics-role.arn
|
||||
|
||||
handler = "metrics"
|
||||
filename = "src/metrics.zip"
|
||||
source_code_hash = data.archive_file.lambda-metrics-role.output_base64sha256
|
||||
}
|
||||
|
Loading…
Reference in New Issue