envssm is a Terraform file generator for AWS SSM written in Go.
go get github.com/tetsuzawa/envssm
$ tree -a
.
└── .env
DB_USER=user
DB_PASSWORD=password$ envssm
$ tree -a
.
├── .env
├── ssm.tf # generated
├── terraform.tfvars # generated
└── variable.tf # generated
# ssm.tf
resource "aws_ssm_parameter" "db_user" {
name = "DB_USER"
type = "SecureString"
value = "var.db_user"
}
resource "aws_ssm_parameter" "db_password" {
name = "DB_PASSWORD"
type = "SecureString"
value = "var.db_password"
}# variables.tf
variable "db_user" {
type = string
}
variable "db_password" {
type = string
}# terraform.tfvars
db_user = "user"
db_password = "password"- -f: path of environment variables file
- -d: generate place holders (eg.
description = "") - -so: path of output SSM terraform file
- -vo: path of output variables terraform file
- -to: path of output tfvars terraform file