You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@dlab.apache.org by dm...@apache.org on 2019/05/31 13:23:57 UTC
[incubator-dlab] 01/02: [terraform] Refactoring variables
This is an automated email from the ASF dual-hosted git repository.
dmysakovets pushed a commit to branch terraform
in repository https://gitbox.apache.org/repos/asf/incubator-dlab.git
commit 0f763386303457e812ad61e7b1a76481581aec5b
Author: Dyoma33 <de...@gmail.com>
AuthorDate: Fri May 31 15:30:03 2019 +0300
[terraform] Refactoring variables
---
infrastructure-provisioning/terraform/main/main.tf | 4 +++
.../terraform/main/variables.tf | 2 +-
.../terraform/modules/ssn/instance.tf | 19 +++++------
.../terraform/modules/ssn/network.tf | 19 ++++-------
.../terraform/modules/ssn/service_accounts.tf | 8 ++---
.../terraform/modules/ssn/variables.tf | 37 +++++++---------------
6 files changed, 35 insertions(+), 54 deletions(-)
diff --git a/infrastructure-provisioning/terraform/main/main.tf b/infrastructure-provisioning/terraform/main/main.tf
index fe0fc95..3573340 100644
--- a/infrastructure-provisioning/terraform/main/main.tf
+++ b/infrastructure-provisioning/terraform/main/main.tf
@@ -8,4 +8,8 @@ provider "google" {
module "ssn" {
source = "../modules/ssn"
+ project_var = "${var.project_var}"
+ env_name = "${var.env_name}"
+ region_var = "${var.region_var}"
+ zone_var = "${var.zone_var}"
}
\ No newline at end of file
diff --git a/infrastructure-provisioning/terraform/main/variables.tf b/infrastructure-provisioning/terraform/main/variables.tf
index f523595..55012ad 100644
--- a/infrastructure-provisioning/terraform/main/variables.tf
+++ b/infrastructure-provisioning/terraform/main/variables.tf
@@ -2,7 +2,7 @@ variable "project_var" {
default = "or2-msq-epmc-dlab-t1iylu"
}
-variable "project_name_var" {
+variable "env_name" {
default = "dem-test-terraform4"
}
diff --git a/infrastructure-provisioning/terraform/modules/ssn/instance.tf b/infrastructure-provisioning/terraform/modules/ssn/instance.tf
index f193b88..0c6dd57 100644
--- a/infrastructure-provisioning/terraform/modules/ssn/instance.tf
+++ b/infrastructure-provisioning/terraform/modules/ssn/instance.tf
@@ -1,31 +1,28 @@
-locals {
- compute_instance_name = "${var.env_name}-${var.instance_name}"
-}
provider "google" {
project = "${var.project_var}"
- region = "${var.region}"
+ region = "${var.region_var}"
}
resource "google_compute_address" "ssn-ip" {
- name = "${var.ssn-ip}"
+ name = "${var.env_name}-${var.instance_name}-ip"
address_type = "EXTERNAL"
}
resource "google_compute_instance" "ssn" {
- name = "${local.compute_instance_name}"
+ name = "${var.env_name}-${var.instance_name}-ssn"
machine_type = "${var.machine_type_var}"
- tags = ["${var.tags_var}"]
- zone = "${var.zone}"
+ tags = ["${var.env_name}-${var.instance_name}"]
+ zone = "${var.zone_var}"
boot_disk {
initialize_params {
image = "${var.image_name}"
- size = 20
+ size = "${var.boot_disk_size}"
}
}
labels = {
- name = "${local.compute_instance_name}"
+ name = "${var.env_name}-${var.instance_name}-ssn"
product = "${var.product_name}"
sbn = "${var.env_name}"
}
@@ -35,7 +32,7 @@ resource "google_compute_instance" "ssn" {
}
service_account {
- email = "${google_service_account.ssn_sa.email}" #"${var.project_name_var}-ssn-sa@${var.project_var}.iam.gserviceaccount.com"
+ email = "${google_service_account.ssn_sa.email}"
scopes = ["https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/compute"]
}
diff --git a/infrastructure-provisioning/terraform/modules/ssn/network.tf b/infrastructure-provisioning/terraform/modules/ssn/network.tf
index f4832c0..536a532 100644
--- a/infrastructure-provisioning/terraform/modules/ssn/network.tf
+++ b/infrastructure-provisioning/terraform/modules/ssn/network.tf
@@ -1,8 +1,3 @@
-locals {
- subnet_name = "${var.env_name}-${var.instance_name}-subnet"
- firewall_ingress_name = "${var.env_name}"
-}
-
resource "google_compute_network" "vpc" {
name = "${var.env_name}-vpc"
auto_create_subnetworks = "false"
@@ -10,30 +5,30 @@ resource "google_compute_network" "vpc" {
}
resource "google_compute_subnetwork" "subnet" {
- name = "${local.subnet_name}"
+ name = "${var.env_name}-${var.instance_name}-subnet"
ip_cidr_range = "${var.cidr}"
- region = "${var.region}"
+ region = "${var.region_var}"
network = "${google_compute_network.vpc.self_link}"
}
resource "google_compute_firewall" "firewall-ingress" {
- name = "${local.firewall_ingress_name}"
+ name = "${var.env_name}-${var.instance_name}-firewall_ingress"
network = "${google_compute_network.vpc.name}"
allow {
protocol = "tcp"
- ports = ["22", "80", "443"]
+ ports = "${var.ssn_ports_var}"
}
- target_tags = ["${var.tags_var}"]
+ target_tags = ["${var.env_name}-${var.instance_name}"]
source_ranges = ["${var.firewall_cidr_ranges}"]
}
resource "google_compute_firewall" "firewall-egress" {
- name = "${var.firewall_egress_name}"
+ name = "${var.env_name}-${var.instance_name}-firewall_egress"
network = "${google_compute_network.vpc.name}"
direction = "EGRESS"
allow {
protocol = "all"
}
- target_tags = ["${var.tags_var}"]
+ target_tags = ["${var.env_name}-${var.instance_name}"]
destination_ranges = ["${var.firewall_cidr_ranges}"]
}
diff --git a/infrastructure-provisioning/terraform/modules/ssn/service_accounts.tf b/infrastructure-provisioning/terraform/modules/ssn/service_accounts.tf
index cf3d863..8595e4e 100644
--- a/infrastructure-provisioning/terraform/modules/ssn/service_accounts.tf
+++ b/infrastructure-provisioning/terraform/modules/ssn/service_accounts.tf
@@ -4,8 +4,8 @@ locals {
}
resource "google_service_account" "ssn_sa" {
- account_id = "${local.service_name}"
- display_name = "${local.service_name}"
+ account_id = "${var.env_name}-ssn-sa"
+ display_name = "${var.env_name}-ssn-sa"
}
# Create a Service Account key by default
@@ -15,8 +15,8 @@ resource "google_service_account_key" "ssn_sa_key" {
}
resource "google_project_iam_custom_role" "my-custom-role" {
- role_id = "${replace(local.role_name, "-", "_")}"
- title = "${local.role_name}"
+ role_id = "${replace(${var.env_name}-ssn-role, "-", "_")}"
+ title = "${var.env_name}-ssn-role"
permissions = "${var.ssn_policy}"
}
diff --git a/infrastructure-provisioning/terraform/modules/ssn/variables.tf b/infrastructure-provisioning/terraform/modules/ssn/variables.tf
index f0513a0..5971749 100644
--- a/infrastructure-provisioning/terraform/modules/ssn/variables.tf
+++ b/infrastructure-provisioning/terraform/modules/ssn/variables.tf
@@ -1,10 +1,10 @@
-variable "project_var" {
- default = "or2-msq-epmc-dlab-t1iylu"
-}
+variable "project_var" {}
-variable "env_name" {
- default = "dem-test-terraform4"
-}
+variable "env_name" {}
+
+variable "region_var" {}
+
+variable "zone_var" {}
variable "instance_name" {
default = "ssn"
@@ -14,42 +14,27 @@ variable "product_name" {
default = "dlab"
}
-variable "firewall_ingress_name" {
- default = "dem-test-terraform-ssn-firewall-ingress"
+variable "boot_disk_size" {
+ default = 20
}
-variable "firewall_egress_name" {
- default = "dem-test-terraform-ssn-firewal-egress"
-}
-
-variable "tags_var" {
- default = "dem-test-terraform-ssn"
+variable "ssn_ports_var" {
+ type = "list"
+ default = ["22", "80", "443"]
}
variable "firewall_cidr_ranges" {
default = "0.0.0.0/0"
}
-variable "ssn-ip" {
- default = "dem-test-terraform-ssn"
-}
-
variable "machine_type_var" {
default = "n1-standard-1"
}
-variable "region" {
- default = "us-east1"
-}
-
variable "cidr" {
default = "172.31.0.0/20"
}
-variable "zone" {
- default = "us-east1-c"
-}
-
variable "image_name" {
default = "ubuntu-1604-xenial-v20170721"
}
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@dlab.apache.org
For additional commands, e-mail: commits-help@dlab.apache.org