Skip to content

Commit 7401f07

Browse files
committed
finished terraform stuff
1 parent 38893d8 commit 7401f07

File tree

4 files changed

+30
-21
lines changed

4 files changed

+30
-21
lines changed

.gitignore

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,5 +22,10 @@
2222
rails_test_app/logstruct_test_app/
2323

2424
terraform-provider-logstruct/
25+
26+
# Terraform local artifacts
27+
**/.terraform/
28+
**/.terraform.lock.hcl
29+
**/.tflint.hcl.local
2530
terraform-aws-logstruct/
2631
terraform-example/.terraform/
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
{"Modules":[{"Key":"","Source":"","Dir":"."},{"Key":"email_delivered_metric","Source":"../terraform-aws-logstruct/modules/metric-filter","Dir":"../terraform-aws-logstruct/modules/metric-filter"}]}
1+
{"Modules":[{"Key":"","Source":"","Dir":"."},{"Key":"email_delivered_metric","Source":"registry.terraform.io/DocSpring/logstruct/aws//modules/metric-filter","Version":"0.0.7","Dir":".terraform/modules/email_delivered_metric/modules/metric-filter"}]}

terraform-example/.tflint.hcl

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,11 @@ plugin "terraform" {
44

55
# Keep linting minimal for example; no cloud plugins required
66
rule "terraform_unused_declarations" { enabled = true }
7-
rule "terraform_comment_syntax" { enabled = true }
87
rule "terraform_deprecated_index" { enabled = true }
9-
8+
# Soften/noise reduction for examples
9+
rule "terraform_naming_convention" { enabled = false }
10+
rule "terraform_documented_variables" { enabled = false }
11+
rule "terraform_module_pinned_source" { enabled = false }
12+
rule "terraform_required_providers" { enabled = false }
13+
rule "terraform_required_version" { enabled = false }
14+
rule "terraform_standard_module_structure" { enabled = false }

terraform-example/main.tf

Lines changed: 17 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -12,18 +12,10 @@ terraform {
1212
}
1313
}
1414

15-
# Validate allowed events for a canonical source
16-
data "logstruct_source" "mailer" {
17-
source = "mailer"
18-
}
19-
2015
variable "event" {
21-
type = string
22-
default = "delivered"
23-
validation {
24-
condition = contains(keys(data.logstruct_source.mailer.events), var.event)
25-
error_message = "Invalid event for source=mailer"
26-
}
16+
type = string
17+
default = "delivered"
18+
description = "LogStruct event for source=mailer (e.g., delivered)"
2719
}
2820

2921
# Compile exact CloudWatch pattern (optional; module also compiles internally)
@@ -32,11 +24,10 @@ data "logstruct_pattern" "email" {
3224
event = var.event
3325
}
3426

35-
# Example module usage: metric filter
27+
# Example module usage: metric filter (Registry)
3628
module "email_delivered_metric" {
37-
# Use local relative path for CI/demo; switch to Registry in real usage:
38-
# source = "DocSpring/logstruct/aws//modules/metric-filter"
39-
source = "../terraform-aws-logstruct/modules/metric-filter"
29+
source = "DocSpring/logstruct/aws//modules/metric-filter"
30+
version = ">= 0.0.4"
4031

4132
name = "Email Delivered Count"
4233
log_group_name = var.log_group_name
@@ -45,9 +36,17 @@ module "email_delivered_metric" {
4536
namespace = var.namespace
4637
}
4738

48-
variable "log_group_name" { type = string }
49-
variable "namespace" { type = string }
39+
variable "log_group_name" {
40+
type = string
41+
description = "CloudWatch Logs group name"
42+
}
43+
44+
variable "namespace" {
45+
type = string
46+
description = "CloudWatch Metrics namespace"
47+
}
5048

5149
output "compiled_pattern" {
52-
value = data.logstruct_pattern.email.pattern
50+
value = data.logstruct_pattern.email.pattern
51+
description = "Compiled CloudWatch filter pattern from source+event"
5352
}

0 commit comments

Comments
 (0)