-
Notifications
You must be signed in to change notification settings - Fork 2
/
cloudformation.tf
31 lines (28 loc) · 1.47 KB
/
cloudformation.tf
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
resource "aws_cloudformation_stack" "sns" {
name = "${var.name}-sns-stack"
template_body = "${file("${path.module}/templates/sns.yml")}"
parameters {
Email = "${var.datapipeline_config["email"]}"
}
}
resource "aws_cloudformation_stack" "datapipeline" {
name = "${var.name}-datapipeline-stack"
template_body = "${file("${path.module}/templates/datapipeline.yml")}"
parameters {
myInstanceType = "${var.datapipeline_config["instance_type"]}"
mySubnetId = "${aws_subnet.public.id}"
mySecurityGroupId = "${aws_security_group.datapipeline.id}"
myEFSId = "${aws_efs_file_system.efs.0.id}"
myEFSSource = "${element(aws_efs_mount_target.efs.*.dns_name, 0)}"
myEFSBackup = "${element(aws_efs_mount_target.efs.*.dns_name, 1)}"
myTimeZone = "${var.datapipeline_config["timezone"]}"
myImageId = "${data.aws_ami.amazon_linux.id}"
myTopicArn = "${aws_cloudformation_stack.sns.outputs["TopicArn"]}"
myS3LogBucket = "${aws_s3_bucket.s3.id}"
myDataPipelineResourceRole = "${aws_iam_instance_profile.datapipeline_resource.name}"
myDataPipelineRole = "${aws_iam_role.datapipeline_role.name}"
myKeyPair = "${aws_key_pair.key_pair.key_name}"
myPeriod = "${var.datapipeline_config["period"]}"
Tag = "${var.name}"
}
}