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/07/17 08:59:44 UTC

[incubator-dlab] 02/02: [DLAB-795] Refactored terraform scripts

This is an automated email from the ASF dual-hosted git repository.

dmysakovets pushed a commit to branch DLAB-795
in repository https://gitbox.apache.org/repos/asf/incubator-dlab.git

commit c2f722ca2e6d61a2e98b543fef0abd2b276e7e6b
Author: Dyoma33 <de...@gmail.com>
AuthorDate: Wed Jul 17 11:59:24 2019 +0300

    [DLAB-795] Refactored terraform scripts
---
 .../aws/computational_resources/main/main.tf       | 150 ++++++++++-----------
 .../aws/computational_resources/modules/ami/ami.tf |  18 +--
 .../computational_resources/modules/common/iam.tf  |  30 ++---
 .../modules/common/network.tf                      |  40 +++---
 .../modules/data_engine/instance.tf                |  50 +++----
 .../modules/emr/instance.tf                        |  34 ++---
 .../modules/notebook/instance.tf                   |  26 ++--
 7 files changed, 174 insertions(+), 174 deletions(-)

diff --git a/infrastructure-provisioning/terraform/aws/computational_resources/main/main.tf b/infrastructure-provisioning/terraform/aws/computational_resources/main/main.tf
index dc64e32..1fb08e5 100644
--- a/infrastructure-provisioning/terraform/aws/computational_resources/main/main.tf
+++ b/infrastructure-provisioning/terraform/aws/computational_resources/main/main.tf
@@ -1,97 +1,97 @@
 provider "aws" {
-  access_key = "${var.access_key_id}"
-  secret_key = "${var.secret_access_key}"
-  region     = "${var.region}"
+  access_key = var.access_key_id
+  secret_key = var.secret_access_key
+  region     = var.region
 }
 
 module "common" {
   source        = "../modules/common"
-  sbn           = "${var.service_base_name}"
-  project_name  = "${var.project_name}"
-  project_tag   = "${var.project_tag}"
-  endpoint_tag  = "${var.endpoint_tag}"
-  user_tag      = "${var.user_tag}"
-  custom_tag    = "${var.custom_tag}"
-  notebook_name = "${var.notebook_name}"
-  region        = "${var.region}"
-  zone          = "${var.zone}"
-  product       = "${var.product_name}"
-  vpc           = "${var.vpc_id}"
-  cidr_range    = "${var.cidr_range}"
-  traefik_cidr  = "${var.traefik_cidr}"
-  instance_type = "${var.instance_type}"
+  sbn           = var.service_base_name
+  project_name  = var.project_name
+  project_tag   = var.project_tag
+  endpoint_tag  = var.endpoint_tag
+  user_tag      = var.user_tag
+  custom_tag    = var.custom_tag
+  notebook_name = var.notebook_name
+  region        = var.region
+  zone          = var.zone
+  product       = var.product_name
+  vpc           = var.vpc_id
+  cidr_range    = var.cidr_range
+  traefik_cidr  = var.traefik_cidr
+  instance_type = var.instance_type
 }
 
 module "notebook" {
   source           = "../modules/notebook"
-  sbn              = "${var.service_base_name}"
-  project_name     = "${var.project_name}"
-  project_tag      = "${var.project_tag}"
-  endpoint_tag     = "${var.endpoint_tag}"
-  user_tag         = "${var.user_tag}"
-  custom_tag       = "${var.custom_tag}"
-  notebook_name    = "${var.notebook_name}"
-  subnet_id        = "${var.subnet_id}"
-  nb-sg_id         = "${var.nb-sg_id}"
-  iam_profile_name = "${var.iam_profile_name}"
-  product          = "${var.product_name}"
-  ami              = "${var.ami}"
-  instance_type    = "${var.instance_type}"
-  key_name         = "${var.key_name}"
+  sbn              = var.service_base_name
+  project_name     = var.project_name
+  project_tag      = var.project_tag
+  endpoint_tag     = var.endpoint_tag
+  user_tag         = var.user_tag
+  custom_tag       = var.custom_tag
+  notebook_name    = var.notebook_name
+  subnet_id        = var.subnet_id
+  nb-sg_id         = var.nb-sg_id
+  iam_profile_name = var.iam_profile_name
+  product          = var.product_name
+  ami              = var.ami
+  instance_type    = var.instance_type
+  key_name         = var.key_name
 }
 
 module "data_engine" {
   source           = "../modules/data_engine"
-  sbn              = "${var.service_base_name}"
-  project_name     = "${var.project_name}"
-  project_tag      = "${var.project_tag}"
-  endpoint_tag     = "${var.endpoint_tag}"
-  user_tag         = "${var.user_tag}"
-  custom_tag       = "${var.custom_tag}"
-  notebook_name    = "${var.notebook_name}"
-  subnet_id        = "${var.subnet_id}"
-  nb-sg_id         = "${var.nb-sg_id}"
-  iam_profile_name = "${var.iam_profile_name}"
-  product          = "${var.product_name}"
-  ami              = "${var.ami}"
-  instance_type    = "${var.instance_type}"
-  key_name         = "${var.key_name}"
-  cluster_name     = "${var.cluster_name}"
-  slave_count      = "${var.slave_count}"
+  sbn              = var.service_base_name
+  project_name     = var.project_name
+  project_tag      = var.project_tag
+  endpoint_tag     = var.endpoint_tag
+  user_tag         = var.user_tag
+  custom_tag       = var.custom_tag
+  notebook_name    = var.notebook_name
+  subnet_id        = var.subnet_id
+  nb-sg_id         = var.nb-sg_id
+  iam_profile_name = var.iam_profile_name
+  product          = var.product_name
+  ami              = var.ami
+  instance_type    = var.instance_type
+  key_name         = var.key_name
+  cluster_name     = var.cluster_name
+  slave_count      = var.slave_count
 }
 
 module "emr" {
   source           = "../modules/emr"
-  sbn              = "${var.service_base_name}"
-  project_name     = "${var.project_name}"
-  project_tag      = "${var.project_tag}"
-  endpoint_tag     = "${var.endpoint_tag}"
-  user_tag         = "${var.user_tag}"
-  custom_tag       = "${var.custom_tag}"
-  notebook_name    = "${var.notebook_name}"
-  subnet_id        = "${var.subnet_id}"
-  nb-sg_id         = "${var.nb-sg_id}"
-  iam_profile_name = "${var.iam_profile_name}"
-  product          = "${var.product_name}"
-  ami              = "${var.ami}"
-  emr_template     = "${var.emr_template}"
-  master_shape     = "${var.master_shape}"
-  slave_shape      = "${var.slave_shape}"
-  key_name         = "${var.key_name}"
-  cluster_name     = "${var.cluster_name}"
-  instance_count   = "${var.instance_count}"
-  bid_price        = "${var.bid_price}"
+  sbn              = var.service_base_name
+  project_name     = var.project_name
+  project_tag      = var.project_tag
+  endpoint_tag     = var.endpoint_tag
+  user_tag         = var.user_tag
+  custom_tag       = var.custom_tag
+  notebook_name    = var.notebook_name
+  subnet_id        = var.subnet_id
+  nb-sg_id         = var.nb-sg_id
+  iam_profile_name = var.iam_profile_name
+  product          = var.product_name
+  ami              = var.ami
+  emr_template     = var.emr_template
+  master_shape     = var.master_shape
+  slave_shape      = var.slave_shape
+  key_name         = var.key_name
+  cluster_name     = var.cluster_name
+  instance_count   = var.instance_count
+  bid_price        = var.bid_price
 }
 
 module "ami" {
   source             = "../modules/ami"
-  sbn                = "${var.service_base_name}"
-  project_name       = "${var.project_name}"
-  source_instance_id = "${var.source_instance_id}"
-  project_tag        = "${var.project_tag}"
-  notebook_name      = "${var.notebook_name}"
-  product            = "${var.product_name}"
-  endpoint_tag       = "${var.endpoint_tag}"
-  user_tag           = "${var.user_tag}"
-  custom_tag         = "${var.custom_tag}"
+  sbn                = var.service_base_name
+  project_name       = var.project_name
+  source_instance_id = var.source_instance_id
+  project_tag        = var.project_tag
+  notebook_name      = var.notebook_name
+  product            = var.product_name
+  endpoint_tag       = var.endpoint_tag
+  user_tag           = var.user_tag
+  custom_tag         = var.custom_tag
 }
