Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/flaconi/terraform-aws-ssm-store
Simple module to store different parameters to SSM
https://github.com/flaconi/terraform-aws-ssm-store
aws terraform terraform-module
Last synced: about 4 hours ago
JSON representation
Simple module to store different parameters to SSM
- Host: GitHub
- URL: https://github.com/flaconi/terraform-aws-ssm-store
- Owner: Flaconi
- License: mit
- Created: 2019-11-18T13:44:13.000Z (almost 5 years ago)
- Default Branch: master
- Last Pushed: 2024-05-23T07:48:48.000Z (6 months ago)
- Last Synced: 2024-05-23T08:28:07.757Z (6 months ago)
- Topics: aws, terraform, terraform-module
- Language: Makefile
- Homepage:
- Size: 28.3 KB
- Stars: 1
- Watchers: 11
- Forks: 2
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
- Codeowners: .github/CODEOWNERS
Awesome Lists containing this project
README
# Terraform module: AWS SSM Store
[![Lint Status](https://github.com/Flaconi/terraform-aws-ssm-store/actions/workflows/linting.yml/badge.svg?branch=master)](https://github.com/Flaconi/terraform-aws-ssm-store/actions/workflows/linting.yml)
[![Docs Status](https://github.com/Flaconi/terraform-aws-ssm-store/actions/workflows/terraform-docs.yml/badge.svg?branch=master)](https://github.com/Flaconi/terraform-aws-ssm-store/actions/workflows/terraform-docs.yml)
[![Tag](https://img.shields.io/github/tag/flaconi/terraform-aws-ssm-store.svg)](https://github.com/flaconi/terraform-aws-ssm-store/releases)
[![License](https://img.shields.io/badge/license-MIT-blue.svg)](https://opensource.org/licenses/MIT)This Terraform module can create an arbitrary number of SSM-keys to store parameters.
## Usage
### Assumeable roles
```hcl
module "iam_roles" {
source = "github.com/flaconi/terraform-aws-ssm-store?ref=v1.0.0"tags = {
"Created by" = "terraform"
}kms_alias = "alias/aws/ssm"
name_prefix = "/applications/app1"
parameters = [
{
name = "secure"
value = "securevalue"
},
{
name = "secure2"
value = "securevalue2"
type = "SecureString" # Set explicitly
},
{
name = "insecure"
value = "insecurevalue"
type = "String"
},
]
}
```## Requirements
| Name | Version |
|------|---------|
| [terraform](#requirement\_terraform) | >= 1.3 |
| [aws](#requirement\_aws) | >= 5 |## Providers
| Name | Version |
|------|---------|
| [aws](#provider\_aws) | >= 5 |## Modules
No modules.
## Resources
| Name | Type |
|------|------|
| [aws_ssm_parameter.this](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/ssm_parameter) | resource |
| [aws_kms_key.this](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/data-sources/kms_key) | data source |## Inputs
| Name | Description | Type | Default | Required |
|------|-------------|------|---------|:--------:|
| [kms\_alias](#input\_kms\_alias) | kms\_alias sets the kms alias used for SecureString | `string` | `"alias/aws/ssm"` | no |
| [name\_prefix](#input\_name\_prefix) | name\_prefix prefixes the given name with a prefix | `string` | `""` | no |
| [parameters](#input\_parameters) | A list of dicts with parameter information |list(object({| `[]` | no |
name = string
type = optional(string, "SecureString") # String, StringList or SecureString
value = string
}))
| [tags](#input\_tags) | Tags applied to the resources | `map(string)` | `{}` | no |## Outputs
| Name | Description |
|------|-------------|
| [parameter\_arns](#output\_parameter\_arns) | Map of parameter name and arn |## License
[MIT License](LICENSE)
Copyright (c) 2024 **[Flaconi GmbH](https://github.com/flaconi)**