@@ -9,6 +9,7 @@ module "codepipeline_label" {
99}
1010
1111resource "aws_s3_bucket" "default" {
12+ count = " ${ var . enabled == " true" ? 1 : 0 } "
1213 bucket = " ${ module . codepipeline_label . id } "
1314 acl = " private"
1415 tags = " ${ module . codepipeline_label . tags } "
@@ -25,6 +26,7 @@ module "codepipeline_assume_label" {
2526}
2627
2728resource "aws_iam_role" "default" {
29+ count = " ${ var . enabled == " true" ? 1 : 0 } "
2830 name = " ${ module . codepipeline_assume_label . id } "
2931 assume_role_policy = " ${ data . aws_iam_policy_document . assume . json } "
3032}
@@ -47,11 +49,13 @@ data "aws_iam_policy_document" "assume" {
4749}
4850
4951resource "aws_iam_role_policy_attachment" "default" {
52+ count = " ${ var . enabled == " true" ? 1 : 0 } "
5053 role = " ${ aws_iam_role . default . id } "
5154 policy_arn = " ${ aws_iam_policy . default . arn } "
5255}
5356
5457resource "aws_iam_policy" "default" {
58+ count = " ${ var . enabled == " true" ? 1 : 0 } "
5559 name = " ${ module . codepipeline_label . id } "
5660 policy = " ${ data . aws_iam_policy_document . default . json } "
5761}
@@ -80,6 +84,7 @@ data "aws_iam_policy_document" "default" {
8084}
8185
8286resource "aws_iam_role_policy_attachment" "s3" {
87+ count = " ${ var . enabled == " true" ? 1 : 0 } "
8388 role = " ${ aws_iam_role . default . id } "
8489 policy_arn = " ${ aws_iam_policy . s3 . arn } "
8590}
@@ -95,11 +100,13 @@ module "codepipeline_s3_policy_label" {
95100}
96101
97102resource "aws_iam_policy" "s3" {
103+ count = " ${ var . enabled == " true" ? 1 : 0 } "
98104 name = " ${ module . codepipeline_s3_policy_label . id } "
99105 policy = " ${ data . aws_iam_policy_document . s3 . json } "
100106}
101107
102108data "aws_iam_policy_document" "s3" {
109+ count = " ${ var . enabled == " true" ? 1 : 0 } "
103110 statement {
104111 sid = " "
105112
@@ -120,6 +127,7 @@ data "aws_iam_policy_document" "s3" {
120127}
121128
122129resource "aws_iam_role_policy_attachment" "codebuild" {
130+ count = " ${ var . enabled == " true" ? 1 : 0 } "
123131 role = " ${ aws_iam_role . default . id } "
124132 policy_arn = " ${ aws_iam_policy . codebuild . arn } "
125133}
@@ -135,6 +143,7 @@ module "codebuild_label" {
135143}
136144
137145resource "aws_iam_policy" "codebuild" {
146+ count = " ${ var . enabled == " true" ? 1 : 0 } "
138147 name = " ${ module . codebuild_label . id } "
139148 policy = " ${ data . aws_iam_policy_document . codebuild . json } "
140149}
@@ -153,7 +162,7 @@ data "aws_iam_policy_document" "codebuild" {
153162}
154163
155164module "build" {
156- source = " git::https://github.com/cloudposse/terraform-aws-codebuild.git?ref=tags/0.7.1 "
165+ source = " git::https://github.com/cloudposse/terraform-aws-codebuild.git?ref=tags/0.7.2 "
157166 namespace = " ${ var . namespace } "
158167 name = " ${ var . name } "
159168 stage = " ${ var . stage } "
@@ -169,14 +178,17 @@ module "build" {
169178 image_repo_name = " ${ var . image_repo_name } "
170179 image_tag = " ${ var . image_tag } "
171180 github_token = " ${ var . github_oauth_token } "
181+ enabled = " ${ var . enabled } "
172182}
173183
174184resource "aws_iam_role_policy_attachment" "codebuild_s3" {
185+ count = " ${ var . enabled == " true" ? 1 : 0 } "
175186 role = " ${ module . build . role_arn } "
176187 policy_arn = " ${ aws_iam_policy . s3 . arn } "
177188}
178189
179190resource "aws_codepipeline" "source_build_deploy" {
191+ count = " ${ var . enabled == " true" ? 1 : 0 } "
180192 name = " ${ module . codepipeline_label . id } "
181193 role_arn = " ${ aws_iam_role . default . arn } "
182194
0 commit comments