Skip to content

Commit ada3b2b

Browse files
committed
Pass KMS environment variables through Terraform modules
1 parent 012d818 commit ada3b2b

File tree

4 files changed

+48
-13
lines changed

4 files changed

+48
-13
lines changed

README.md

Lines changed: 15 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -67,18 +67,21 @@ terraform apply \
6767

6868
## Terraform Variables
6969

70-
| Variable | Required | Default | Description |
71-
| ------------------------- | -------- | ---------------------------- | ------------------------------------------------------ |
72-
| `aws_s3_bucket_name` | Yes | - | Name of the S3 bucket to create for storing audit logs |
73-
| `render_api_key` | Yes | - | Render API key for accessing audit logs |
74-
| `render_workspace_ids` | No | `[]` | List of workspace IDs to fetch audit logs from |
75-
| `render_organization_id` | No | `""` | Organization ID for Enterprise audit logs |
76-
| `aws_iam_user_name` | No | `render-audit-log-processor` | Name of the IAM user created for S3 access |
77-
| `render_cronjob_name` | No | `render-auditlogs` | Name of the Render Cron Job |
78-
| `render_cronjob_schedule` | No | `1/15 * * * *` | Cron schedule (default: every 15 minutes) |
79-
| `render_cronjob_plan` | No | `starter` | Render plan for the Cron Job |
80-
| `render_cronjob_region` | No | `oregon` | Region to deploy the Cron Job |
81-
| `render_project_name` | No | `audit-logs` | Name of the Render project |
70+
| Variable | Required | Default | Description |
71+
| --------------------------- | -------- | ---------------------------- | ------------------------------------------------------ |
72+
| `aws_s3_bucket_name` | Yes | - | Name of the S3 bucket to create for storing audit logs |
73+
| `render_api_key` | Yes | - | Render API key for accessing audit logs |
74+
| `render_workspace_ids` | No | `[]` | List of workspace IDs to fetch audit logs from |
75+
| `render_organization_id` | No | `""` | Organization ID for Enterprise audit logs |
76+
| `aws_iam_user_name` | No | `render-audit-log-processor` | Name of the IAM user created for S3 access |
77+
| `aws_s3_bucket_key_enabled` | No | `false` | Enable S3 bucket key to reduce KMS calls |
78+
| `aws_s3_kms_key_id` | No | `""` | ARN for KMS key to use for encryption |
79+
| `aws_s3_use_kms` | No | `false` | Use KMS for encryption (instead of SSE-S3) |
80+
| `render_cronjob_name` | No | `render-auditlogs` | Name of the Render Cron Job |
81+
| `render_cronjob_schedule` | No | `1/15 * * * *` | Cron schedule (default: every 15 minutes) |
82+
| `render_cronjob_plan` | No | `starter` | Render plan for the Cron Job |
83+
| `render_cronjob_region` | No | `oregon` | Region to deploy the Cron Job |
84+
| `render_project_name` | No | `audit-logs` | Name of the Render project |
8285

8386
## Architecture
8487

terraform/modules/render-audit-logs/render.tf

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,9 @@ resource "render_cron_job" "render-audit-logs" {
2727
"WORKSPACE_IDS" = { value = join(",", var.render_workspace_ids) }
2828
"RENDER_API_KEY" = { value = var.render_api_key }
2929
"S3_BUCKET" = { value = var.aws_s3_bucket_name }
30+
"S3_BUCKET_KEY_ENABLED" = { value = var.aws_s3_bucket_key_enabled }
31+
"S3_KMS_KEY_ID" = { value = var.aws_s3_kms_key_id }
32+
"S3_USE_KMS" = { value = var.aws_s3_use_kms }
3033
}
3134
}
3235

terraform/modules/render-audit-logs/variables.tf

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,21 @@ variable "aws_s3_bucket_name" {
22
type = string
33
}
44

5+
variable "aws_s3_bucket_key_enabled" {
6+
type = bool
7+
default = false
8+
}
9+
10+
variable "aws_s3_kms_key_id" {
11+
type = string
12+
default = ""
13+
}
14+
15+
variable "aws_s3_use_kms" {
16+
type = bool
17+
default = false
18+
}
19+
520
variable "aws_access_key" {
621
type = string
722
sensitive = true

terraform/variables.tf

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,12 +2,26 @@ variable "aws_s3_bucket_name" {
22
type = string
33
}
44

5+
variable "aws_s3_bucket_key_enabled" {
6+
type = bool
7+
default = false
8+
}
9+
10+
variable "aws_s3_kms_key_id" {
11+
type = string
12+
default = ""
13+
}
14+
15+
variable "aws_s3_use_kms" {
16+
type = bool
17+
default = false
18+
}
19+
520
variable "aws_iam_user_name" {
621
type = string
722
default = "render-audit-log-processor"
823
}
924

10-
1125
variable "render_api_key" {
1226
type = string
1327
sensitive = true

0 commit comments

Comments
 (0)