\ No newline at end of file
diff --git a/infrastructure-provisioning/terraform/aws/computational_resources/modules/ami/ami.tf b/infrastructure-provisioning/terraform/aws/computational_resources/modules/ami/ami.tf
index 30d150f..1c7117f 100644
--- a/infrastructure-provisioning/terraform/aws/computational_resources/modules/ami/ami.tf
+++ b/infrastructure-provisioning/terraform/aws/computational_resources/modules/ami/ami.tf
@@ -25,16 +25,16 @@ locals {
 
 resource "aws_ami_from_instance" "ami" {
   name               = "${var.project_tag}-${var.notebook_name}-ami"
-  source_instance_id = "${var.source_instance_id}"
+  source_instance_id = var.source_instance_id
   tags {
-    Name             = "${local.ami_name}"
-    "${var.sbn}-Tag" = "${local.ami_name}"
-    Product          = "${var.product}"
-    Project_name     = "${var.project_name}"
-    Project_tag      = "${var.project_tag}"
-    Endpoint_tag     = "${var.endpoint_tag}"
+    Name             = local.ami_name
+    "${var.sbn}-Tag" = local.ami_name
+    Product          = var.product
+    Project_name     = var.project_name
+    Project_tag      = var.project_tag
+    Endpoint_tag     = var.endpoint_tag
     "user:tag"       = "${var.sbn}:${local.ami_name}"
-    User_tag         = "${var.user_tag}"
-    Custom_tag       = "${var.custom_tag}"
+    User_tag         = var.user_tag
+    Custom_tag       = var.custom_tag
   }
 }
\ No newline at end of file
diff --git a/infrastructure-provisioning/terraform/aws/computational_resources/modules/common/iam.tf b/infrastructure-provisioning/terraform/aws/computational_resources/modules/common/iam.tf
index dff7f3f..6624f30 100644
--- a/infrastructure-provisioning/terraform/aws/computational_resources/modules/common/iam.tf
+++ b/infrastructure-provisioning/terraform/aws/computational_resources/modules/common/iam.tf
@@ -26,7 +26,7 @@ locals {
 }
 
 resource "aws_iam_role" "nb_de_role" {
-  name               = "${local.role_name}"
+  name               = local.role_name
   assume_role_policy = <<EOF
 {
   "Version": "2012-10-17",
@@ -44,26 +44,26 @@ resource "aws_iam_role" "nb_de_role" {
 EOF
 
   tags = {
-    Name            = "${local.role_name}"
-    Environment_tag = "${var.sbn}"
-    "${var.sbn}-Tag" = "${local.role_name}"
-    Product          = "${var.product}"
-    Project_name     = "${var.project_name}"
-    Project_tag      = "${var.project_tag}"
-    Endpoint_tag     = "${var.endpoint_tag}"
+    Name             = local.role_name
+    Environment_tag  = var.sbn
+    "${var.sbn}-Tag" = local.role_name
+    Product          = var.product
+    Project_name     = var.project_name
+    Project_tag      = var.project_tag
+    Endpoint_tag     = var.endpoint_tag
     "user:tag"       = "${var.sbn}:${local.role_name}"
-    User_tag         = "${var.user_tag}"
-    Custom_tag       = "${var.custom_tag}"
+    User_tag         = var.user_tag
+    Custom_tag       = var.custom_tag
   }
 }
 
 resource "aws_iam_instance_profile" "nb_profile" {
-  name = "${local.role_profile}"
-  role = "${aws_iam_role.nb_de_role.name}"
+  name = local.role_profile
+  role = aws_iam_role.nb_de_role.name
 }
 
 resource "aws_iam_policy" "strict_S3_policy" {
-  name = "${local.policy_name}"
+  name = local.policy_name
   description = "Strict Bucket only policy"
   policy = <<EOF
 {
@@ -113,6 +113,6 @@ EOF
 }
 
 resource "aws_iam_role_policy_attachment" "strict_S3_policy-attach" {
-  role       = "${aws_iam_role.nb_de_role.name}"
-  policy_arn = "${aws_iam_policy.strict_S3_policy.arn}"
+  role       = aws_iam_role.nb_de_role.name
+  policy_arn = aws_iam_policy.strict_S3_policy.arn
 }
\ No newline at end of file
diff --git a/infrastructure-provisioning/terraform/aws/computational_resources/modules/common/network.tf b/infrastructure-provisioning/terraform/aws/computational_resources/modules/common/network.tf
index 7c9b713..297cf28 100644
--- a/infrastructure-provisioning/terraform/aws/computational_resources/modules/common/network.tf
+++ b/infrastructure-provisioning/terraform/aws/computational_resources/modules/common/network.tf
@@ -25,25 +25,25 @@ locals {
 }
 
 resource "aws_subnet" "subnet" {
-  vpc_id     = "${var.vpc}"
-  cidr_block = "${var.cidr_range}"
+  vpc_id     = var.vpc
+  cidr_block = var.cidr_range
 
   tags = {
-    Name             = "${local.subnet_name}"
-    "${var.sbn}-Tag" = "${local.subnet_name}"
-    Product          = "${var.product}"
-    Project_name     = "${var.project_name}"
-    Project_tag      = "${var.project_tag}"
-    Endpoint_tag     = "${var.endpoint_tag}"
+    Name             = local.subnet_name
+    "${var.sbn}-Tag" = local.subnet_name
+    Product          = var.product
+    Project_name     = var.project_name
+    Project_tag      = var.project_tag
+    Endpoint_tag     = var.endpoint_tag
     "user:tag"       = "${var.sbn}:${local.subnet_name}"
-    User_tag         = "${var.user_tag}"
-    Custom_tag       = "${var.custom_tag}"
+    User_tag         = var.user_tag
+    Custom_tag       = var.custom_tag
   }
 }
 
 resource "aws_security_group" "nb-sg" {
-  name   = "${local.sg_name}"
-  vpc_id = "${var.vpc}"
+  name   = local.sg_name
+  vpc_id = var.vpc
 
   ingress {
     from_port   = 0
@@ -67,14 +67,14 @@ resource "aws_security_group" "nb-sg" {
   }
 
   tags = {
-    Name             = "${local.sg_name}"
-    "${var.sbn}-Tag" = "${local.sg_name}"
-    Product          = "${var.product}"
-    Project_name     = "${var.project_name}"
-    Project_tag      = "${var.project_tag}"
-    Endpoint_tag     = "${var.endpoint_tag}"
+    Name             = local.sg_name
+    "${var.sbn}-Tag" = local.sg_name
+    Product          = var.product
+    Project_name     = var.project_name
+    Project_tag      = var.project_tag
+    Endpoint_tag     = var.endpoint_tag
     "user:tag"       = "${var.sbn}:${local.sg_name}"
-    User_tag         = "${var.user_tag}"
-    Custom_tag       = "${var.custom_tag}"
+    User_tag         = var.user_tag
+    Custom_tag       = var.custom_tag
   }
 }
\ No newline at end of file
diff --git a/infrastructure-provisioning/terraform/aws/computational_resources/modules/data_engine/instance.tf b/infrastructure-provisioning/terraform/aws/computational_resources/modules/data_engine/instance.tf
index 6d7d3fe..7601e35 100644
--- a/infrastructure-provisioning/terraform/aws/computational_resources/modules/data_engine/instance.tf
+++ b/infrastructure-provisioning/terraform/aws/computational_resources/modules/data_engine/instance.tf
@@ -25,47 +25,47 @@ locals {
 }
 
 resource "aws_instance" "master" {
-  ami                  = "${var.ami}"
-  instance_type        = "${var.instance_type}"
-  key_name             = "${var.key_name}"
-  subnet_id            = "${var.subnet_id}"
+  ami                  = var.ami
+  instance_type        = var.instance_type
+  key_name             = var.key_name
+  subnet_id            = var.subnet_id
   security_groups      = ["${var.nb-sg_id}"]
-  iam_instance_profile = "${var.iam_profile_name}"
+  iam_instance_profile = var.iam_profile_name
   tags = {
     Name                     = "${local.cluster_name}-m"
     Type                     = "master"
-    dataengine_notebook_name = "${local.notebook_name}"
+    dataengine_notebook_name = local.notebook_name
     "${var.sbn}-Tag"         = "${local.cluster_name}-m"
-    Product                  = "${var.product}"
-    Project_name             = "${var.project_name}"
-    Project_tag              = "${var.project_tag}"
-    User_tag                 = "${var.user_tag}"
-    Endpoint_Tag             = "${var.endpoint_tag}"
+    Product                  = var.product
+    Project_name             = var.project_name
+    Project_tag              = var.project_tag
+    User_tag                 = var.user_tag
+    Endpoint_Tag             = var.endpoint_tag
     "user:tag"               = "${var.sbn}:${local.cluster_name}"
-    Custom_Tag               = "${var.custom_tag}"
+    Custom_Tag               = var.custom_tag
   }
 }
 
 
 resource "aws_instance" "slave" {
-  count                = "${var.slave_count}"
-  ami                  = "${var.ami}"
-  instance_type        = "${var.instance_type}"
-  key_name             = "${var.key_name}"
-  subnet_id            = "${var.subnet_id}"
+  count                = var.slave_count
+  ami                  = var.ami
+  instance_type        = var.instance_type
+  key_name             = var.key_name
+  subnet_id            = var.subnet_id
   security_groups      = ["${var.nb-sg_id}"]
-  iam_instance_profile = "${var.iam_profile_name}"
+  iam_instance_profile = var.iam_profile_name
   tags = {
     Name                     = "${local.cluster_name}-s${count.index + 1}"
     Type                     = "slave"
-    dataengine_notebook_name = "${local.notebook_name}"
+    dataengine_notebook_name = local.notebook_name
     "${var.sbn}-Tag"         = "${local.cluster_name}-s${count.index + 1}"
-    Product                  = "${var.product}"
-    Project_name             = "${var.project_name}"
-    Project_tag              = "${var.project_tag}"
-    User_tag                 = "${var.user_tag}"
-    Endpoint_Tag             = "${var.endpoint_tag}"
+    Product                  = var.product
+    Project_name             = var.project_name
+    Project_tag              = var.project_tag
+    User_tag                 = var.user_tag
+    Endpoint_Tag             = var.endpoint_tag
     "user:tag"               = "${var.sbn}:${local.cluster_name}"
-    Custom_Tag               = "${var.custom_tag}"
+    Custom_Tag               = var.custom_tag
   }
 }
\ No newline at end of file
diff --git a/infrastructure-provisioning/terraform/aws/computational_resources/modules/emr/instance.tf b/infrastructure-provisioning/terraform/aws/computational_resources/modules/emr/instance.tf
index 630834b..4a03b2d 100644
--- a/infrastructure-provisioning/terraform/aws/computational_resources/modules/emr/instance.tf
+++ b/infrastructure-provisioning/terraform/aws/computational_resources/modules/emr/instance.tf
@@ -25,26 +25,26 @@ locals {
 }
 
 resource "aws_emr_cluster" "cluster" {
-  name          = "${local.cluster_name}"
-  release_label = "${var.emr_template}"
+  name          = local.cluster_name
+  release_label = var.emr_template
   applications  = ["Spark"]
 
   termination_protection            = false
   keep_job_flow_alive_when_no_steps = true
 
   ec2_attributes {
-    subnet_id                         = "${var.subnet_id}"
-    emr_managed_master_security_group = "${var.nb-sg_id}"
-    emr_managed_slave_security_group  = "${var.nb-sg_id}"
+    subnet_id                         = var.subnet_id
+    emr_managed_master_security_group = var.nb-sg_id
+    emr_managed_slave_security_group  = var.nb-sg_id
     instance_profile                  = "arn:aws:iam::203753054073:instance-profile/EMR_EC2_DefaultRole"
   }
 
   master_instance_group {
-    instance_type = "${var.master_shape}"
+    instance_type = var.master_shape
   }
 
   core_instance_group {
-    instance_type  = "${var.slave_shape}"
+    instance_type  = var.slave_shape
     instance_count = "${var.instance_count - 1}"
 
     ebs_config {
@@ -59,17 +59,17 @@ resource "aws_emr_cluster" "cluster" {
   ebs_root_volume_size = 100
 
   tags = {
-    ComputationalName        = "${var.cluster_name}"
-    Name                     = "${local.cluster_name}"
-    Notebook                 = "${local.notebook_name}"
-    Product                  = "${var.product}"
-    "${var.sbn}-Tag"         = "${local.cluster_name}"
-    Project_name             = "${var.project_name}"
-    Project_tag              = "${var.project_tag}"
-    User_tag                 = "${var.user_tag}"
-    Endpoint_Tag             = "${var.endpoint_tag}"
+    ComputationalName        = var.cluster_name
+    Name                     = local.cluster_name
+    Notebook                 = local.notebook_name
+    Product                  = var.product
+    "${var.sbn}-Tag"         = local.cluster_name
+    Project_name             = var.project_name
+    Project_tag              = var.project_tag
+    User_tag                 = var.user_tag
+    Endpoint_Tag             = var.endpoint_tag
     "user:tag"               = "${var.sbn}:${local.cluster_name}"
-    Custom_Tag               = "${var.custom_tag}"
+    Custom_Tag               = var.custom_tag
   }
 
   bootstrap_action {
diff --git a/infrastructure-provisioning/terraform/aws/computational_resources/modules/notebook/instance.tf b/infrastructure-provisioning/terraform/aws/computational_resources/modules/notebook/instance.tf
index 11e8038..374d6da 100644
--- a/infrastructure-provisioning/terraform/aws/computational_resources/modules/notebook/instance.tf
+++ b/infrastructure-provisioning/terraform/aws/computational_resources/modules/notebook/instance.tf
@@ -24,21 +24,21 @@ locals {
 }
 
 resource "aws_instance" "notebook" {
-  ami                  = "${var.ami}"
-  instance_type        = "${var.instance_type}"
-  key_name             = "${var.key_name}"
-  subnet_id            = "${var.subnet_id}"
+  ami                  = var.ami
+  instance_type        = var.instance_type
+  key_name             = var.key_name
+  subnet_id            = var.subnet_id
   security_groups      = ["${var.nb-sg_id}"]
-  iam_instance_profile = "${var.iam_profile_name}"
+  iam_instance_profile = var.iam_profile_name
   tags = {
-    Name             = "${local.node_name}"
-    "${var.sbn}-Tag" = "${local.node_name}"
-    Project_name     = "${var.project_name}"
-    Project_tag      = "${var.project_tag}"
-    Endpoint_Tag     = "${var.endpoint_tag}"
+    Name             = local.node_name
+    "${var.sbn}-Tag" = local.node_name
+    Project_name     = var.project_name
+    Project_tag      = var.project_tag
+    Endpoint_Tag     = var.endpoint_tag
     "user:tag"       = "${var.sbn}:${local.node_name}"
-    Product          = "${var.product}"
-    User_Tag         = "${var.user_tag}"
-    Custom_Tag       = "${var.custom_tag}"
+    Product          = var.product
+    User_Tag         = var.user_tag
+    Custom_Tag       = var.custom_tag
   }
 }
\ No newline at end of file


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@dlab.apache.org
For additional commands, e-mail: commits-help@dlab.apache.org