Skip to content

Commit

Permalink
Change secrets store approach (#814)
Browse files Browse the repository at this point in the history
Signed-off-by: Stavros Foteinopoulos <[email protected]>
  • Loading branch information
stafot authored Feb 6, 2025
1 parent 6d99682 commit df47356
Show file tree
Hide file tree
Showing 12 changed files with 45 additions and 24 deletions.
3 changes: 2 additions & 1 deletion aws/awat/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,8 @@
| [aws_iam_policy_document.awat_bucket_policy](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/data-sources/iam_policy_document) | data source |
| [aws_kms_key.master_s3](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/data-sources/kms_key) | data source |
| [aws_region.current](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/data-sources/region) | data source |
| [aws_secretsmanager_secret.awat](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/data-sources/secretsmanager_secret) | data source |
| [aws_secretsmanager_secret_version.awat](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/data-sources/secretsmanager_secret_version) | data source |
| [terraform_remote_state.cnc_cluster](https://registry.terraform.io/providers/hashicorp/terraform/latest/docs/data-sources/remote_state) | data source |

## Inputs
Expand All @@ -58,7 +60,6 @@
| <a name="input_awat_db_cluster_instance_type"></a> [awat\_db\_cluster\_instance\_type](#input\_awat\_db\_cluster\_instance\_type) | n/a | `string` | `"db.serverless"` | no |
| <a name="input_awat_db_deletion_protection"></a> [awat\_db\_deletion\_protection](#input\_awat\_db\_deletion\_protection) | n/a | `bool` | `true` | no |
| <a name="input_awat_db_maintenance_window"></a> [awat\_db\_maintenance\_window](#input\_awat\_db\_maintenance\_window) | n/a | `string` | n/a | yes |
| <a name="input_awat_db_password"></a> [awat\_db\_password](#input\_awat\_db\_password) | n/a | `string` | n/a | yes |
| <a name="input_awat_db_username"></a> [awat\_db\_username](#input\_awat\_db\_username) | n/a | `string` | n/a | yes |
| <a name="input_awat_enable_rds_alerting"></a> [awat\_enable\_rds\_alerting](#input\_awat\_enable\_rds\_alerting) | n/a | `bool` | `false` | no |
| <a name="input_awat_enabled_cloudwatch_logs_exports"></a> [awat\_enabled\_cloudwatch\_logs\_exports](#input\_awat\_enabled\_cloudwatch\_logs\_exports) | n/a | `list(string)` | <pre>[<br/> "postgresql"<br/>]</pre> | no |
Expand Down
10 changes: 9 additions & 1 deletion aws/awat/awat_db.tf
Original file line number Diff line number Diff line change
Expand Up @@ -56,6 +56,14 @@ resource "aws_db_subnet_group" "subnets_db" {

}

data "aws_secretsmanager_secret" "awat" {
name = format("%s-%s", var.awat_service_name, var.environment)
}

data "aws_secretsmanager_secret_version" "awat" {
secret_id = data.aws_secretsmanager_secret.awat.id
}


module "aurora-cluster" {
source = "github.com/mattermost/mattermost-cloud-monitoring.git//aws/aurora-cluster?ref=v1.7.93"
Expand All @@ -71,7 +79,7 @@ module "aurora-cluster" {
engine_version = var.awat_db_cluster_engine_version
instance_type = var.awat_db_cluster_instance_type
username = var.awat_db_username
password = var.awat_db_password
password = data.aws_secretsmanager_secret_version.awat.secret_string
iam_database_authentication_enabled = var.iam_database_authentication_enabled
final_snapshot_identifier_prefix = "awat-final-${var.awat_db_cluster_identifier}-${local.timestamp_now}"
skip_final_snapshot = false
Expand Down
4 changes: 0 additions & 4 deletions aws/awat/variables.tf
Original file line number Diff line number Diff line change
Expand Up @@ -14,10 +14,6 @@ variable "awat_db_username" {
type = string
}

variable "awat_db_password" {
type = string
}

variable "awat_db_backup_retention_period" {
type = number
}
Expand Down
3 changes: 2 additions & 1 deletion aws/customer-web-server/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,8 @@
| [aws_db_subnet_group.cws_subnets_db](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/db_subnet_group) | resource |
| [aws_security_group.cws_postgres_sg](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/security_group) | resource |
| [aws_region.current](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/data-sources/region) | data source |
| [aws_secretsmanager_secret.cws](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/data-sources/secretsmanager_secret) | data source |
| [aws_secretsmanager_secret_version.cws](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/data-sources/secretsmanager_secret_version) | data source |
| [terraform_remote_state.cluster](https://registry.terraform.io/providers/hashicorp/terraform/latest/docs/data-sources/remote_state) | data source |

## Inputs
Expand All @@ -49,7 +51,6 @@
| <a name="input_cws_db_cluster_instance_type"></a> [cws\_db\_cluster\_instance\_type](#input\_cws\_db\_cluster\_instance\_type) | n/a | `string` | `"db.serverless"` | no |
| <a name="input_cws_db_deletion_protection"></a> [cws\_db\_deletion\_protection](#input\_cws\_db\_deletion\_protection) | n/a | `bool` | `true` | no |
| <a name="input_cws_db_maintenance_window"></a> [cws\_db\_maintenance\_window](#input\_cws\_db\_maintenance\_window) | n/a | `string` | n/a | yes |
| <a name="input_cws_db_password"></a> [cws\_db\_password](#input\_cws\_db\_password) | n/a | `string` | n/a | yes |
| <a name="input_cws_db_username"></a> [cws\_db\_username](#input\_cws\_db\_username) | n/a | `string` | n/a | yes |
| <a name="input_cws_enable_bastion"></a> [cws\_enable\_bastion](#input\_cws\_enable\_bastion) | n/a | `bool` | `true` | no |
| <a name="input_cws_enable_rds_alerting"></a> [cws\_enable\_rds\_alerting](#input\_cws\_enable\_rds\_alerting) | n/a | `bool` | `false` | no |
Expand Down
4 changes: 0 additions & 4 deletions aws/customer-web-server/variables.tf
Original file line number Diff line number Diff line change
Expand Up @@ -14,10 +14,6 @@ variable "cws_db_username" {
type = string
}

variable "cws_db_password" {
type = string
}

variable "cws_db_backup_retention_period" {
type = number
}
Expand Down
10 changes: 9 additions & 1 deletion aws/customer-web-server/web-server.tf
Original file line number Diff line number Diff line change
Expand Up @@ -67,6 +67,14 @@ resource "aws_db_subnet_group" "cws_subnets_db" {

}

data "aws_secretsmanager_secret" "cws" {
name = format("%s-%s", var.cws_service_name, var.environment)
}

data "aws_secretsmanager_secret_version" "cws" {
secret_id = data.aws_secretsmanager_secret.cws.id
}

module "aurora-cluster" {
source = "github.com/mattermost/mattermost-cloud-monitoring.git//aws/aurora-cluster?ref=v1.7.93"
cluster_identifier = var.cws_db_cluster_identifier
Expand All @@ -81,7 +89,7 @@ module "aurora-cluster" {
engine_version = var.cws_db_cluster_engine_version
instance_type = var.cws_db_cluster_instance_type
username = var.cws_db_username
password = var.cws_db_password
password = data.aws_secretsmanager_secret_version.cws.secret_string
iam_database_authentication_enabled = var.iam_database_authentication_enabled
final_snapshot_identifier_prefix = "cws-final-${var.cws_db_cluster_identifier}-${local.timestamp_now}"
skip_final_snapshot = false
Expand Down
3 changes: 2 additions & 1 deletion aws/grafana/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,8 @@
| [aws_db_subnet_group.grafana_subnets_db](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/db_subnet_group) | resource |
| [aws_security_group.grafana_cec_to_postgres](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/security_group) | resource |
| [aws_region.current](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/data-sources/region) | data source |
| [aws_secretsmanager_secret.grafana](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/data-sources/secretsmanager_secret) | data source |
| [aws_secretsmanager_secret_version.grafana](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/data-sources/secretsmanager_secret_version) | data source |
| [terraform_remote_state.cluster](https://registry.terraform.io/providers/hashicorp/terraform/latest/docs/data-sources/remote_state) | data source |

## Inputs
Expand All @@ -36,7 +38,6 @@
| <a name="input_db_backup_window"></a> [db\_backup\_window](#input\_db\_backup\_window) | n/a | `string` | n/a | yes |
| <a name="input_db_deletion_protection"></a> [db\_deletion\_protection](#input\_db\_deletion\_protection) | n/a | `bool` | `true` | no |
| <a name="input_db_maintenance_window"></a> [db\_maintenance\_window](#input\_db\_maintenance\_window) | n/a | `string` | n/a | yes |
| <a name="input_db_password"></a> [db\_password](#input\_db\_password) | n/a | `string` | n/a | yes |
| <a name="input_db_username"></a> [db\_username](#input\_db\_username) | n/a | `string` | n/a | yes |
| <a name="input_enable_grafana_read_replica"></a> [enable\_grafana\_read\_replica](#input\_enable\_grafana\_read\_replica) | n/a | `bool` | `true` | no |
| <a name="input_environment"></a> [environment](#input\_environment) | n/a | `string` | n/a | yes |
Expand Down
11 changes: 10 additions & 1 deletion aws/grafana/rds.tf
Original file line number Diff line number Diff line change
Expand Up @@ -48,6 +48,15 @@ resource "aws_db_subnet_group" "grafana_subnets_db" {

}

data "aws_secretsmanager_secret" "grafana" {
name = format("%s-%s", var.grafana_service_name, var.environment)
}

data "aws_secretsmanager_secret_version" "grafana" {
secret_id = data.aws_secretsmanager_secret.grafana.id
}


module "aurora-cluster" {
source = "github.com/mattermost/mattermost-cloud-monitoring.git//aws/aurora-cluster?ref=v1.7.5"
cluster_identifier = var.grafana_db_cluster_identifier
Expand All @@ -62,7 +71,7 @@ module "aurora-cluster" {
engine_version = var.grafana_db_cluster_engine_version
instance_type = var.grafana_db_cluster_instance_type
username = var.db_username
password = var.db_password
password = data.aws_secretsmanager_secret_version.grafana.secret_string
final_snapshot_identifier_prefix = "grafana-final-${var.grafana_db_cluster_identifier}-${local.timestamp_now}"
skip_final_snapshot = false
deletion_protection = var.db_deletion_protection
Expand Down
4 changes: 0 additions & 4 deletions aws/grafana/variables.tf
Original file line number Diff line number Diff line change
Expand Up @@ -14,10 +14,6 @@ variable "db_username" {
type = string
}

variable "db_password" {
type = string
}

variable "db_backup_retention_period" {
type = number
}
Expand Down
3 changes: 2 additions & 1 deletion aws/provisioner/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,8 @@
| [aws_iam_access_key.provisioner_user](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/iam_access_key) | resource |
| [aws_security_group.cec_to_postgress](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/security_group) | resource |
| [aws_region.current](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/data-sources/region) | data source |
| [aws_secretsmanager_secret.provisioner](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/data-sources/secretsmanager_secret) | data source |
| [aws_secretsmanager_secret_version.provisioner](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/data-sources/secretsmanager_secret_version) | data source |
| [terraform_remote_state.cluster](https://registry.terraform.io/providers/hashicorp/terraform/latest/docs/data-sources/remote_state) | data source |

## Inputs
Expand All @@ -38,7 +40,6 @@
| <a name="input_db_backup_window"></a> [db\_backup\_window](#input\_db\_backup\_window) | n/a | `string` | n/a | yes |
| <a name="input_db_deletion_protection"></a> [db\_deletion\_protection](#input\_db\_deletion\_protection) | n/a | `bool` | `true` | no |
| <a name="input_db_maintenance_window"></a> [db\_maintenance\_window](#input\_db\_maintenance\_window) | n/a | `string` | n/a | yes |
| <a name="input_db_password"></a> [db\_password](#input\_db\_password) | n/a | `string` | n/a | yes |
| <a name="input_db_username"></a> [db\_username](#input\_db\_username) | n/a | `string` | n/a | yes |
| <a name="input_enable_provisioner_read_replica"></a> [enable\_provisioner\_read\_replica](#input\_enable\_provisioner\_read\_replica) | n/a | `bool` | `true` | no |
| <a name="input_environment"></a> [environment](#input\_environment) | n/a | `string` | n/a | yes |
Expand Down
10 changes: 9 additions & 1 deletion aws/provisioner/provisioner-db.tf
Original file line number Diff line number Diff line change
Expand Up @@ -80,6 +80,14 @@ resource "aws_db_subnet_group" "subnets_db" {

}

data "aws_secretsmanager_secret" "provisioner" {
name = format("%s-%s", var.provisioner_service_name, var.environment)
}

data "aws_secretsmanager_secret_version" "provisioner" {
secret_id = data.aws_secretsmanager_secret.provisioner.id
}

module "aurora-cluster" {
source = "github.com/mattermost/mattermost-cloud-monitoring.git//aws/aurora-cluster?ref=v1.7.93"
cluster_identifier = var.provisioner_db_cluster_identifier
Expand All @@ -94,7 +102,7 @@ module "aurora-cluster" {
engine_version = var.provisioner_db_cluster_engine_version
instance_type = var.provisioner_db_cluster_instance_type
username = var.db_username
password = var.db_password
password = data.aws_secretsmanager_secret_version.provisioner.secret_string
iam_database_authentication_enabled = var.iam_database_authentication_enabled
final_snapshot_identifier_prefix = "provisioner-final-${var.provisioner_db_cluster_identifier}-${local.timestamp_now}"
skip_final_snapshot = false
Expand Down
4 changes: 0 additions & 4 deletions aws/provisioner/variables.tf
Original file line number Diff line number Diff line change
Expand Up @@ -14,10 +14,6 @@ variable "db_username" {
type = string
}

variable "db_password" {
type = string
}

variable "db_backup_retention_period" {
type = string
}
Expand Down

0 comments on commit df47356

Please sign in to comment.