-
-
Notifications
You must be signed in to change notification settings - Fork 3
/
Copy pathaction.yml
77 lines (76 loc) · 2.73 KB
/
action.yml
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
name: "terraform-plan-storage"
description: "A GitHub Action securely store Terraform plan files in an S3 bucket with metadata storage in DynamoDB"
author: [email protected]
branding:
icon: "terminal"
color: "blue"
inputs:
action:
required: true
description: "which action to perform. Valid values are: 'storePlan', 'getPlan', 'taintPlan'"
default: "storePlan"
blobAccountName:
description: "the name of the Azure Blob Storage account to store the plan file"
required: false
blobContainerName:
description: "the name of the Azure Blob Storage container to store the plan file"
required: false
bucketName:
description: "the name of the S3 or GCS bucket to store the plan file"
required: false
default: "terraform-plan-storage"
commitSHA:
description: "Commit SHA to use for fetching plan"
required: false
default: ""
component:
description: "the name of the component corresponding to the plan file"
required: false
cosmosConnectionString:
description: "the connection string to the CosmosDB account to store the metadata"
required: false
cosmosContainerName:
description: "the name of the CosmosDB container to store the metadata"
required: false
cosmosDatabaseName:
description: "the name of the CosmosDB database to store the metadata"
required: false
cosmosEndpoint:
description: "the endpoint of the CosmosDB account to store the metadata"
required: false
failOnMissingPlan:
description: "Fail if plan is missing"
required: false
default: "true"
metadataRepositoryType:
description: "the type of repository where the plan file is stored. Valid values are: 'dynamo', 'cosmodb', 'firestore'"
required: false
default: "dynamo"
planPath:
description: "path to the Terraform plan file. Required for 'storePlan' and 'getPlan' actions"
planRepositoryType:
description: "the type of repository where the metadata is stored. Valid values are: 's3', 'azureblob', 'gcs'"
required: false
default: "s3"
stack:
description: "the name of the stack corresponding to the plan file"
required: false
tableName:
description: "the name of the dynamodb table to store metadata"
required: false
default: "terraform-plan-storage"
gcpProjectId:
description: "the Google Cloud project ID for GCP services (GCS, Firestore)"
required: false
gcpFirestoreDatabaseName:
description: "the name of the Firestore database to store the metadata"
required: false
default: "(default)"
gcpFirestoreCollectionName:
description: "the name of the Firestore collection to store the metadata"
required: false
default: "terraform-plan-storage"
outputs: {}
runs:
using: "node20"
main: "dist/index.js"