From 6499d6b33eac71f75eb0b502b486492fc4b49484 Mon Sep 17 00:00:00 2001 From: Yusuke Morimoto Date: Fri, 30 Oct 2020 00:32:37 +0900 Subject: [PATCH 01/22] Rename variables in docker-compose.yml in universal/scalardl module --- modules/universal/scalardl/main.tf | 6 +++--- modules/universal/scalardl/provision/docker-compose.yml | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/modules/universal/scalardl/main.tf b/modules/universal/scalardl/main.tf index 0c5134960..bf9487ea0 100644 --- a/modules/universal/scalardl/main.tf +++ b/modules/universal/scalardl/main.tf @@ -214,9 +214,9 @@ resource "null_resource" "scalardl_container" { inline = [ "cd $HOME/provision", "echo export SCALAR_IMAGE=${local.scalar_image} > env", - "echo export SCALAR_CASSANDRA_HOST=${local.scalar_cassandra_host} >> env", - "echo export SCALAR_CASSANDRA_USERNAME=${var.cassandra_username} >> env", - "echo export SCALAR_CASSANDRA_PASSWORD=${var.cassandra_password} >> env", + "echo export SCALAR_DB_CONTACT_POINTS=${local.scalar_cassandra_host} >> env", + "echo export SCALAR_DB_USERNAME=${var.cassandra_username} >> env", + "echo export SCALAR_DB_PASSWORD=${var.cassandra_password} >> env", "source ./env", "docker-compose up -d", ] diff --git a/modules/universal/scalardl/provision/docker-compose.yml b/modules/universal/scalardl/provision/docker-compose.yml index 5304f081d..da0ce68d9 100644 --- a/modules/universal/scalardl/provision/docker-compose.yml +++ b/modules/universal/scalardl/provision/docker-compose.yml @@ -4,9 +4,9 @@ services: scalar: image: ${SCALAR_IMAGE} environment: - - SCALAR_DB_CONTACT_POINTS=${SCALAR_CASSANDRA_HOST} - - SCALAR_DB_USERNAME=${SCALAR_CASSANDRA_USERNAME} - - SCALAR_DB_PASSWORD=${SCALAR_CASSANDRA_PASSWORD} + - SCALAR_DB_CONTACT_POINTS=${SCALAR_DB_CONTACT_POINTS} + - SCALAR_DB_USERNAME=${SCALAR_DB_USERNAME} + - SCALAR_DB_PASSWORD=${SCALAR_DB_PASSWORD} ports: - 50051:50051 # TODO: SCALAR_PORT - 50052:50052 # TODO: SCALAR_PRIVILEGED_PORT From a34e3b90cea0fee178be151d398807c3b8199ee2 Mon Sep 17 00:00:00 2001 From: Yusuke Morimoto Date: Sat, 31 Oct 2020 01:33:12 +0900 Subject: [PATCH 02/22] Rename variable names in universal/scalardl module --- modules/universal/scalardl/main.tf | 13 ++++++------- modules/universal/scalardl/vars.tf | 22 +++++++++++++--------- 2 files changed, 19 insertions(+), 16 deletions(-) diff --git a/modules/universal/scalardl/main.tf b/modules/universal/scalardl/main.tf index bf9487ea0..c79c1afc2 100644 --- a/modules/universal/scalardl/main.tf +++ b/modules/universal/scalardl/main.tf @@ -1,7 +1,6 @@ locals { - scalar_image = "${var.scalardl_image_name}:${var.scalardl_image_tag}" - image_filename = "${basename(var.scalardl_image_name)}-${var.scalardl_image_tag}.tar.gz" - scalar_cassandra_host = "cassandra-lb.${var.internal_domain}" + scalar_image = "${var.scalardl_image_name}:${var.scalardl_image_tag}" + image_filename = "${basename(var.scalardl_image_name)}-${var.scalardl_image_tag}.tar.gz" schema_loader_image_filename = format("%s%s", replace(basename(var.schema_loader_image), ":", "-"), ".tar.gz") } @@ -190,7 +189,7 @@ resource "null_resource" "scalardl_schema" { provisioner "remote-exec" { inline = [ - "docker run --rm ${var.schema_loader_image} --cassandra -h ${local.scalar_cassandra_host} -u ${var.cassandra_username} -p ${var.cassandra_password} -n NetworkTopologyStrategy -R ${var.replication_factor}" + "docker run --rm ${var.schema_loader_image} --cassandra -h ${var.database_contact_points} -u ${var.database_username} -p ${var.database_password} -n NetworkTopologyStrategy -R ${var.cassandra_replication_factor}" ] } } @@ -214,9 +213,9 @@ resource "null_resource" "scalardl_container" { inline = [ "cd $HOME/provision", "echo export SCALAR_IMAGE=${local.scalar_image} > env", - "echo export SCALAR_DB_CONTACT_POINTS=${local.scalar_cassandra_host} >> env", - "echo export SCALAR_DB_USERNAME=${var.cassandra_username} >> env", - "echo export SCALAR_DB_PASSWORD=${var.cassandra_password} >> env", + "echo export SCALAR_DB_CONTACT_POINTS=${var.database_contact_points} >> env", + "echo export SCALAR_DB_USERNAME=${var.database_username} >> env", + "echo export SCALAR_DB_PASSWORD=${var.database_password} >> env", "source ./env", "docker-compose up -d", ] diff --git a/modules/universal/scalardl/vars.tf b/modules/universal/scalardl/vars.tf index 69c1ce77a..4e091ba4d 100644 --- a/modules/universal/scalardl/vars.tf +++ b/modules/universal/scalardl/vars.tf @@ -37,11 +37,6 @@ variable "scalardl_image_tag" { description = "The docker image tag for Scalar DL" } -variable "replication_factor" { - default = 3 - description = "Set the replication factor for schema" -} - variable "schema_loader_image" { default = "scalarlabs/scalardl-schema-loader:1.1.0" description = "The docker image for the schema loader" @@ -56,10 +51,19 @@ variable "internal_domain" { description = "Internal domain" } -variable "cassandra_username" { - description = "The username of cassandra cluster" +variable "database_contact_points" { + description = "The database contact points" +} + +variable "database_username" { + description = "The database username" +} + +variable "database_password" { + description = "The database password" } -variable "cassandra_password" { - description = "The password of cassandra cluster" +variable "cassandra_replication_factor" { + default = 3 + description = "The replication factor for the Cassandra schema" } From 0edf4d56f6b9f3a91940abfc55bf2856aec80867 Mon Sep 17 00:00:00 2001 From: Yusuke Morimoto Date: Sat, 31 Oct 2020 10:20:23 +0900 Subject: [PATCH 03/22] Rename variables related to Cassandra in scalardl modules --- examples/aws/scalardl/example.tfvars | 6 +++--- examples/azure/scalardl/example.tfvars | 6 +++--- modules/aws/scalardl/cluster/main.tf | 13 +++++++------ modules/aws/scalardl/cluster/vars.tf | 26 +++++++++++++------------- modules/aws/scalardl/locals.tf | 6 +++--- modules/aws/scalardl/scalardl.tf | 12 ++++++------ modules/azure/scalardl/cluster/main.tf | 13 +++++++------ modules/azure/scalardl/cluster/vars.tf | 18 +++++++++--------- modules/azure/scalardl/locals.tf | 7 +++---- modules/azure/scalardl/scalardl.tf | 12 ++++++------ 10 files changed, 60 insertions(+), 59 deletions(-) diff --git a/examples/aws/scalardl/example.tfvars b/examples/aws/scalardl/example.tfvars index ff82fbc3c..2617db8d6 100644 --- a/examples/aws/scalardl/example.tfvars +++ b/examples/aws/scalardl/example.tfvars @@ -11,12 +11,12 @@ scalardl = { # blue_discoverable_by_envoy = "true" # green_resource_count = "0" # green_image_tag = "2.0.7" - # replication_factor = "3" # green_image_name = "scalarlabs/scalar-ledger" # green_discoverable_by_envoy = "false" # enable_tdagent = "true" - # cassandra_username = "" - # cassandra_password = "" + # database_username = "cassandra" + # database_password = "cassandra" + # replication_factor = "3" } envoy = { diff --git a/examples/azure/scalardl/example.tfvars b/examples/azure/scalardl/example.tfvars index 0b04d1c6b..1f77cb16f 100644 --- a/examples/azure/scalardl/example.tfvars +++ b/examples/azure/scalardl/example.tfvars @@ -10,13 +10,13 @@ scalardl = { # blue_enable_accelerated_networking = "false" # green_resource_count = "0" # green_image_tag = "2.0.7" - # replication_factor = "3" # green_image_name = "scalarlabs/scalar-ledger" # green_discoverable_by_envoy = "false" # green_enable_accelerated_networking = "false" # enable_tdagent = "true" - # cassandra_username = "cassandra" - # cassandra_password = "cassandra" + # database_username = "cassandra" + # database_password = "cassandra" + # replication_factor = "3" } envoy = { diff --git a/modules/aws/scalardl/cluster/main.tf b/modules/aws/scalardl/cluster/main.tf index 68f0f8c6d..76ea2521b 100644 --- a/modules/aws/scalardl/cluster/main.tf +++ b/modules/aws/scalardl/cluster/main.tf @@ -53,10 +53,11 @@ module "scalardl_provision" { provision_count = var.resource_count enable_tdagent = var.enable_tdagent - scalardl_image_name = var.scalardl_image_name - scalardl_image_tag = var.scalardl_image_tag - replication_factor = var.replication_factor - internal_domain = var.internal_domain - cassandra_username = var.cassandra_username - cassandra_password = var.cassandra_password + scalardl_image_name = var.scalardl_image_name + scalardl_image_tag = var.scalardl_image_tag + internal_domain = var.internal_domain + database_contact_points = "cassandra-lb.${var.internal_domain}" # TODO: add to variables + database_username = var.database_username + database_password = var.database_password + replication_factor = var.replication_factor } diff --git a/modules/aws/scalardl/cluster/vars.tf b/modules/aws/scalardl/cluster/vars.tf index 4cffc736a..36ff589f2 100644 --- a/modules/aws/scalardl/cluster/vars.tf +++ b/modules/aws/scalardl/cluster/vars.tf @@ -64,11 +64,6 @@ variable "scalardl_image_tag" { description = "The docker image tag for Scalar DL" } -variable "replication_factor" { - default = 3 - description = "Set the replication factor for schema" -} - variable "enable_tdagent" { default = true description = "A flag to install td-agent that forwards logs to the monitor host" @@ -78,16 +73,21 @@ variable "internal_domain" { description = "Internal domain" } -variable "custom_tags" { - type = map(string) - default = {} - description = "The map of custom tags" +variable "database_username" { + description = "The database username" } -variable "cassandra_username" { - description = "The username of cassandra cluster" +variable "database_password" { + description = "The database password" } -variable "cassandra_password" { - description = "The password of cassandra cluster" +variable "replication_factor" { + default = 3 + description = "The replication factor for the Cassandra schema" +} + +variable "custom_tags" { + type = map(string) + default = {} + description = "The map of custom tags" } diff --git a/modules/aws/scalardl/locals.tf b/modules/aws/scalardl/locals.tf index 0629b632b..92495378b 100644 --- a/modules/aws/scalardl/locals.tf +++ b/modules/aws/scalardl/locals.tf @@ -30,7 +30,6 @@ locals { blue_discoverable_by_envoy = true green_resource_count = 0 green_image_tag = "2.0.7" - replication_factor = 3 green_image_name = "scalarlabs/scalar-ledger" green_discoverable_by_envoy = false target_port = 50051 @@ -38,8 +37,9 @@ locals { listen_port = 50051 privileged_listen_port = 50052 enable_tdagent = true - cassandra_username = "cassandra" - cassandra_password = "cassandra" + database_username = "cassandra" + database_password = "cassandra" + replication_factor = 3 } } diff --git a/modules/aws/scalardl/scalardl.tf b/modules/aws/scalardl/scalardl.tf index f17e0ef32..c90f7b7d2 100644 --- a/modules/aws/scalardl/scalardl.tf +++ b/modules/aws/scalardl/scalardl.tf @@ -17,12 +17,12 @@ module "scalardl_blue" { network_dns = local.network_dns scalardl_image_name = local.scalardl.blue_image_name scalardl_image_tag = local.scalardl.blue_image_tag - replication_factor = local.scalardl.replication_factor enable_tdagent = local.scalardl.enable_tdagent internal_domain = local.internal_domain + database_username = local.scalardl.database_username + database_password = local.scalardl.database_password + replication_factor = local.scalardl.replication_factor custom_tags = var.custom_tags - cassandra_username = local.scalardl.cassandra_username - cassandra_password = local.scalardl.cassandra_password } module "scalardl_green" { @@ -44,12 +44,12 @@ module "scalardl_green" { network_dns = local.network_dns scalardl_image_name = local.scalardl.green_image_name scalardl_image_tag = local.scalardl.green_image_tag - replication_factor = local.scalardl.replication_factor enable_tdagent = local.scalardl.enable_tdagent internal_domain = local.internal_domain + database_username = local.scalardl.database_username + database_password = local.scalardl.database_password + replication_factor = local.scalardl.replication_factor custom_tags = var.custom_tags - cassandra_username = local.scalardl.cassandra_username - cassandra_password = local.scalardl.cassandra_password } resource "aws_security_group" "scalardl" { diff --git a/modules/azure/scalardl/cluster/main.tf b/modules/azure/scalardl/cluster/main.tf index 80ac5515b..d617f7b2a 100644 --- a/modules/azure/scalardl/cluster/main.tf +++ b/modules/azure/scalardl/cluster/main.tf @@ -29,11 +29,12 @@ module "scalardl_provision" { private_key_path = var.private_key_path provision_count = var.resource_count enable_tdagent = var.enable_tdagent - internal_domain = var.internal_domain - scalardl_image_name = var.scalardl_image_name - scalardl_image_tag = var.scalardl_image_tag - replication_factor = var.replication_factor - cassandra_username = var.cassandra_username - cassandra_password = var.cassandra_password + scalardl_image_name = var.scalardl_image_name + scalardl_image_tag = var.scalardl_image_tag + internal_domain = var.internal_domain + database_contact_points = "cassandra-lb.${var.internal_domain}" # TODO: add to variables + database_username = var.database_username + database_password = var.database_password + replication_factor = var.replication_factor } diff --git a/modules/azure/scalardl/cluster/vars.tf b/modules/azure/scalardl/cluster/vars.tf index 3d42a54cd..635492bfd 100644 --- a/modules/azure/scalardl/cluster/vars.tf +++ b/modules/azure/scalardl/cluster/vars.tf @@ -68,11 +68,6 @@ variable "scalardl_image_tag" { description = "The docker image tag for Scalar DL" } -variable "replication_factor" { - default = 3 - description = "Set the replication factor for schema" -} - variable "availability_set_id" { default = "" } @@ -86,12 +81,17 @@ variable "internal_domain" { description = "Internal domain" } -variable "cassandra_username" { - description = "The username of cassandra cluster" +variable "database_username" { + description = "The database username" } -variable "cassandra_password" { - description = "The password of cassandra cluster" +variable "database_password" { + description = "The database password" +} + +variable "replication_factor" { + default = 3 + description = "The replication factor for the Cassandra schema" } variable "enable_accelerated_networking" { diff --git a/modules/azure/scalardl/locals.tf b/modules/azure/scalardl/locals.tf index a6aa5d4c9..204a88525 100644 --- a/modules/azure/scalardl/locals.tf +++ b/modules/azure/scalardl/locals.tf @@ -29,15 +29,14 @@ locals { blue_enable_accelerated_networking = false green_resource_count = 0 green_image_tag = "2.0.7" - replication_factor = 3 green_image_name = "scalarlabs/scalar-ledger" green_subnet_id = var.network.green_subnet_id green_discoverable_by_envoy = false green_enable_accelerated_networking = false enable_tdagent = true - cassandra_username = "cassandra" - cassandra_password = "cassandra" - + database_username = "cassandra" + database_password = "cassandra" + replication_factor = 3 } } diff --git a/modules/azure/scalardl/scalardl.tf b/modules/azure/scalardl/scalardl.tf index a040399e9..66182d5b3 100644 --- a/modules/azure/scalardl/scalardl.tf +++ b/modules/azure/scalardl/scalardl.tf @@ -25,12 +25,12 @@ module "scalardl_blue" { network_dns = local.network_dns scalardl_image_name = local.scalardl.blue_image_name scalardl_image_tag = local.scalardl.blue_image_tag - replication_factor = local.scalardl.replication_factor enable_tdagent = local.scalardl.enable_tdagent availability_set_id = azurerm_availability_set.scalar_availability_set.id internal_domain = local.internal_domain - cassandra_username = local.scalardl.cassandra_username - cassandra_password = local.scalardl.cassandra_password + database_username = local.scalardl.database_username + database_password = local.scalardl.database_password + replication_factor = local.scalardl.replication_factor enable_accelerated_networking = local.scalardl.blue_enable_accelerated_networking } @@ -55,12 +55,12 @@ module "scalardl_green" { network_dns = local.network_dns scalardl_image_name = local.scalardl.green_image_name scalardl_image_tag = local.scalardl.green_image_tag - replication_factor = local.scalardl.replication_factor enable_tdagent = local.scalardl.enable_tdagent availability_set_id = azurerm_availability_set.scalar_availability_set.id internal_domain = local.internal_domain - cassandra_username = local.scalardl.cassandra_username - cassandra_password = local.scalardl.cassandra_password + database_username = local.scalardl.database_username + database_password = local.scalardl.database_password + replication_factor = local.scalardl.replication_factor enable_accelerated_networking = local.scalardl.green_enable_accelerated_networking } From 63351b59c15b457fd2f4226903bc4b89b6402075 Mon Sep 17 00:00:00 2001 From: Yusuke Morimoto Date: Sat, 31 Oct 2020 23:53:14 +0900 Subject: [PATCH 04/22] Rename replication_factor to cassandra_replication_factor --- examples/aws/scalardl/example.tfvars | 28 ++++---- examples/azure/scalardl/example.tfvars | 2 +- modules/aws/monitor/locals.tf | 2 +- modules/aws/scalardl/cluster/main.tf | 14 ++-- modules/aws/scalardl/cluster/vars.tf | 2 +- modules/aws/scalardl/locals.tf | 36 +++++------ modules/aws/scalardl/output.tf | 2 +- modules/aws/scalardl/scalardl.tf | 88 +++++++++++++------------- modules/azure/monitor/locals.tf | 2 +- modules/azure/scalardl/cluster/main.tf | 14 ++-- modules/azure/scalardl/cluster/vars.tf | 2 +- modules/azure/scalardl/locals.tf | 2 +- modules/azure/scalardl/output.tf | 2 +- modules/azure/scalardl/scalardl.tf | 4 +- 14 files changed, 100 insertions(+), 100 deletions(-) diff --git a/examples/aws/scalardl/example.tfvars b/examples/aws/scalardl/example.tfvars index 2617db8d6..a2ffb3bbf 100644 --- a/examples/aws/scalardl/example.tfvars +++ b/examples/aws/scalardl/example.tfvars @@ -3,20 +3,20 @@ region = "ap-northeast-1" base = "default" # bai, chiku, sho scalardl = { - # resource_type = "t3.medium" - # resource_root_volume_size = "64" - # blue_resource_count = "3" - # blue_image_tag = "2.0.7" - # blue_image_name = "scalarlabs/scalar-ledger" - # blue_discoverable_by_envoy = "true" - # green_resource_count = "0" - # green_image_tag = "2.0.7" - # green_image_name = "scalarlabs/scalar-ledger" - # green_discoverable_by_envoy = "false" - # enable_tdagent = "true" - # database_username = "cassandra" - # database_password = "cassandra" - # replication_factor = "3" + # resource_type = "t3.medium" + # resource_root_volume_size = "64" + # blue_resource_count = "3" + # blue_image_tag = "2.0.7" + # blue_image_name = "scalarlabs/scalar-ledger" + # blue_discoverable_by_envoy = "true" + # green_resource_count = "0" + # green_image_tag = "2.0.7" + # green_image_name = "scalarlabs/scalar-ledger" + # green_discoverable_by_envoy = "false" + # enable_tdagent = "true" + # database_username = "cassandra" + # database_password = "cassandra" + # cassandra_replication_factor = "3" } envoy = { diff --git a/examples/azure/scalardl/example.tfvars b/examples/azure/scalardl/example.tfvars index 1f77cb16f..61036ab30 100644 --- a/examples/azure/scalardl/example.tfvars +++ b/examples/azure/scalardl/example.tfvars @@ -16,7 +16,7 @@ scalardl = { # enable_tdagent = "true" # database_username = "cassandra" # database_password = "cassandra" - # replication_factor = "3" + # cassandra_replication_factor = "3" } envoy = { diff --git a/modules/aws/monitor/locals.tf b/modules/aws/monitor/locals.tf index 74555daf7..c188fb311 100644 --- a/modules/aws/monitor/locals.tf +++ b/modules/aws/monitor/locals.tf @@ -18,7 +18,7 @@ locals { cassandra_resource_count = lookup(var.cassandra, "resource_count", 0) scalardl_blue_resource_count = lookup(var.scalardl, "blue_resource_count", 0) scalardl_green_resource_count = lookup(var.scalardl, "green_resource_count", 0) - scalardl_replication_factor = lookup(var.scalardl, "replication_factor", 0) + scalardl_replication_factor = lookup(var.scalardl, "cassandra_replication_factor", 0) } ### default diff --git a/modules/aws/scalardl/cluster/main.tf b/modules/aws/scalardl/cluster/main.tf index 76ea2521b..2c7a1a7b6 100644 --- a/modules/aws/scalardl/cluster/main.tf +++ b/modules/aws/scalardl/cluster/main.tf @@ -53,11 +53,11 @@ module "scalardl_provision" { provision_count = var.resource_count enable_tdagent = var.enable_tdagent - scalardl_image_name = var.scalardl_image_name - scalardl_image_tag = var.scalardl_image_tag - internal_domain = var.internal_domain - database_contact_points = "cassandra-lb.${var.internal_domain}" # TODO: add to variables - database_username = var.database_username - database_password = var.database_password - replication_factor = var.replication_factor + scalardl_image_name = var.scalardl_image_name + scalardl_image_tag = var.scalardl_image_tag + internal_domain = var.internal_domain + database_contact_points = "cassandra-lb.${var.internal_domain}" # TODO: add to variables + database_username = var.database_username + database_password = var.database_password + cassandra_replication_factor = var.cassandra_replication_factor } diff --git a/modules/aws/scalardl/cluster/vars.tf b/modules/aws/scalardl/cluster/vars.tf index 36ff589f2..b619b4b93 100644 --- a/modules/aws/scalardl/cluster/vars.tf +++ b/modules/aws/scalardl/cluster/vars.tf @@ -81,7 +81,7 @@ variable "database_password" { description = "The database password" } -variable "replication_factor" { +variable "cassandra_replication_factor" { default = 3 description = "The replication factor for the Cassandra schema" } diff --git a/modules/aws/scalardl/locals.tf b/modules/aws/scalardl/locals.tf index 92495378b..966f72d38 100644 --- a/modules/aws/scalardl/locals.tf +++ b/modules/aws/scalardl/locals.tf @@ -22,24 +22,24 @@ locals { ### default locals { scalardl_default = { - resource_type = "t3.medium" - resource_root_volume_size = 64 - blue_resource_count = 3 - blue_image_tag = "2.0.7" - blue_image_name = "scalarlabs/scalar-ledger" - blue_discoverable_by_envoy = true - green_resource_count = 0 - green_image_tag = "2.0.7" - green_image_name = "scalarlabs/scalar-ledger" - green_discoverable_by_envoy = false - target_port = 50051 - privileged_target_port = 50052 - listen_port = 50051 - privileged_listen_port = 50052 - enable_tdagent = true - database_username = "cassandra" - database_password = "cassandra" - replication_factor = 3 + resource_type = "t3.medium" + resource_root_volume_size = 64 + blue_resource_count = 3 + blue_image_tag = "2.0.7" + blue_image_name = "scalarlabs/scalar-ledger" + blue_discoverable_by_envoy = true + green_resource_count = 0 + green_image_tag = "2.0.7" + green_image_name = "scalarlabs/scalar-ledger" + green_discoverable_by_envoy = false + target_port = 50051 + privileged_target_port = 50052 + listen_port = 50051 + privileged_listen_port = 50052 + enable_tdagent = true + database_username = "cassandra" + database_password = "cassandra" + cassandra_replication_factor = 3 } } diff --git a/modules/aws/scalardl/output.tf b/modules/aws/scalardl/output.tf index da2ce2642..7b6146895 100644 --- a/modules/aws/scalardl/output.tf +++ b/modules/aws/scalardl/output.tf @@ -34,7 +34,7 @@ output "scalardl_green_resource_count" { } output "scalardl_replication_factor" { - value = local.scalardl.replication_factor + value = local.scalardl.cassandra_replication_factor description = "The replication factor for the schema of scalardl." } diff --git a/modules/aws/scalardl/scalardl.tf b/modules/aws/scalardl/scalardl.tf index c90f7b7d2..1c1e204d0 100644 --- a/modules/aws/scalardl/scalardl.tf +++ b/modules/aws/scalardl/scalardl.tf @@ -1,55 +1,55 @@ module "scalardl_blue" { source = "./cluster" - security_group_ids = aws_security_group.scalardl.*.id - bastion_ip = local.bastion_ip - network_name = local.network_name - resource_type = local.scalardl.resource_type - resource_count = local.scalardl.blue_resource_count - resource_cluster_name = "blue" - resource_root_volume_size = local.scalardl.resource_root_volume_size - triggers = local.triggers - private_key_path = local.private_key_path - user_name = local.user_name - subnet_ids = local.blue_subnet_ids - image_id = local.image_id - key_name = local.key_name - network_dns = local.network_dns - scalardl_image_name = local.scalardl.blue_image_name - scalardl_image_tag = local.scalardl.blue_image_tag - enable_tdagent = local.scalardl.enable_tdagent - internal_domain = local.internal_domain - database_username = local.scalardl.database_username - database_password = local.scalardl.database_password - replication_factor = local.scalardl.replication_factor - custom_tags = var.custom_tags + security_group_ids = aws_security_group.scalardl.*.id + bastion_ip = local.bastion_ip + network_name = local.network_name + resource_type = local.scalardl.resource_type + resource_count = local.scalardl.blue_resource_count + resource_cluster_name = "blue" + resource_root_volume_size = local.scalardl.resource_root_volume_size + triggers = local.triggers + private_key_path = local.private_key_path + user_name = local.user_name + subnet_ids = local.blue_subnet_ids + image_id = local.image_id + key_name = local.key_name + network_dns = local.network_dns + scalardl_image_name = local.scalardl.blue_image_name + scalardl_image_tag = local.scalardl.blue_image_tag + enable_tdagent = local.scalardl.enable_tdagent + internal_domain = local.internal_domain + database_username = local.scalardl.database_username + database_password = local.scalardl.database_password + cassandra_replication_factor = local.scalardl.cassandra_replication_factor + custom_tags = var.custom_tags } module "scalardl_green" { source = "./cluster" - security_group_ids = aws_security_group.scalardl.*.id - bastion_ip = local.bastion_ip - network_name = local.network_name - resource_type = local.scalardl.resource_type - resource_count = local.scalardl.green_resource_count - resource_cluster_name = "green" - resource_root_volume_size = local.scalardl.resource_root_volume_size - triggers = local.triggers - private_key_path = local.private_key_path - user_name = local.user_name - subnet_ids = local.green_subnet_ids - image_id = local.image_id - key_name = local.key_name - network_dns = local.network_dns - scalardl_image_name = local.scalardl.green_image_name - scalardl_image_tag = local.scalardl.green_image_tag - enable_tdagent = local.scalardl.enable_tdagent - internal_domain = local.internal_domain - database_username = local.scalardl.database_username - database_password = local.scalardl.database_password - replication_factor = local.scalardl.replication_factor - custom_tags = var.custom_tags + security_group_ids = aws_security_group.scalardl.*.id + bastion_ip = local.bastion_ip + network_name = local.network_name + resource_type = local.scalardl.resource_type + resource_count = local.scalardl.green_resource_count + resource_cluster_name = "green" + resource_root_volume_size = local.scalardl.resource_root_volume_size + triggers = local.triggers + private_key_path = local.private_key_path + user_name = local.user_name + subnet_ids = local.green_subnet_ids + image_id = local.image_id + key_name = local.key_name + network_dns = local.network_dns + scalardl_image_name = local.scalardl.green_image_name + scalardl_image_tag = local.scalardl.green_image_tag + enable_tdagent = local.scalardl.enable_tdagent + internal_domain = local.internal_domain + database_username = local.scalardl.database_username + database_password = local.scalardl.database_password + cassandra_replication_factor = local.scalardl.cassandra_replication_factor + custom_tags = var.custom_tags } resource "aws_security_group" "scalardl" { diff --git a/modules/azure/monitor/locals.tf b/modules/azure/monitor/locals.tf index 4e213b85c..0ab1ed676 100644 --- a/modules/azure/monitor/locals.tf +++ b/modules/azure/monitor/locals.tf @@ -18,7 +18,7 @@ locals { cassandra_resource_count = lookup(var.cassandra, "resource_count", 0) scalardl_blue_resource_count = lookup(var.scalardl, "blue_resource_count", 0) scalardl_green_resource_count = lookup(var.scalardl, "green_resource_count", 0) - scalardl_replication_factor = lookup(var.scalardl, "replication_factor", 0) + scalardl_replication_factor = lookup(var.scalardl, "cassandra_replication_factor", 0) } ### default diff --git a/modules/azure/scalardl/cluster/main.tf b/modules/azure/scalardl/cluster/main.tf index d617f7b2a..cf40efa8d 100644 --- a/modules/azure/scalardl/cluster/main.tf +++ b/modules/azure/scalardl/cluster/main.tf @@ -30,11 +30,11 @@ module "scalardl_provision" { provision_count = var.resource_count enable_tdagent = var.enable_tdagent - scalardl_image_name = var.scalardl_image_name - scalardl_image_tag = var.scalardl_image_tag - internal_domain = var.internal_domain - database_contact_points = "cassandra-lb.${var.internal_domain}" # TODO: add to variables - database_username = var.database_username - database_password = var.database_password - replication_factor = var.replication_factor + scalardl_image_name = var.scalardl_image_name + scalardl_image_tag = var.scalardl_image_tag + internal_domain = var.internal_domain + database_contact_points = "cassandra-lb.${var.internal_domain}" # TODO: add to variables + database_username = var.database_username + database_password = var.database_password + cassandra_replication_factor = var.cassandra_replication_factor } diff --git a/modules/azure/scalardl/cluster/vars.tf b/modules/azure/scalardl/cluster/vars.tf index 635492bfd..bc7da1aef 100644 --- a/modules/azure/scalardl/cluster/vars.tf +++ b/modules/azure/scalardl/cluster/vars.tf @@ -89,7 +89,7 @@ variable "database_password" { description = "The database password" } -variable "replication_factor" { +variable "cassandra_replication_factor" { default = 3 description = "The replication factor for the Cassandra schema" } diff --git a/modules/azure/scalardl/locals.tf b/modules/azure/scalardl/locals.tf index 204a88525..774dfa5e7 100644 --- a/modules/azure/scalardl/locals.tf +++ b/modules/azure/scalardl/locals.tf @@ -36,7 +36,7 @@ locals { enable_tdagent = true database_username = "cassandra" database_password = "cassandra" - replication_factor = 3 + cassandra_replication_factor = 3 } } diff --git a/modules/azure/scalardl/output.tf b/modules/azure/scalardl/output.tf index fd95c5625..bfb8d44f6 100644 --- a/modules/azure/scalardl/output.tf +++ b/modules/azure/scalardl/output.tf @@ -34,7 +34,7 @@ output "scalardl_green_resource_count" { } output "scalardl_replication_factor" { - value = local.scalardl.replication_factor + value = local.scalardl.cassandra_replication_factor description = "The replication factor for the schema of scalardl." } diff --git a/modules/azure/scalardl/scalardl.tf b/modules/azure/scalardl/scalardl.tf index 66182d5b3..b4fef5552 100644 --- a/modules/azure/scalardl/scalardl.tf +++ b/modules/azure/scalardl/scalardl.tf @@ -30,7 +30,7 @@ module "scalardl_blue" { internal_domain = local.internal_domain database_username = local.scalardl.database_username database_password = local.scalardl.database_password - replication_factor = local.scalardl.replication_factor + cassandra_replication_factor = local.scalardl.cassandra_replication_factor enable_accelerated_networking = local.scalardl.blue_enable_accelerated_networking } @@ -60,7 +60,7 @@ module "scalardl_green" { internal_domain = local.internal_domain database_username = local.scalardl.database_username database_password = local.scalardl.database_password - replication_factor = local.scalardl.replication_factor + cassandra_replication_factor = local.scalardl.cassandra_replication_factor enable_accelerated_networking = local.scalardl.green_enable_accelerated_networking } From e7e6e744cb4d8ef67ccc059f0b56b7d0de49cd9f Mon Sep 17 00:00:00 2001 From: Yusuke Morimoto Date: Fri, 6 Nov 2020 13:17:52 +0900 Subject: [PATCH 05/22] Update READMEs --- modules/aws/scalardl/cluster/README.md | 14 ++++++++++---- modules/azure/scalardl/cluster/README.md | 13 ++++++++----- 2 files changed, 18 insertions(+), 9 deletions(-) diff --git a/modules/aws/scalardl/cluster/README.md b/modules/aws/scalardl/cluster/README.md index 41b05c871..c6cba3859 100644 --- a/modules/aws/scalardl/cluster/README.md +++ b/modules/aws/scalardl/cluster/README.md @@ -1,14 +1,21 @@ # Cluster Module of Scalar DL The Cluster module deploys a Scalar DL cluster. +## Requirements + +| Name | Version | +|------|---------| +| terraform | >= 0.12 | + ## Inputs | Name | Description | Type | Default | Required | -|------|-------------|------|---------|:-----:| +|------|-------------|------|---------|:--------:| | bastion_ip | The IP to bastion host used for provisioning | `any` | n/a | yes | -| cassandra_password | The password of cassandra cluster | `any` | n/a | yes | -| cassandra_username | The username of cassandra cluster | `any` | n/a | yes | +| cassandra_replication_factor | The replication factor for the Cassandra schema | `number` | `3` | no | | custom_tags | The map of custom tags | `map(string)` | `{}` | no | +| database_password | The database password | `any` | n/a | yes | +| database_username | The database username | `any` | n/a | yes | | enable_tdagent | A flag to install td-agent that forwards logs to the monitor host | `bool` | `true` | no | | image_id | The image id to initiate | `any` | n/a | yes | | internal_domain | Internal domain | `any` | n/a | yes | @@ -16,7 +23,6 @@ The Cluster module deploys a Scalar DL cluster. | network_dns | The ID for the internal DNS zone | `any` | n/a | yes | | network_name | The name of the network resources: should be generated by provider/universal/name-generator | `any` | n/a | yes | | private_key_path | The path to the private key for SSH access | `any` | n/a | yes | -| replication_factor | Set the replication factor for schema | `number` | `3` | no | | resource_cluster_name | The name to assign the resource cluster | `any` | n/a | yes | | resource_count | The number of resources to create | `any` | n/a | yes | | resource_root_volume_size | The size of resource root volume size | `any` | n/a | yes | diff --git a/modules/azure/scalardl/cluster/README.md b/modules/azure/scalardl/cluster/README.md index 08484c7f9..6f51f8476 100644 --- a/modules/azure/scalardl/cluster/README.md +++ b/modules/azure/scalardl/cluster/README.md @@ -1,10 +1,11 @@ # Cluster Module of Scalar DL The Cluster module deploys a Scalar DL cluster on Azure. -## Providers +## Requirements | Name | Version | |------|---------| +| terraform | >= 0.12 | | azurerm | =1.38.0 | ## Inputs @@ -13,18 +14,19 @@ The Cluster module deploys a Scalar DL cluster on Azure. |------|-------------|------|---------|:--------:| | availability_set_id | n/a | `string` | `""` | no | | bastion_ip | The IP to bastion host used for provisioning | `any` | n/a | yes | -| cassandra_password | The password of cassandra cluster | `any` | n/a | yes | -| cassandra_username | The username of cassandra cluster | `any` | n/a | yes | +| cassandra_replication_factor | The replication factor for the Cassandra schema | `number` | `3` | no | +| database_password | The database password | `any` | n/a | yes | +| database_username | The database username | `any` | n/a | yes | | enable_accelerated_networking | A flag to enable accelerated networking on network interface | `bool` | `false` | no | | enable_tdagent | A flag to install td-agent that forwards logs to the monitor host | `bool` | `true` | no | | image_id | The image id to initiate | `any` | n/a | yes | | internal_domain | Internal domain | `any` | n/a | yes | -| region | The Azure region to deploy environment | `any` | n/a | yes | +| locations | The Azure availability zones to deploy environment | `list(string)` | n/a | yes | | network_dns | The ID for the internal DNS zone | `any` | n/a | yes | | network_name | The name of the network resources: should be generated by provider/universal/name-generator | `any` | n/a | yes | | private_key_path | The path to the private key for SSH access | `any` | n/a | yes | | public_key_path | The path to the public key for SSH access | `any` | n/a | yes | -| replication_factor | Set the replication factor for schema | `number` | `3` | no | +| region | The Azure region to deploy environment | `any` | n/a | yes | | resource_cluster_name | The name to assign the resource cluster | `any` | n/a | yes | | resource_count | The number of resources to create | `any` | n/a | yes | | resource_root_volume_size | The size of resource root volume size | `any` | n/a | yes | @@ -42,3 +44,4 @@ The Cluster module deploys a Scalar DL cluster on Azure. | network_interface_ids | A list of network interface IDs associated with the VM. | | network_interface_private_ip | A list of private IP addresses assigned to scalardl cluster instances. | | vm_ids | A list of VM IDs of a scalardl cluster. | + From 0471af822724608d80817eb2c3c1fcd1c8f48f82 Mon Sep 17 00:00:00 2001 From: Yusuke Morimoto Date: Sun, 1 Nov 2020 22:02:55 +0900 Subject: [PATCH 06/22] Add datbase variables to universal/scalardl module Add `database` and `database_contact_port` variables to the universal/scalardl module --- modules/universal/scalardl/main.tf | 8 +++++++- modules/universal/scalardl/vars.tf | 15 +++++++++++++++ 2 files changed, 22 insertions(+), 1 deletion(-) diff --git a/modules/universal/scalardl/main.tf b/modules/universal/scalardl/main.tf index c79c1afc2..12da47f1c 100644 --- a/modules/universal/scalardl/main.tf +++ b/modules/universal/scalardl/main.tf @@ -189,7 +189,13 @@ resource "null_resource" "scalardl_schema" { provisioner "remote-exec" { inline = [ - "docker run --rm ${var.schema_loader_image} --cassandra -h ${var.database_contact_points} -u ${var.database_username} -p ${var.database_password} -n NetworkTopologyStrategy -R ${var.cassandra_replication_factor}" + format( + "%s %s", + "docker run --rm ${var.schema_loader_image} -h ${var.database_contact_points} -u ${var.database_username} -p ${var.database_password}", + var.database == "cassandra" ? "--cassandra -P ${var.database_contact_port} -n NetworkTopologyStrategy -R ${var.cassandra_replication_factor}" : + var.database == "dynamo" ? "--dynamo --region ${var.dynamo_region}" : + "" + ) ] } } diff --git a/modules/universal/scalardl/vars.tf b/modules/universal/scalardl/vars.tf index 4e091ba4d..73e393f7d 100644 --- a/modules/universal/scalardl/vars.tf +++ b/modules/universal/scalardl/vars.tf @@ -51,10 +51,20 @@ variable "internal_domain" { description = "Internal domain" } +variable "database" { + default = "cassandra" + description = "The database. This should be \"cassandra\" or \"dynamo\"" +} + variable "database_contact_points" { description = "The database contact points" } +variable "database_contact_port" { + default = 9042 + description = "The database contact port" +} + variable "database_username" { description = "The database username" } @@ -67,3 +77,8 @@ variable "cassandra_replication_factor" { default = 3 description = "The replication factor for the Cassandra schema" } + +variable "dynamo_region" { + default = "" + description = "The AWS region name where DynamoDB tables are created" +} From fa3878271eeef37084c0fa7e346940e286abcc63 Mon Sep 17 00:00:00 2001 From: Yusuke Morimoto Date: Tue, 10 Nov 2020 17:42:52 +0900 Subject: [PATCH 07/22] Add database variables to aws/azure scalardl module --- modules/aws/scalardl/cluster/main.tf | 4 +++- modules/aws/scalardl/cluster/vars.tf | 12 ++++++++++++ modules/aws/scalardl/locals.tf | 3 +++ modules/aws/scalardl/scalardl.tf | 6 ++++++ modules/azure/scalardl/cluster/main.tf | 4 +++- modules/azure/scalardl/cluster/vars.tf | 12 ++++++++++++ modules/azure/scalardl/locals.tf | 3 +++ modules/azure/scalardl/scalardl.tf | 6 ++++++ 8 files changed, 48 insertions(+), 2 deletions(-) diff --git a/modules/aws/scalardl/cluster/main.tf b/modules/aws/scalardl/cluster/main.tf index 2c7a1a7b6..f5ec89dfd 100644 --- a/modules/aws/scalardl/cluster/main.tf +++ b/modules/aws/scalardl/cluster/main.tf @@ -56,7 +56,9 @@ module "scalardl_provision" { scalardl_image_name = var.scalardl_image_name scalardl_image_tag = var.scalardl_image_tag internal_domain = var.internal_domain - database_contact_points = "cassandra-lb.${var.internal_domain}" # TODO: add to variables + database = var.database + database_contact_points = var.database_contact_points + database_contact_port = var.database_contact_port database_username = var.database_username database_password = var.database_password cassandra_replication_factor = var.cassandra_replication_factor diff --git a/modules/aws/scalardl/cluster/vars.tf b/modules/aws/scalardl/cluster/vars.tf index b619b4b93..93b0330e0 100644 --- a/modules/aws/scalardl/cluster/vars.tf +++ b/modules/aws/scalardl/cluster/vars.tf @@ -73,6 +73,18 @@ variable "internal_domain" { description = "Internal domain" } +variable "database" { + description = "The database" +} + +variable "database_contact_points" { + description = "The database contact points" +} + +variable "database_contact_port" { + description = "The database contact port" +} + variable "database_username" { description = "The database username" } diff --git a/modules/aws/scalardl/locals.tf b/modules/aws/scalardl/locals.tf index 966f72d38..0b765da0d 100644 --- a/modules/aws/scalardl/locals.tf +++ b/modules/aws/scalardl/locals.tf @@ -37,6 +37,9 @@ locals { listen_port = 50051 privileged_listen_port = 50052 enable_tdagent = true + database = "cassandra" + database_contact_points = "cassandra-lb.${local.internal_domain}" + database_contact_port = 9042 database_username = "cassandra" database_password = "cassandra" cassandra_replication_factor = 3 diff --git a/modules/aws/scalardl/scalardl.tf b/modules/aws/scalardl/scalardl.tf index 1c1e204d0..64bf67b47 100644 --- a/modules/aws/scalardl/scalardl.tf +++ b/modules/aws/scalardl/scalardl.tf @@ -19,6 +19,9 @@ module "scalardl_blue" { scalardl_image_tag = local.scalardl.blue_image_tag enable_tdagent = local.scalardl.enable_tdagent internal_domain = local.internal_domain + database = local.scalardl.database + database_contact_points = local.scalardl.database_contact_points + database_contact_port = local.scalardl.database_contact_port database_username = local.scalardl.database_username database_password = local.scalardl.database_password cassandra_replication_factor = local.scalardl.cassandra_replication_factor @@ -46,6 +49,9 @@ module "scalardl_green" { scalardl_image_tag = local.scalardl.green_image_tag enable_tdagent = local.scalardl.enable_tdagent internal_domain = local.internal_domain + database = local.scalardl.database + database_contact_points = local.scalardl.database_contact_points + database_contact_port = local.scalardl.database_contact_port database_username = local.scalardl.database_username database_password = local.scalardl.database_password cassandra_replication_factor = local.scalardl.cassandra_replication_factor diff --git a/modules/azure/scalardl/cluster/main.tf b/modules/azure/scalardl/cluster/main.tf index cf40efa8d..01b6ef423 100644 --- a/modules/azure/scalardl/cluster/main.tf +++ b/modules/azure/scalardl/cluster/main.tf @@ -33,7 +33,9 @@ module "scalardl_provision" { scalardl_image_name = var.scalardl_image_name scalardl_image_tag = var.scalardl_image_tag internal_domain = var.internal_domain - database_contact_points = "cassandra-lb.${var.internal_domain}" # TODO: add to variables + database = var.database + database_contact_points = var.database_contact_points + database_contact_port = var.database_contact_port database_username = var.database_username database_password = var.database_password cassandra_replication_factor = var.cassandra_replication_factor diff --git a/modules/azure/scalardl/cluster/vars.tf b/modules/azure/scalardl/cluster/vars.tf index bc7da1aef..15e683d04 100644 --- a/modules/azure/scalardl/cluster/vars.tf +++ b/modules/azure/scalardl/cluster/vars.tf @@ -81,6 +81,18 @@ variable "internal_domain" { description = "Internal domain" } +variable "database" { + description = "The database" +} + +variable "database_contact_points" { + description = "The database contact points" +} + +variable "database_contact_port" { + description = "The database contact port" +} + variable "database_username" { description = "The database username" } diff --git a/modules/azure/scalardl/locals.tf b/modules/azure/scalardl/locals.tf index 774dfa5e7..c30a87351 100644 --- a/modules/azure/scalardl/locals.tf +++ b/modules/azure/scalardl/locals.tf @@ -34,6 +34,9 @@ locals { green_discoverable_by_envoy = false green_enable_accelerated_networking = false enable_tdagent = true + database = "cassandra" + database_contact_points = "cassandra-lb.${local.internal_domain}" + database_contact_port = 9042 database_username = "cassandra" database_password = "cassandra" cassandra_replication_factor = 3 diff --git a/modules/azure/scalardl/scalardl.tf b/modules/azure/scalardl/scalardl.tf index b4fef5552..000e400d0 100644 --- a/modules/azure/scalardl/scalardl.tf +++ b/modules/azure/scalardl/scalardl.tf @@ -28,6 +28,9 @@ module "scalardl_blue" { enable_tdagent = local.scalardl.enable_tdagent availability_set_id = azurerm_availability_set.scalar_availability_set.id internal_domain = local.internal_domain + database = local.scalardl.database + database_contact_points = local.scalardl.database_contact_points + database_contact_port = local.scalardl.database_contact_port database_username = local.scalardl.database_username database_password = local.scalardl.database_password cassandra_replication_factor = local.scalardl.cassandra_replication_factor @@ -58,6 +61,9 @@ module "scalardl_green" { enable_tdagent = local.scalardl.enable_tdagent availability_set_id = azurerm_availability_set.scalar_availability_set.id internal_domain = local.internal_domain + database = local.scalardl.database + database_contact_points = local.scalardl.database_contact_points + database_contact_port = local.scalardl.database_contact_port database_username = local.scalardl.database_username database_password = local.scalardl.database_password cassandra_replication_factor = local.scalardl.cassandra_replication_factor From 5830734987de665ed54c76594f76512346f31408 Mon Sep 17 00:00:00 2001 From: Yusuke Morimoto Date: Tue, 10 Nov 2020 17:58:39 +0900 Subject: [PATCH 08/22] Add default values to example.tfvars --- examples/aws/scalardl/example.tfvars | 3 +++ examples/azure/scalardl/example.tfvars | 3 +++ 2 files changed, 6 insertions(+) diff --git a/examples/aws/scalardl/example.tfvars b/examples/aws/scalardl/example.tfvars index a2ffb3bbf..217a39c9d 100644 --- a/examples/aws/scalardl/example.tfvars +++ b/examples/aws/scalardl/example.tfvars @@ -14,6 +14,9 @@ scalardl = { # green_image_name = "scalarlabs/scalar-ledger" # green_discoverable_by_envoy = "false" # enable_tdagent = "true" + # database = "cassandra" + # database_contact_points = "cassandra-lb.internal.scalar-labs.com" + # database_contact_port = 9042 # database_username = "cassandra" # database_password = "cassandra" # cassandra_replication_factor = "3" diff --git a/examples/azure/scalardl/example.tfvars b/examples/azure/scalardl/example.tfvars index 61036ab30..95627037a 100644 --- a/examples/azure/scalardl/example.tfvars +++ b/examples/azure/scalardl/example.tfvars @@ -14,6 +14,9 @@ scalardl = { # green_discoverable_by_envoy = "false" # green_enable_accelerated_networking = "false" # enable_tdagent = "true" + # database = "cassandra" + # database_contact_points = "cassandra-lb.internal.scalar-labs.com" + # database_contact_port = 9042 # database_username = "cassandra" # database_password = "cassandra" # cassandra_replication_factor = "3" From 9cdc6bbb3823568dc1079e9856ca262a0f8ecfab Mon Sep 17 00:00:00 2001 From: Yusuke Morimoto Date: Thu, 12 Nov 2020 13:01:58 +0900 Subject: [PATCH 09/22] Update READMEs --- modules/aws/scalardl/cluster/README.md | 3 +++ modules/azure/scalardl/cluster/README.md | 3 +++ 2 files changed, 6 insertions(+) diff --git a/modules/aws/scalardl/cluster/README.md b/modules/aws/scalardl/cluster/README.md index c6cba3859..84c4ae825 100644 --- a/modules/aws/scalardl/cluster/README.md +++ b/modules/aws/scalardl/cluster/README.md @@ -14,6 +14,9 @@ The Cluster module deploys a Scalar DL cluster. | bastion_ip | The IP to bastion host used for provisioning | `any` | n/a | yes | | cassandra_replication_factor | The replication factor for the Cassandra schema | `number` | `3` | no | | custom_tags | The map of custom tags | `map(string)` | `{}` | no | +| database | The database | `any` | n/a | yes | +| database_contact_points | The database contact points | `any` | n/a | yes | +| database_contact_port | The database contact port | `any` | n/a | yes | | database_password | The database password | `any` | n/a | yes | | database_username | The database username | `any` | n/a | yes | | enable_tdagent | A flag to install td-agent that forwards logs to the monitor host | `bool` | `true` | no | diff --git a/modules/azure/scalardl/cluster/README.md b/modules/azure/scalardl/cluster/README.md index 6f51f8476..a242f5b20 100644 --- a/modules/azure/scalardl/cluster/README.md +++ b/modules/azure/scalardl/cluster/README.md @@ -15,6 +15,9 @@ The Cluster module deploys a Scalar DL cluster on Azure. | availability_set_id | n/a | `string` | `""` | no | | bastion_ip | The IP to bastion host used for provisioning | `any` | n/a | yes | | cassandra_replication_factor | The replication factor for the Cassandra schema | `number` | `3` | no | +| database | The database | `any` | n/a | yes | +| database_contact_points | The database contact points | `any` | n/a | yes | +| database_contact_port | The database contact port | `any` | n/a | yes | | database_password | The database password | `any` | n/a | yes | | database_username | The database username | `any` | n/a | yes | | enable_accelerated_networking | A flag to enable accelerated networking on network interface | `bool` | `false` | no | From d9ca5f293cf9a863b7af46613936ce29ff0d9279 Mon Sep 17 00:00:00 2001 From: Yusuke Morimoto Date: Thu, 12 Nov 2020 13:56:02 +0900 Subject: [PATCH 10/22] Add variable to specify region for DynamoDB --- examples/aws/scalardl/locals.tf | 1 + modules/aws/scalardl/cluster/README.md | 1 + modules/aws/scalardl/cluster/main.tf | 1 + modules/aws/scalardl/cluster/vars.tf | 5 +++++ modules/aws/scalardl/locals.tf | 1 + modules/aws/scalardl/scalardl.tf | 2 ++ 6 files changed, 11 insertions(+) diff --git a/examples/aws/scalardl/locals.tf b/examples/aws/scalardl/locals.tf index d7b699a65..2300ac368 100644 --- a/examples/aws/scalardl/locals.tf +++ b/examples/aws/scalardl/locals.tf @@ -4,6 +4,7 @@ locals { name = data.terraform_remote_state.network.outputs.network_name dns = data.terraform_remote_state.network.outputs.network_dns id = data.terraform_remote_state.network.outputs.network_id + region = data.terraform_remote_state.network.outputs.region locations = join(",", data.terraform_remote_state.network.outputs.locations) image_id = data.terraform_remote_state.network.outputs.image_id diff --git a/modules/aws/scalardl/cluster/README.md b/modules/aws/scalardl/cluster/README.md index 84c4ae825..313cdda86 100644 --- a/modules/aws/scalardl/cluster/README.md +++ b/modules/aws/scalardl/cluster/README.md @@ -19,6 +19,7 @@ The Cluster module deploys a Scalar DL cluster. | database_contact_port | The database contact port | `any` | n/a | yes | | database_password | The database password | `any` | n/a | yes | | database_username | The database username | `any` | n/a | yes | +| dynamo_region | The region for DynamoDB | `string` | `""` | no | | enable_tdagent | A flag to install td-agent that forwards logs to the monitor host | `bool` | `true` | no | | image_id | The image id to initiate | `any` | n/a | yes | | internal_domain | Internal domain | `any` | n/a | yes | diff --git a/modules/aws/scalardl/cluster/main.tf b/modules/aws/scalardl/cluster/main.tf index f5ec89dfd..598e30572 100644 --- a/modules/aws/scalardl/cluster/main.tf +++ b/modules/aws/scalardl/cluster/main.tf @@ -62,4 +62,5 @@ module "scalardl_provision" { database_username = var.database_username database_password = var.database_password cassandra_replication_factor = var.cassandra_replication_factor + dynamo_region = var.dynamo_region } diff --git a/modules/aws/scalardl/cluster/vars.tf b/modules/aws/scalardl/cluster/vars.tf index 93b0330e0..d4b1fe3a1 100644 --- a/modules/aws/scalardl/cluster/vars.tf +++ b/modules/aws/scalardl/cluster/vars.tf @@ -98,6 +98,11 @@ variable "cassandra_replication_factor" { description = "The replication factor for the Cassandra schema" } +variable "dynamo_region" { + default = "" + description = "The region for DynamoDB" +} + variable "custom_tags" { type = map(string) default = {} diff --git a/modules/aws/scalardl/locals.tf b/modules/aws/scalardl/locals.tf index 0b765da0d..d439611d3 100644 --- a/modules/aws/scalardl/locals.tf +++ b/modules/aws/scalardl/locals.tf @@ -4,6 +4,7 @@ locals { network_name = var.network.name network_dns = var.network.dns network_id = var.network.id + region = var.network.region locations = split(",", var.network.locations) image_id = var.network.image_id key_name = var.network.key_name diff --git a/modules/aws/scalardl/scalardl.tf b/modules/aws/scalardl/scalardl.tf index 64bf67b47..0bf441fc4 100644 --- a/modules/aws/scalardl/scalardl.tf +++ b/modules/aws/scalardl/scalardl.tf @@ -25,6 +25,7 @@ module "scalardl_blue" { database_username = local.scalardl.database_username database_password = local.scalardl.database_password cassandra_replication_factor = local.scalardl.cassandra_replication_factor + dynamo_region = local.region custom_tags = var.custom_tags } @@ -55,6 +56,7 @@ module "scalardl_green" { database_username = local.scalardl.database_username database_password = local.scalardl.database_password cassandra_replication_factor = local.scalardl.cassandra_replication_factor + dynamo_region = local.region custom_tags = var.custom_tags } From b5ca3e2fc5b819ffe5debe727142e5d638272e59 Mon Sep 17 00:00:00 2001 From: Yusuke Morimoto Date: Thu, 12 Nov 2020 13:28:10 +0900 Subject: [PATCH 11/22] Add storage and port options to scalar-ledger container --- modules/universal/scalardl/main.tf | 2 ++ modules/universal/scalardl/provision/docker-compose.yml | 2 ++ 2 files changed, 4 insertions(+) diff --git a/modules/universal/scalardl/main.tf b/modules/universal/scalardl/main.tf index 12da47f1c..142c7bfe5 100644 --- a/modules/universal/scalardl/main.tf +++ b/modules/universal/scalardl/main.tf @@ -219,7 +219,9 @@ resource "null_resource" "scalardl_container" { inline = [ "cd $HOME/provision", "echo export SCALAR_IMAGE=${local.scalar_image} > env", + "echo export SCALAR_DB_STORAGE=${var.database} >> env", "echo export SCALAR_DB_CONTACT_POINTS=${var.database_contact_points} >> env", + "echo export SCALAR_DB_CONTACT_PORT=${var.database_contact_port} >> env", "echo export SCALAR_DB_USERNAME=${var.database_username} >> env", "echo export SCALAR_DB_PASSWORD=${var.database_password} >> env", "source ./env", diff --git a/modules/universal/scalardl/provision/docker-compose.yml b/modules/universal/scalardl/provision/docker-compose.yml index da0ce68d9..7295deb1b 100644 --- a/modules/universal/scalardl/provision/docker-compose.yml +++ b/modules/universal/scalardl/provision/docker-compose.yml @@ -4,7 +4,9 @@ services: scalar: image: ${SCALAR_IMAGE} environment: + - SCALAR_DB_STORAGE=${SCALAR_DB_STORAGE} - SCALAR_DB_CONTACT_POINTS=${SCALAR_DB_CONTACT_POINTS} + - SCALAR_DB_CONTACT_PORT=${SCALAR_DB_CONTACT_PORT} - SCALAR_DB_USERNAME=${SCALAR_DB_USERNAME} - SCALAR_DB_PASSWORD=${SCALAR_DB_PASSWORD} ports: From 0197bc7e58e333ae1da30b069b8ec883a7f60cd0 Mon Sep 17 00:00:00 2001 From: Yusuke Morimoto Date: Thu, 12 Nov 2020 12:55:04 +0900 Subject: [PATCH 12/22] Add trigger for schema_loader_image --- modules/universal/scalardl/main.tf | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/modules/universal/scalardl/main.tf b/modules/universal/scalardl/main.tf index c79c1afc2..e6d46d25b 100644 --- a/modules/universal/scalardl/main.tf +++ b/modules/universal/scalardl/main.tf @@ -48,7 +48,8 @@ resource "null_resource" "schema_loader_image" { count = var.provision_count > 0 ? 1 : 0 triggers = { - triggers = join(",", var.triggers) + triggers = join(",", var.triggers) + schema_loader_image = var.schema_loader_image } provisioner "local-exec" { From 096ecdb0aa7ddf0831760aded6ba69fa9310943a Mon Sep 17 00:00:00 2001 From: Yusuke Morimoto Date: Sat, 14 Nov 2020 00:52:45 +0900 Subject: [PATCH 13/22] Add database variables to triggers for scalardl_container --- modules/universal/scalardl/main.tf | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/modules/universal/scalardl/main.tf b/modules/universal/scalardl/main.tf index 142c7bfe5..544e5b2b3 100644 --- a/modules/universal/scalardl/main.tf +++ b/modules/universal/scalardl/main.tf @@ -204,7 +204,13 @@ resource "null_resource" "scalardl_container" { count = var.provision_count triggers = { - triggers = "${null_resource.scalardl_load[count.index].id}${null_resource.scalardl_schema[0].id}" + scalardl_load = null_resource.scalardl_load[count.index].id + scalardl_schema = null_resource.scalardl_schema[0].id + database = var.database + database_contact_points = var.database_contact_points + database_contact_port = var.database_contact_port + database_username = var.database_username + database_password = var.database_password } connection { From 324454cc9fb613edc2900c9a45d53e2255013485 Mon Sep 17 00:00:00 2001 From: Yusuke Morimoto Date: Sat, 14 Nov 2020 01:11:54 +0900 Subject: [PATCH 14/22] Remove dynamo_region variable The DynamoDB resion should be specified in `database_contact_points` instead since scalardb uses contact_points as a region. --- examples/aws/scalardl/locals.tf | 1 - modules/aws/scalardl/cluster/README.md | 1 - modules/aws/scalardl/cluster/main.tf | 1 - modules/aws/scalardl/cluster/vars.tf | 5 ----- modules/aws/scalardl/locals.tf | 1 - modules/aws/scalardl/scalardl.tf | 2 -- modules/universal/scalardl/main.tf | 2 +- modules/universal/scalardl/vars.tf | 5 ----- 8 files changed, 1 insertion(+), 17 deletions(-) diff --git a/examples/aws/scalardl/locals.tf b/examples/aws/scalardl/locals.tf index 2300ac368..d7b699a65 100644 --- a/examples/aws/scalardl/locals.tf +++ b/examples/aws/scalardl/locals.tf @@ -4,7 +4,6 @@ locals { name = data.terraform_remote_state.network.outputs.network_name dns = data.terraform_remote_state.network.outputs.network_dns id = data.terraform_remote_state.network.outputs.network_id - region = data.terraform_remote_state.network.outputs.region locations = join(",", data.terraform_remote_state.network.outputs.locations) image_id = data.terraform_remote_state.network.outputs.image_id diff --git a/modules/aws/scalardl/cluster/README.md b/modules/aws/scalardl/cluster/README.md index 313cdda86..84c4ae825 100644 --- a/modules/aws/scalardl/cluster/README.md +++ b/modules/aws/scalardl/cluster/README.md @@ -19,7 +19,6 @@ The Cluster module deploys a Scalar DL cluster. | database_contact_port | The database contact port | `any` | n/a | yes | | database_password | The database password | `any` | n/a | yes | | database_username | The database username | `any` | n/a | yes | -| dynamo_region | The region for DynamoDB | `string` | `""` | no | | enable_tdagent | A flag to install td-agent that forwards logs to the monitor host | `bool` | `true` | no | | image_id | The image id to initiate | `any` | n/a | yes | | internal_domain | Internal domain | `any` | n/a | yes | diff --git a/modules/aws/scalardl/cluster/main.tf b/modules/aws/scalardl/cluster/main.tf index 598e30572..f5ec89dfd 100644 --- a/modules/aws/scalardl/cluster/main.tf +++ b/modules/aws/scalardl/cluster/main.tf @@ -62,5 +62,4 @@ module "scalardl_provision" { database_username = var.database_username database_password = var.database_password cassandra_replication_factor = var.cassandra_replication_factor - dynamo_region = var.dynamo_region } diff --git a/modules/aws/scalardl/cluster/vars.tf b/modules/aws/scalardl/cluster/vars.tf index d4b1fe3a1..93b0330e0 100644 --- a/modules/aws/scalardl/cluster/vars.tf +++ b/modules/aws/scalardl/cluster/vars.tf @@ -98,11 +98,6 @@ variable "cassandra_replication_factor" { description = "The replication factor for the Cassandra schema" } -variable "dynamo_region" { - default = "" - description = "The region for DynamoDB" -} - variable "custom_tags" { type = map(string) default = {} diff --git a/modules/aws/scalardl/locals.tf b/modules/aws/scalardl/locals.tf index d439611d3..0b765da0d 100644 --- a/modules/aws/scalardl/locals.tf +++ b/modules/aws/scalardl/locals.tf @@ -4,7 +4,6 @@ locals { network_name = var.network.name network_dns = var.network.dns network_id = var.network.id - region = var.network.region locations = split(",", var.network.locations) image_id = var.network.image_id key_name = var.network.key_name diff --git a/modules/aws/scalardl/scalardl.tf b/modules/aws/scalardl/scalardl.tf index 0bf441fc4..64bf67b47 100644 --- a/modules/aws/scalardl/scalardl.tf +++ b/modules/aws/scalardl/scalardl.tf @@ -25,7 +25,6 @@ module "scalardl_blue" { database_username = local.scalardl.database_username database_password = local.scalardl.database_password cassandra_replication_factor = local.scalardl.cassandra_replication_factor - dynamo_region = local.region custom_tags = var.custom_tags } @@ -56,7 +55,6 @@ module "scalardl_green" { database_username = local.scalardl.database_username database_password = local.scalardl.database_password cassandra_replication_factor = local.scalardl.cassandra_replication_factor - dynamo_region = local.region custom_tags = var.custom_tags } diff --git a/modules/universal/scalardl/main.tf b/modules/universal/scalardl/main.tf index 544e5b2b3..d22f7d070 100644 --- a/modules/universal/scalardl/main.tf +++ b/modules/universal/scalardl/main.tf @@ -193,7 +193,7 @@ resource "null_resource" "scalardl_schema" { "%s %s", "docker run --rm ${var.schema_loader_image} -h ${var.database_contact_points} -u ${var.database_username} -p ${var.database_password}", var.database == "cassandra" ? "--cassandra -P ${var.database_contact_port} -n NetworkTopologyStrategy -R ${var.cassandra_replication_factor}" : - var.database == "dynamo" ? "--dynamo --region ${var.dynamo_region}" : + var.database == "dynamo" ? "--dynamo --region ${var.database_contact_points}" : "" ) ] diff --git a/modules/universal/scalardl/vars.tf b/modules/universal/scalardl/vars.tf index 73e393f7d..78a9b1f0d 100644 --- a/modules/universal/scalardl/vars.tf +++ b/modules/universal/scalardl/vars.tf @@ -77,8 +77,3 @@ variable "cassandra_replication_factor" { default = 3 description = "The replication factor for the Cassandra schema" } - -variable "dynamo_region" { - default = "" - description = "The AWS region name where DynamoDB tables are created" -} From fcf25120963f3e338179bf29d404f0437b7a5a76 Mon Sep 17 00:00:00 2001 From: Yusuke Morimoto Date: Sat, 14 Nov 2020 01:33:04 +0900 Subject: [PATCH 15/22] Update descriptions for variables --- modules/aws/scalardl/cluster/README.md | 10 +++++----- modules/aws/scalardl/cluster/vars.tf | 10 +++++----- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/modules/aws/scalardl/cluster/README.md b/modules/aws/scalardl/cluster/README.md index 84c4ae825..e9fd9f08f 100644 --- a/modules/aws/scalardl/cluster/README.md +++ b/modules/aws/scalardl/cluster/README.md @@ -14,11 +14,11 @@ The Cluster module deploys a Scalar DL cluster. | bastion_ip | The IP to bastion host used for provisioning | `any` | n/a | yes | | cassandra_replication_factor | The replication factor for the Cassandra schema | `number` | `3` | no | | custom_tags | The map of custom tags | `map(string)` | `{}` | no | -| database | The database | `any` | n/a | yes | -| database_contact_points | The database contact points | `any` | n/a | yes | -| database_contact_port | The database contact port | `any` | n/a | yes | -| database_password | The database password | `any` | n/a | yes | -| database_username | The database username | `any` | n/a | yes | +| database | The database. cassandra and dynamo are supported. | `any` | n/a | yes | +| database_contact_points | The database contact points. Specify the region name if the database is dynamo. | `any` | n/a | yes | +| database_contact_port | The database contact port. Ignored if the database is dynamo. | `any` | n/a | yes | +| database_password | The database password. Specify AWS_SECRET_ACCESS_KEY if the database is dynamo. | `any` | n/a | yes | +| database_username | The database username. Specify AWS_ACCESS_KEY_ID if the database is dynamo. | `any` | n/a | yes | | enable_tdagent | A flag to install td-agent that forwards logs to the monitor host | `bool` | `true` | no | | image_id | The image id to initiate | `any` | n/a | yes | | internal_domain | Internal domain | `any` | n/a | yes | diff --git a/modules/aws/scalardl/cluster/vars.tf b/modules/aws/scalardl/cluster/vars.tf index 93b0330e0..9ae185a6f 100644 --- a/modules/aws/scalardl/cluster/vars.tf +++ b/modules/aws/scalardl/cluster/vars.tf @@ -74,23 +74,23 @@ variable "internal_domain" { } variable "database" { - description = "The database" + description = "The database. cassandra and dynamo are supported." } variable "database_contact_points" { - description = "The database contact points" + description = "The database contact points. Specify the region name if the database is dynamo." } variable "database_contact_port" { - description = "The database contact port" + description = "The database contact port. Ignored if the database is dynamo." } variable "database_username" { - description = "The database username" + description = "The database username. Specify AWS_ACCESS_KEY_ID if the database is dynamo." } variable "database_password" { - description = "The database password" + description = "The database password. Specify AWS_SECRET_ACCESS_KEY if the database is dynamo." } variable "cassandra_replication_factor" { From 154e70f80512ca4b3943b3cf46397bed7dcd6d77 Mon Sep 17 00:00:00 2001 From: Yusuke Morimoto Date: Mon, 16 Nov 2020 09:16:09 +0900 Subject: [PATCH 16/22] Enable Cassandra related variables only if database is Cassandra --- examples/aws/scalardl/locals.tf | 4 ++-- modules/aws/scalardl/locals.tf | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/examples/aws/scalardl/locals.tf b/examples/aws/scalardl/locals.tf index d7b699a65..ded1f5a16 100644 --- a/examples/aws/scalardl/locals.tf +++ b/examples/aws/scalardl/locals.tf @@ -23,8 +23,8 @@ locals { } cassandra = { - start_on_initial_boot = data.terraform_remote_state.cassandra.outputs.cassandra_start_on_initial_boot - provision_ids = join(",", data.terraform_remote_state.cassandra.outputs.cassandra_provision_ids) + start_on_initial_boot = var.scalardl.database == "cassandra" ? data.terraform_remote_state.cassandra.outputs.cassandra_start_on_initial_boot : false + provision_ids = var.scalardl.database == "cassandra" ? join(",", data.terraform_remote_state.cassandra.outputs.cassandra_provision_ids) : "" } custom_tags = data.terraform_remote_state.network.outputs.custom_tags diff --git a/modules/aws/scalardl/locals.tf b/modules/aws/scalardl/locals.tf index 0b765da0d..e8d26ee86 100644 --- a/modules/aws/scalardl/locals.tf +++ b/modules/aws/scalardl/locals.tf @@ -16,7 +16,7 @@ locals { green_subnet_ids = split(",", var.network.green_subnet_ids) internal_domain = var.network.internal_domain - triggers = [var.cassandra.start_on_initial_boot ? var.cassandra.provision_ids : var.network.bastion_provision_id] + triggers = [var.scalardl.database == "cassandra" && var.cassandra.start_on_initial_boot ? var.cassandra.provision_ids : var.network.bastion_provision_id] } ### default From 430b265b5a200ba71a7d4eb4df0692e0a3338dfd Mon Sep 17 00:00:00 2001 From: Yusuke Morimoto Date: Tue, 24 Nov 2020 17:27:10 +0900 Subject: [PATCH 17/22] Update scalardl-schema-loader version to 1.2.0 --- modules/universal/scalardl/vars.tf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modules/universal/scalardl/vars.tf b/modules/universal/scalardl/vars.tf index 4e091ba4d..3d95ac898 100644 --- a/modules/universal/scalardl/vars.tf +++ b/modules/universal/scalardl/vars.tf @@ -38,7 +38,7 @@ variable "scalardl_image_tag" { } variable "schema_loader_image" { - default = "scalarlabs/scalardl-schema-loader:1.1.0" + default = "scalarlabs/scalardl-schema-loader:1.2.0" description = "The docker image for the schema loader" } From 7ee898ce762a126f23b67cfd4bc06e86bcdbed97 Mon Sep 17 00:00:00 2001 From: Yusuke Morimoto Date: Tue, 24 Nov 2020 17:27:56 +0900 Subject: [PATCH 18/22] Update the default version of scalar-ledger to 2.1.0 --- examples/aws/scalardl/example.tfvars | 4 ++-- examples/azure/scalardl/example.tfvars | 4 ++-- modules/aws/scalardl/locals.tf | 4 ++-- modules/azure/scalardl/locals.tf | 4 ++-- 4 files changed, 8 insertions(+), 8 deletions(-) diff --git a/examples/aws/scalardl/example.tfvars b/examples/aws/scalardl/example.tfvars index a2ffb3bbf..d9a93ef69 100644 --- a/examples/aws/scalardl/example.tfvars +++ b/examples/aws/scalardl/example.tfvars @@ -6,11 +6,11 @@ scalardl = { # resource_type = "t3.medium" # resource_root_volume_size = "64" # blue_resource_count = "3" - # blue_image_tag = "2.0.7" + # blue_image_tag = "2.1.0" # blue_image_name = "scalarlabs/scalar-ledger" # blue_discoverable_by_envoy = "true" # green_resource_count = "0" - # green_image_tag = "2.0.7" + # green_image_tag = "2.1.0" # green_image_name = "scalarlabs/scalar-ledger" # green_discoverable_by_envoy = "false" # enable_tdagent = "true" diff --git a/examples/azure/scalardl/example.tfvars b/examples/azure/scalardl/example.tfvars index 61036ab30..b1b9b3048 100644 --- a/examples/azure/scalardl/example.tfvars +++ b/examples/azure/scalardl/example.tfvars @@ -4,12 +4,12 @@ scalardl = { # resource_type = "Standard_B2s" # resource_root_volume_size = "64" # blue_resource_count = "3" - # blue_image_tag = "2.0.7" + # blue_image_tag = "2.1.0" # blue_image_name = "scalarlabs/scalar-ledger" # blue_discoverable_by_envoy = "true" # blue_enable_accelerated_networking = "false" # green_resource_count = "0" - # green_image_tag = "2.0.7" + # green_image_tag = "2.1.0" # green_image_name = "scalarlabs/scalar-ledger" # green_discoverable_by_envoy = "false" # green_enable_accelerated_networking = "false" diff --git a/modules/aws/scalardl/locals.tf b/modules/aws/scalardl/locals.tf index 966f72d38..8ed1dda2e 100644 --- a/modules/aws/scalardl/locals.tf +++ b/modules/aws/scalardl/locals.tf @@ -25,11 +25,11 @@ locals { resource_type = "t3.medium" resource_root_volume_size = 64 blue_resource_count = 3 - blue_image_tag = "2.0.7" + blue_image_tag = "2.1.0" blue_image_name = "scalarlabs/scalar-ledger" blue_discoverable_by_envoy = true green_resource_count = 0 - green_image_tag = "2.0.7" + green_image_tag = "2.1.0" green_image_name = "scalarlabs/scalar-ledger" green_discoverable_by_envoy = false target_port = 50051 diff --git a/modules/azure/scalardl/locals.tf b/modules/azure/scalardl/locals.tf index 774dfa5e7..d9558184b 100644 --- a/modules/azure/scalardl/locals.tf +++ b/modules/azure/scalardl/locals.tf @@ -22,13 +22,13 @@ locals { resource_type = "Standard_B2s" resource_root_volume_size = 64 blue_resource_count = 3 - blue_image_tag = "2.0.7" + blue_image_tag = "2.1.0" blue_image_name = "scalarlabs/scalar-ledger" blue_subnet_id = var.network.blue_subnet_id blue_discoverable_by_envoy = true blue_enable_accelerated_networking = false green_resource_count = 0 - green_image_tag = "2.0.7" + green_image_tag = "2.1.0" green_image_name = "scalarlabs/scalar-ledger" green_subnet_id = var.network.green_subnet_id green_discoverable_by_envoy = false From c9933b787a0a897134221ea7753d4334b72dd7c1 Mon Sep 17 00:00:00 2001 From: Yusuke Morimoto Date: Thu, 3 Dec 2020 21:20:24 +0900 Subject: [PATCH 19/22] Fix local variable in aws/scalardl module --- modules/aws/scalardl/locals.tf | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/modules/aws/scalardl/locals.tf b/modules/aws/scalardl/locals.tf index f360a85dd..96d3774c8 100644 --- a/modules/aws/scalardl/locals.tf +++ b/modules/aws/scalardl/locals.tf @@ -16,7 +16,11 @@ locals { green_subnet_ids = split(",", var.network.green_subnet_ids) internal_domain = var.network.internal_domain - triggers = [var.scalardl.database == "cassandra" && var.cassandra.start_on_initial_boot ? var.cassandra.provision_ids : var.network.bastion_provision_id] + triggers = [ + (lookup(var.scalardl, "database", "cassandra") == "cassandra" && var.cassandra.start_on_initial_boot) ? + var.cassandra.provision_ids : + var.network.bastion_provision_id + ] } ### default From b523c9438a40c7ac33efa8e8a5f49fec96a27758 Mon Sep 17 00:00:00 2001 From: Yusuke Morimoto Date: Fri, 11 Dec 2020 11:43:50 +0900 Subject: [PATCH 20/22] Add triggers to resource null_resource.scalardl_schema --- modules/universal/scalardl/main.tf | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/modules/universal/scalardl/main.tf b/modules/universal/scalardl/main.tf index 534f4ee7e..d15caf405 100644 --- a/modules/universal/scalardl/main.tf +++ b/modules/universal/scalardl/main.tf @@ -177,7 +177,12 @@ resource "null_resource" "scalardl_schema" { count = var.provision_count > 0 ? 1 : 0 triggers = { - triggers = null_resource.schema_loader_image_load[0].id + schema_loader_image_load = null_resource.schema_loader_image_load[0].id + database = var.database + database_contact_points = var.database_contact_points + database_contact_port = var.database_contact_port + database_username = var.database_username + database_password = var.database_password } connection { From ea40cfc08a1d5afcbae66bff3a1b9c993cbde7dc Mon Sep 17 00:00:00 2001 From: Yusuke Morimoto Date: Fri, 11 Dec 2020 23:04:30 +0900 Subject: [PATCH 21/22] Remove triggers from null_resource.scalardl_container Co-authored-by: tei-k --- modules/universal/scalardl/main.tf | 5 ----- 1 file changed, 5 deletions(-) diff --git a/modules/universal/scalardl/main.tf b/modules/universal/scalardl/main.tf index d15caf405..fa9fbb526 100644 --- a/modules/universal/scalardl/main.tf +++ b/modules/universal/scalardl/main.tf @@ -212,11 +212,6 @@ resource "null_resource" "scalardl_container" { triggers = { scalardl_load = null_resource.scalardl_load[count.index].id scalardl_schema = null_resource.scalardl_schema[0].id - database = var.database - database_contact_points = var.database_contact_points - database_contact_port = var.database_contact_port - database_username = var.database_username - database_password = var.database_password } connection { From beb2b820045bf6318a77a388c3cdcc7d2650c1d6 Mon Sep 17 00:00:00 2001 From: Yusuke Morimoto Date: Fri, 11 Dec 2020 23:06:44 +0900 Subject: [PATCH 22/22] Terraform fmt --- modules/universal/scalardl/main.tf | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/modules/universal/scalardl/main.tf b/modules/universal/scalardl/main.tf index fa9fbb526..40cf9a405 100644 --- a/modules/universal/scalardl/main.tf +++ b/modules/universal/scalardl/main.tf @@ -18,7 +18,7 @@ resource "null_resource" "scalardl_image" { } provisioner "local-exec" { - command = "docker pull ${local.scalar_image} && docker save ${local.scalar_image} | gzip -1 > ${local.image_filename}" + command = "docker pull ${local.scalar_image} && docker save ${local.scalar_image} | gzip -1 > ${local.image_filename}" working_dir = path.module interpreter = ["/bin/bash", "-c"] } @@ -210,8 +210,8 @@ resource "null_resource" "scalardl_container" { count = var.provision_count triggers = { - scalardl_load = null_resource.scalardl_load[count.index].id - scalardl_schema = null_resource.scalardl_schema[0].id + scalardl_load = null_resource.scalardl_load[count.index].id + scalardl_schema = null_resource.scalardl_schema[0].id } connection {