-
-
Notifications
You must be signed in to change notification settings - Fork 6
Expand file tree
/
Copy pathREADME.yaml
More file actions
133 lines (113 loc) · 4.2 KB
/
README.yaml
File metadata and controls
133 lines (113 loc) · 4.2 KB
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
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
#
# This is the canonical configuration for the `README.md`
# Run `make readme` to rebuild the `README.md`
#
# Name of this project
name: github-action-terraform-plan-storage
# Logo for this project
#logo: docs/logo.png
# License of this project
license: "APACHE2"
# Copyrights
copyrights:
- name: "Cloud Posse, LLC"
url: "https://cloudposse.com"
year: "2022"
# Canonical GitHub repo
github_repo: cloudposse/github-action-terraform-plan-storage
# Badges to display
badges:
- name: "Latest Release"
image: "https://img.shields.io/github/release/cloudposse/github-action-terraform-plan-storage.svg"
url: "https://github.com/cloudposse/github-action-terraform-plan-storage/releases/latest"
- name: "Slack Community"
image: "https://slack.cloudposse.com/badge.svg"
url: "https://slack.cloudposse.com"
- name: "Discourse Forum"
image: "https://img.shields.io/discourse/https/ask.sweetops.com/posts.svg"
url: "https://ask.sweetops.com/"
# List any related terraform modules that this module may be used with or that this module depends on.
related:
- name: "terraform-null-label"
description:
"Terraform module designed to generate consistent names and tags for resources. Use terraform-null-label to
implement a strict naming convention."
url: "https://github.com/cloudposse/terraform-null-label"
# List any resources helpful for someone to get started. For example, link to the hashicorp documentation or AWS documentation.
references:
# Short description of this project
description: |-
A GitHub Action to securely store Terraform plan files in a cloud storage (S3 or Azure Blob Storage) with metadata storage in cloud document database (DynamoDB or CosmosDB).
# Introduction to the project
introduction: |-
A Github Action to securely store Terraform plan files in a cloud storage (S3 or Azure Blob Storage) with metadata
storage in cloud document database (DynamoDB or CosmosDB). This is useful in CI/CD pipelines where you want to store
the plan files when a feature branch is opened and applied when merged.
# How to use this module. Should be an easy example to copy and paste.
usage: |-
## AWS (default)
```yaml
- name: Store Plan
uses: cloudposse/github-action-terraform-plan-storage@v1
id: store-plan
with:
action: storePlan
planPath: my-plan.tfplan
component: mycomponent
stack: core-mycomponent-use1
tableName: acme-terraform-plan-metadata
bucketName: acme-terraform-plans
- name: Get Plan
uses: cloudposse/github-action-terraform-plan-storage@v1
id: get-plan
with:
action: getPlan
planPath: my-plan.tfplan
component: mycomponent
stack: core-mycomponent-use1
tableName: acme-terraform-plan-metadata
bucketName: acme-terraform-plans
```
## Azure
```yaml
- name: Store Plan
uses: cloudposse/github-action-terraform-plan-storage@v1
id: store-plan
with:
metadataRepositoryType: cosmos
planRepositoryType: azureblob
action: storePlan
planPath: my-plan.tfplan
component: mycomponent
stack: core-mycomponent-use1
blobAccountName: tfplans
blobContainerName: plans
cosmosContainerName: terraform-plan-storage
cosmosDatabaseName: terraform-plan-storage
cosmosEndpoint: "https://my-cosmo-account.documents.azure.com:443/"
- name: Get Plan
uses: cloudposse/github-action-terraform-plan-storage@v1
id: get-plan
with:
metadataRepositoryType: cosmos
planRepositoryType: azureblob
action: getPlan
planPath: my-plan.tfplan
component: mycomponent
stack: core-mycomponent-use1
blobAccountName: tfplans
blobContainerName: plans
cosmosContainerName: terraform-plan-storage
cosmosDatabaseName: terraform-plan-storage
cosmosEndpoint: "https://my-cosmo-account.documents.azure.com:443/"
```
# How to get started quickly
#quickstart: |-
# Here's how to get started...
# Other files to include in this README from the project folder
include:
- "docs/github-action.md"
# Contributors to this project
contributors:
- name: "Matt Calhoun"
github: "mcalhoun"