Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
17 changes: 8 additions & 9 deletions determine-stacks/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,12 +9,12 @@ Determine which Terraform stacks to run operations on

### Inputs

| Input | Description |Required| Default |
|----------------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------|--------|---------|
|`selected-stacks` |Comma/newline-delimited list of stack patterns to include. By default, only stacks with changed files are included. Set 'selected-stacks' to override this behavior.|no |```` |
|`ignored-stacks` |Comma/newline-delimited list of stack patterns to always ignore. |no |```` |
|`core-stacks` |Comma/newline-delimited list of stack patterns to put into separate outputs. If 'override-core-stacks' is true, these will replace the default core stack patterns. |no |```` |
|`override-core-stacks`|If true, replace the default core stack patterns with those provided in 'core-stacks' input. By default, 'core-stacks' is appended to a predefined list of patterns.|no |``false``|
| Input | Description |Required| Default |
|------------------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|--------|---------------|
|`selected-stacks` |Comma/newline-delimited list of stack patterns. Supports glob wildcards (*, **) and brace expansion ({a,b}). By default, only stacks with changed files are included. |no |```` |
|`ignored-stacks` |Comma/newline-delimited list of stack patterns to ignore. Supports glob wildcards (*, **) and brace expansion ({a,b}). |no |```` |
|`core-stacks` |Comma/newline-delimited list of stack patterns for core stacks. Supports glob wildcards (*, **) and brace expansion ({a,b}). Set to empty string to disable core stack classification.|no |``__default__``|
|`additional-core-stacks`|Comma/newline-delimited list of stack patterns to append to the list of core stacks. Supports glob wildcards (*, **) and brace expansion ({a,b}). |no |```` |

### Example

