-
Notifications
You must be signed in to change notification settings - Fork 18
Expand file tree
/
Copy pathmain.tf
More file actions
58 lines (51 loc) · 2.39 KB
/
main.tf
File metadata and controls
58 lines (51 loc) · 2.39 KB
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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
##############################################################################
# Resource Group
##############################################################################
module "resource_group" {
source = "terraform-ibm-modules/resource-group/ibm"
version = "1.1.6"
# if an existing resource group is not set (null) create a new one using prefix
resource_group_name = var.resource_group == null ? "${var.prefix}-resource-group" : null
existing_resource_group_name = var.resource_group
}
#############################################################################
# Provision cloud object storage and bucket
#############################################################################
resource "ibm_resource_instance" "cos_instance" {
name = "${var.prefix}-vpc-logs-cos"
resource_group_id = module.resource_group.resource_group_id
service = "cloud-object-storage"
plan = "standard"
location = "global"
}
resource "ibm_cos_bucket" "cos_bucket" {
bucket_name = "${var.prefix}-vpc-logs-cos-bucket"
resource_instance_id = ibm_resource_instance.cos_instance.id
region_location = var.region
storage_class = "standard"
}
#############################################################################
# Provision VPC
#############################################################################
module "slz_vpc" {
source = "../../"
resource_group_id = module.resource_group.resource_group_id
region = var.region
name = "vpc"
routing_table_name = "vpc-routing-table"
public_gateway_name = "vpc-public-gateway"
vpc_flow_logs_name = "vpc-flow-logs"
prefix = null
tags = var.resource_tags
access_tags = var.access_tags
enable_vpc_flow_logs = true
create_authorization_policy_vpc_to_cos = true
existing_cos_instance_guid = ibm_resource_instance.cos_instance.guid
existing_storage_bucket_name = ibm_cos_bucket.cos_bucket.bucket_name
address_prefixes = {
zone-1 = ["10.10.10.0/24"]
zone-2 = ["10.20.10.0/24"]
zone-3 = ["10.30.10.0/24"]
}
network_cidrs = ["10.0.0.0/8", "164.0.0.0/8"]
}