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: 5 months ago
JSON representation

Simple module to store different parameters to SSM

Awesome Lists containing this project

README

          

# Terraform module: AWS SSM Store

[![lint](https://github.com/flaconi/terraform-aws-ssm-store/workflows/lint/badge.svg)](https://github.com/flaconi/terraform-aws-ssm-store/actions?query=workflow%3Alint)
[![test](https://github.com/flaconi/terraform-aws-ssm-store/workflows/test/badge.svg)](https://github.com/flaconi/terraform-aws-ssm-store/actions?query=workflow%3Atest)
[![Tag](https://img.shields.io/github/tag/flaconi/terraform-aws-ssm-store.svg)](https://github.com/flaconi/terraform-aws-ssm-store/releases)
[![Terraform](https://img.shields.io/badge/Terraform--registry-aws--ssm--store-brightgreen.svg)](https://registry.terraform.io/modules/Flaconi/ssm-store/aws/)
[![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 "ssm" {
source = "github.com/flaconi/terraform-aws-ssm-store?ref=v1.2.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"
},
]
}
```

## Providers

| Name | Version |
|------|---------|
| [aws](#provider\_aws) | ~> 6.0 |

## Requirements

| Name | Version |
|------|---------|
| [terraform](#requirement\_terraform) | >= 1.5 |
| [aws](#requirement\_aws) | ~> 6.0 |

## Required Inputs

No required inputs.

## Optional Inputs

The following input variables are optional (have default values):

### [tags](#input\_tags)

Description: Tags applied to the resources

Type: `map(string)`

Default: `{}`

### [kms\_alias](#input\_kms\_alias)

Description: kms\_alias sets the kms alias used for SecureString

Type: `string`

Default: `"alias/aws/ssm"`

### [name\_prefix](#input\_name\_prefix)

Description: name\_prefix prefixes the given name with a prefix

Type: `string`

Default: `""`

### [parameters](#input\_parameters)

Description: A list of dicts with parameter information

Type:

```hcl
list(object({
name = string
type = optional(string, "SecureString") # String, StringList or SecureString
value = string
}))
```

Default: `[]`

## 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)**