Expand All @@ -24,8 +24,8 @@ Determine which Terraform stacks to run operations on
with:
# selected-stacks: # Optional, default:
# ignored-stacks: # Optional, default:
# core-stacks: # Optional, default:
# override-core-stacks: # Optional, default: false
# core-stacks: # Optional, default: __default__
# additional-core-stacks: # Optional, default:
```

## Outputs
Expand All @@ -39,7 +39,6 @@ Determine which Terraform stacks to run operations on
|`all-dev-stacks` |JSON array of all dev stacks |``${{ steps.stacks.outputs.all-dev-stacks }}`` |
|`all-prod-stacks` |JSON array of all prod stacks |``${{ steps.stacks.outputs.all-prod-stacks }}`` |
|`all-stacks` |JSON array of all stacks (dev and prod combined) |``${{ steps.stacks.outputs.all-stacks }}`` |
|`config` |CI/CD configuration from .gp.cicd.json |``${{ steps.config.outputs.result }}`` |



Expand Down
12 changes: 6 additions & 6 deletions setup-ok/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,12 +12,12 @@ Setup and install ok and its dependencies

| Input | Description |Required| Default |
|---------------------|-----------------------------------------------------------|--------|-----------|
|`ok_version` |Version of ok to install. Examples: v0.1.0, latest |yes |``v5.13.0``|
|`boilerplate_version`|Version of Boilerplate to install. Examples: 0.5.16, latest|yes |``v0.9.0`` |
|`terraform_version` |Version of Terraform to install. Examples: 1.10.1, latest |yes |``1.12.2`` |
|`terragrunt_version` |Version of Terragrunt to install. Examples: 0.71.1, latest |yes |``v0.84.1``|
|`yq_version` |Version of yq to install. Examples: v4.44.6, latest |yes |``v4.47.1``|
|`tfswitch_version` |Version of tfswitch to install. Examples: v1.4.5, latest |yes |``v1.5.0`` |
|`ok_version` |Version of ok to install. Examples: v0.1.0, latest |yes |``v5.15.3``|
|`boilerplate_version`|Version of Boilerplate to install. Examples: 0.5.16, latest|yes |``v0.10.1``|
|`terraform_version` |Version of Terraform to install. Examples: 1.10.1, latest |yes |``1.14.3`` |
|`terragrunt_version` |Version of Terragrunt to install. Examples: 0.71.1, latest |yes |``v0.96.1``|
|`yq_version` |Version of yq to install. Examples: v4.44.6, latest |yes |``v4.50.1``|
|`tfswitch_version` |Version of tfswitch to install. Examples: v1.4.5, latest |yes |``v1.13.0``|

### Example

Expand Down
43 changes: 27 additions & 16 deletions terraform-deploy/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,16 +9,21 @@ Deploy application through infrastructure

### Inputs

| Input | Description | Required | Default |
|--------------------------|--------------------------------------------------------------------------------------------------------------------------------------|----------|-----------------------------------------|
| `config` | JSON-encoded config (.gp.cicd.json) | yes | ``n/a`` |
| `stack-dir` | The path to the application stack (e.g., `stacks/dev/app-km`) | yes | ``n/a`` |
| `environment` | The semantic name of the environment (e.g., `dev`, `prod`) | yes | ``n/a`` |
| `tag` | The tag of an artifact to deploy | no | ```` |
| `target-repository` | The name of the repository (e.g., `pirates-iac`) to checkout code from. Leave empty to skip checkout and use the current repository. | no | ``${{ github.event.repository.name }}`` |
| `github-app-id` | ID of GitHub App used to get read access to the repository containing IaC | yes | ``n/a`` |
| `github-app-private-key` | Private key of GitHub App used to get read access to the repository containing IaC | yes | ``n/a`` |
| `github-deploy-key` | Repository deploy key that grants read access to shared libraries (e.g., golden-path-iac) | yes | ``n/a`` |
| Input | Description |Required| Default |
|------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|--------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|`config` |JSON-encoded config (.gp.cicd.json) |yes |``n/a`` |
|`stack-dir` |The path to the application stack (e.g., `stacks/dev/app-km`) |yes |``n/a`` |
|`environment` |The type of environment (e.g. `dev`, `prod`). Must match environment in configuration file .gp.cicd.json. |yes |``n/a`` |
|`tag` |The tag of an artifact to deploy |no |```` |
|`target-repository` |The name of the repository (e.g., `pirates-iac`) to checkout code from. Leave empty to skip checkout and use the current repository. |no |``${{ github.event.repository.name }}`` |
|`github-app-id` |App ID of GitHub App used to get read access to the repository containing IaC |no |``n/a`` |
|`github-client-id` |Client ID of GitHub App used to get read access to the repository containing IaC |no |``n/a`` |
|`github-app-private-key`|Private key of GitHub App used to get read access to the repository containing IaC |no |``n/a`` |
|`github-deploy-key` |One or more repository deploy keys that grants read access to shared libraries (e.g., golden-path-iac) |yes |``n/a`` |
|`send-deployment-event` |Whether to send an event to Datadog after successful deployment to generate DORA metrics. By default this is sent on default branch deployments (both `push` and `workflow_dispatch`), and it requires 'tag' and 'datadog-api-key' to be set. Events are skipped for `xx-` artifacts (non-default-branch builds).|no |``${{ (github.event_name == 'push' \|\| github.event_name == 'workflow_dispatch') && github.ref == format('refs/heads/{0}', github.event.repository.default_branch) }}``|
|`send-deployment-metric`|Whether to send a custom metric to Datadog after deployment. It requires 'datadog-api-key' to be set. |no |``true`` |
|`cancel-if-stale` |Whether to cancel the workflow if a newer run has already progressed further than the current run. |no |``true`` |
|`datadog-api-key` |Datadog API key for sending deployment events |no |``n/a`` |

### Example

Expand All @@ -29,18 +34,24 @@ Deploy application through infrastructure
config: # Required
stack-dir: # Required
environment: # Required
# tag: # Optional, default:
# tag: # Optional, default:
# target-repository: # Optional, default: ${{ github.event.repository.name }}
github-app-id: # Required
github-app-private-key: # Required
# github-app-id: # Optional
# github-client-id: # Optional
# github-app-private-key: # Optional
github-deploy-key: # Required
# send-deployment-event: # Optional, default: ${{ (github.event_name == 'push' || github.event_name == 'workflow_dispatch') && github.ref == format('refs/heads/{0}', github.event.repository.default_branch) }}
# send-deployment-metric: # Optional, default: true
# cancel-if-stale: # Optional, default: true
# datadog-api-key: # Optional
```

## Outputs

| Name | Description | Value |
|-------------------|------------------------------|-------------------------------------|
|`terraform-outputs`|JSON-encoded Terraform outputs|``${{ steps.apply.outputs.result }}``|
| Name | Description | Value |
|--------------------------------|--------------------------------------------|--------------------------------------------|
|`terraform-outputs` |JSON-encoded Terraform outputs |``${{ steps.apply.outputs.result }}`` |
|`__internal-datadog-dora-result`|For internal use. Datadog DORA event payload|``${{ steps.datadog-dora.outputs.result }}``|



Expand Down