@@ -9,6 +9,7 @@ module "codepipeline_label" {
9
9
}
10
10
11
11
resource "aws_s3_bucket" "default" {
12
+ count = " ${ var . enabled == " true" ? 1 : 0 } "
12
13
bucket = " ${ module . codepipeline_label . id } "
13
14
acl = " private"
14
15
tags = " ${ module . codepipeline_label . tags } "
@@ -25,6 +26,7 @@ module "codepipeline_assume_label" {
25
26
}
26
27
27
28
resource "aws_iam_role" "default" {
29
+ count = " ${ var . enabled == " true" ? 1 : 0 } "
28
30
name = " ${ module . codepipeline_assume_label . id } "
29
31
assume_role_policy = " ${ data . aws_iam_policy_document . assume . json } "
30
32
}
@@ -47,11 +49,13 @@ data "aws_iam_policy_document" "assume" {
47
49
}
48
50
49
51
resource "aws_iam_role_policy_attachment" "default" {
52
+ count = " ${ var . enabled == " true" ? 1 : 0 } "
50
53
role = " ${ aws_iam_role . default . id } "
51
54
policy_arn = " ${ aws_iam_policy . default . arn } "
52
55
}
53
56
54
57
resource "aws_iam_policy" "default" {
58
+ count = " ${ var . enabled == " true" ? 1 : 0 } "
55
59
name = " ${ module . codepipeline_label . id } "
56
60
policy = " ${ data . aws_iam_policy_document . default . json } "
57
61
}
@@ -80,6 +84,7 @@ data "aws_iam_policy_document" "default" {
80
84
}
81
85
82
86
resource "aws_iam_role_policy_attachment" "s3" {
87
+ count = " ${ var . enabled == " true" ? 1 : 0 } "
83
88
role = " ${ aws_iam_role . default . id } "
84
89
policy_arn = " ${ aws_iam_policy . s3 . arn } "
85
90
}
@@ -95,11 +100,13 @@ module "codepipeline_s3_policy_label" {
95
100
}
96
101
97
102
resource "aws_iam_policy" "s3" {
103
+ count = " ${ var . enabled == " true" ? 1 : 0 } "
98
104
name = " ${ module . codepipeline_s3_policy_label . id } "
99
105
policy = " ${ data . aws_iam_policy_document . s3 . json } "
100
106
}
101
107
102
108
data "aws_iam_policy_document" "s3" {
109
+ count = " ${ var . enabled == " true" ? 1 : 0 } "
103
110
statement {
104
111
sid = " "
105
112
@@ -120,6 +127,7 @@ data "aws_iam_policy_document" "s3" {
120
127
}
121
128
122
129
resource "aws_iam_role_policy_attachment" "codebuild" {
130
+ count = " ${ var . enabled == " true" ? 1 : 0 } "
123
131
role = " ${ aws_iam_role . default . id } "
124
132
policy_arn = " ${ aws_iam_policy . codebuild . arn } "
125
133
}
@@ -135,6 +143,7 @@ module "codebuild_label" {
135
143
}
136
144
137
145
resource "aws_iam_policy" "codebuild" {
146
+ count = " ${ var . enabled == " true" ? 1 : 0 } "
138
147
name = " ${ module . codebuild_label . id } "
139
148
policy = " ${ data . aws_iam_policy_document . codebuild . json } "
140
149
}
@@ -153,7 +162,7 @@ data "aws_iam_policy_document" "codebuild" {
153
162
}
154
163
155
164
module "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 "
157
166
namespace = " ${ var . namespace } "
158
167
name = " ${ var . name } "
159
168
stage = " ${ var . stage } "
@@ -169,14 +178,17 @@ module "build" {
169
178
image_repo_name = " ${ var . image_repo_name } "
170
179
image_tag = " ${ var . image_tag } "
171
180
github_token = " ${ var . github_oauth_token } "
181
+ enabled = " ${ var . enabled } "
172
182
}
173
183
174
184
resource "aws_iam_role_policy_attachment" "codebuild_s3" {
185
+ count = " ${ var . enabled == " true" ? 1 : 0 } "
175
186
role = " ${ module . build . role_arn } "
176
187
policy_arn = " ${ aws_iam_policy . s3 . arn } "
177
188
}
178
189
179
190
resource "aws_codepipeline" "source_build_deploy" {
191
+ count = " ${ var . enabled == " true" ? 1 : 0 } "
180
192
name = " ${ module . codepipeline_label . id } "
181
193
role_arn = " ${ aws_iam_role . default . arn } "
182
194
0 commit comments