forked from exiadbq/terraform-aws-ssm-parameter-store
-
Notifications
You must be signed in to change notification settings - Fork 0
/
README.yaml
90 lines (80 loc) · 3.71 KB
/
README.yaml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
#
# This is the canonical configuration for the `README.md`
# Run `make readme` to rebuild the `README.md`
#
# Name of this project
name: terraform-aws-ssm-parameter-store
# Logo for this project
#logo: docs/logo.png
# License of this project
license: "APACHE2"
# Canonical GitHub repo
github_repo: cloudposse/terraform-aws-ssm-parameter-store
# Badges to display
badges:
- name: "Latest Release"
image: "https://img.shields.io/github/release/cloudposse/terraform-aws-ssm-parameter-store.svg"
url: "https://github.com/cloudposse/terraform-aws-ssm-parameter-store/releases/latest"
- name: "Slack Community"
image: "https://slack.cloudposse.com/badge.svg"
url: "https://slack.cloudposse.com"
related:
- name: "terraform-aws-ssm-iam-role"
description: "Terraform module to provision an IAM role with configurable permissions to access SSM Parameter Store"
url: "https://github.com/cloudposse/terraform-aws-ssm-iam-role"
- name: "terraform-aws-ssm-parameter-store-policy-documents"
description: "A Terraform module that generates JSON documents for access for common AWS SSM Parameter Store policies"
url: "https://github.com/cloudposse/terraform-aws-ssm-parameter-store-policy-documents"
- name: "terraform-aws-iam-chamber-user"
description: "Terraform module to provision a basic IAM chamber user with access to SSM parameters and KMS key to decrypt secrets, suitable for CI/CD systems (e.g. TravisCI, CircleCI, CodeFresh) or systems which are external to AWS that cannot leverage AWS IAM Instance Profiles"
url: "https://github.com/cloudposse/terraform-aws-iam-chamber-user"
# Short description of this project
description: |-
Terraform module for providing read and write access to the AWS SSM Parameter Store.
introduction: |-
* [AWS Details on what values can be used](https://docs.aws.amazon.com/systems-manager/latest/userguide/sysman-paramstore-su-create.html)
* [AWS API for PutParameter](https://docs.aws.amazon.com/systems-manager/latest/APIReference/API_PutParameter.html)
* [Terraform aws_ssm_parameter resource page](https://www.terraform.io/docs/providers/aws/r/ssm_parameter.html)
* [Terraform aws_ssm_parameter data page](https://www.terraform.io/docs/providers/aws/d/ssm_parameter.html)
# How to use this project
usage: |2-
For a complete example, see [examples/complete](examples/complete).
For automated tests of the complete example using [bats](https://github.com/bats-core/bats-core) and [Terratest](https://github.com/gruntwork-io/terratest) (which tests and deploys the example on AWS), see [test](test).
This example creates a new `String` parameter called `/cp/prod/app/database/master_password` with the value of `password1`.
```hcl
module "store_write" {
source = "git::https://github.com/cloudposse/terraform-aws-ssm-parameter-store?ref=master"
parameter_write = [
{
name = "/cp/prod/app/database/master_password"
value = "password1"
type = "String"
overwrite = "true"
description = "Production database master password"
}
]
tags = {
ManagedBy = "Terraform"
}
}
```
This example reads a value from the parameter store with the name `/cp/prod/app/database/master_password`
```hcl
module "store_read" {
source = "git::https://github.com/cloudposse/terraform-aws-ssm-parameter-store?ref=master"
parameter_read = ["/cp/prod/app/database/master_password"]
}
```
include:
- "docs/targets.md"
- "docs/terraform.md"
# Contributors to this project
contributors:
- name: "Erik Osterman"
github: "osterman"
- name: "Andriy Knysh"
github: "aknysh"
- name: "Jamie Nelson"
github: "Jamie-BitFlight"
- name: "Matt Gowie"
github: "Gowiem"