Skip to content

Commit d781284

Browse files
author
Steven Nemetz
committed
Allow S3 object modules to be disabled
1 parent ea0787e commit d781284

File tree

11 files changed

+53
-3
lines changed

11 files changed

+53
-3
lines changed

examples/pagerduty-disabled/main.tf

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
module "service" {
2+
source = "../../modules/pagerduty"
3+
service_key = ""
4+
service_name = "testing_disable_tf"
5+
s3_bucket = "wiser-infra-automation"
6+
}
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
provider "aws" {
2+
region = "us-west-2"
3+
4+
# Make it faster by skipping something
5+
skip_get_ec2_platforms = true
6+
skip_metadata_api_check = true
7+
skip_region_validation = true
8+
skip_credentials_validation = true
9+
skip_requesting_account_id = true
10+
}

examples/pagerduty-svc2/main.tf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,5 +2,5 @@ module "service" {
22
source = "../../modules/pagerduty"
33
service_key = "123456789012"
44
service_name = "test-srv-2"
5-
s3_bucket = "wiser-one-ci"
5+
s3_bucket = "wiser-infra-automation"
66
}

examples/slack-ch1/main.tf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
module "channel" {
22
source = "../../modules/slack"
33
channel_name = "test-srv-1a"
4-
s3_bucket = "wiser-one-ci"
4+
s3_bucket = "wiser-infra-automation"
55
}

examples/slack-ch2/main.tf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
module "channel" {
22
source = "../../modules/slack"
33
channel_name = "test-srv-2"
4-
s3_bucket = "wiser-one-ci"
4+
s3_bucket = "wiser-infra-automation"
55
}

examples/slack-disabled/main.tf

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
module "channel" {
2+
source = "../../modules/slack"
3+
channel_name = ""
4+
s3_bucket = "wiser-infra-automation"
5+
}

examples/slack-disabled/providers.tf

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
provider "aws" {
2+
region = "us-west-2"
3+
4+
# Make it faster by skipping something
5+
skip_get_ec2_platforms = true
6+
skip_metadata_api_check = true
7+
skip_region_validation = true
8+
skip_credentials_validation = true
9+
skip_requesting_account_id = true
10+
}

modules/pagerduty/main.tf

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,9 @@
1+
locals {
2+
enabled = "${length(var.service_key) > 0 ? 1 : 0}"
3+
}
4+
15
data "template_file" "pagerduty_service" {
6+
count = "${local.enabled}"
27
template = "${file("${path.module}/templates/pagerduty.json")}"
38

49
vars {
@@ -9,6 +14,7 @@ data "template_file" "pagerduty_service" {
914
}
1015

1116
resource "aws_s3_bucket_object" "object" {
17+
count = "${local.enabled}"
1218
bucket = "${var.s3_bucket}"
1319
acl = "bucket-owner-full-control"
1420

modules/pagerduty/variables.tf

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ variable "datadog_default" {
55

66
variable "service_key" {
77
description = "PagerDuty service integration key"
8+
default = ""
89
}
910

1011
variable "service_name" {

modules/slack/main.tf

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,14 @@
1+
# Expect Slack channel name to be of format: mon-<env>-<service short name>
2+
# Auto disable if:
3+
# Channel name is empty
4+
# Channel name has format mon-<env>-<service short name> but nothing after second -
5+
6+
locals {
7+
enabled = "${length(replace(var.channel_name, "/(mon-\\w+-)(.*)$/", "$2")) > 0 ? 1 : 0}"
8+
}
9+
110
data "template_file" "slack_channel" {
11+
count = "${local.enabled}"
212
template = "${file("${path.module}/templates/slack.json")}"
313

414
vars {
@@ -7,6 +17,7 @@ data "template_file" "slack_channel" {
717
}
818

919
resource "aws_s3_bucket_object" "object" {
20+
count = "${local.enabled}"
1021
bucket = "${var.s3_bucket}"
1122
acl = "bucket-owner-full-control"
1223

modules/slack/variables.tf

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
variable "channel_name" {
22
description = "Slack channel name"
3+
default = ""
34
}
45

56
variable "s3_base" {

0 commit comments

Comments
 (0)