Skip to content

Commit ea79aa6

Browse files
Merge branch 'master' into NW-4074
2 parents d63f03b + a76a3cd commit ea79aa6

File tree

111 files changed

+7513
-1756
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

111 files changed

+7513
-1756
lines changed

.chglog/CHANGELOG.tpl.md

Lines changed: 0 additions & 111 deletions
This file was deleted.

.chglog/config.yml

Lines changed: 0 additions & 10 deletions
This file was deleted.

.github/workflows/lock.yml

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
name: 'Lock Threads'
2+
3+
on:
4+
schedule:
5+
- cron: '50 1 * * *'
6+
7+
jobs:
8+
lock:
9+
runs-on: ubuntu-latest
10+
steps:
11+
- uses: dessant/lock-threads@v5
12+
with:
13+
github-token: ${{ secrets.GITHUB_TOKEN }}
14+
issue-comment: >
15+
I'm going to lock this issue because it has been closed for _30 days_ ⏳. This helps our maintainers find and focus on the active issues.
16+
If you have found a problem that seems similar to this, please open a new issue and complete the issue template so we can capture all the details necessary to investigate further.
17+
issue-inactive-days: '30'
18+
pr-comment: >
19+
I'm going to lock this pull request because it has been closed for _30 days_ ⏳. This helps our maintainers find and focus on the active issues.
20+
If you have found a problem that seems related to this change, please open a new issue and complete the issue template so we can capture all the details necessary to investigate further.
21+
pr-inactive-days: '30'

.github/workflows/pr-title.yml

Lines changed: 52 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,52 @@
1+
name: 'Validate PR title'
2+
3+
on:
4+
pull_request_target:
5+
types:
6+
- opened
7+
- edited
8+
- synchronize
9+
10+
jobs:
11+
main:
12+
name: Validate PR title
13+
runs-on: ubuntu-latest
14+
steps:
15+
# Please look up the latest version from
16+
# https://github.com/amannn/action-semantic-pull-request/releases
17+
- uses: amannn/[email protected]
18+
env:
19+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
20+
with:
21+
# Configure which types are allowed.
22+
# Default: https://github.com/commitizen/conventional-commit-types
23+
types: |
24+
fix
25+
feat
26+
docs
27+
ci
28+
chore
29+
# Configure that a scope must always be provided.
30+
requireScope: false
31+
# Configure additional validation for the subject based on a regex.
32+
# This example ensures the subject starts with an uppercase character.
33+
subjectPattern: ^[A-Z].+$
34+
# If `subjectPattern` is configured, you can use this property to override
35+
# the default error message that is shown when the pattern doesn't match.
36+
# The variables `subject` and `title` can be used within the message.
37+
subjectPatternError: |
38+
The subject "{subject}" found in the pull request title "{title}"
39+
didn't match the configured pattern. Please ensure that the subject
40+
starts with an uppercase character.
41+
# For work-in-progress PRs you can typically use draft pull requests
42+
# from Github. However, private repositories on the free plan don't have
43+
# this option and therefore this action allows you to opt-in to using the
44+
# special "[WIP]" prefix to indicate this state. This will avoid the
45+
# validation of the PR title and the pull request checks remain pending.
46+
# Note that a second check will be reported if this is enabled.
47+
wip: true
48+
# When using "Squash and merge" on a PR with only one commit, GitHub
49+
# will suggest using that commit message instead of the PR title for the
50+
# merge commit, and it's easy to commit this by mistake. Enable this option
51+
# to also validate the commit message for one commit PRs.
52+
validateSingleCommit: false

.github/workflows/pre-commit.yml

Lines changed: 99 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,99 @@
1+
name: Pre-Commit
2+
3+
on:
4+
pull_request:
5+
branches:
6+
- main
7+
- master
8+
9+
env:
10+
TERRAFORM_DOCS_VERSION: v0.16.0
11+
TFLINT_VERSION: v0.50.3
12+
13+
jobs:
14+
collectInputs:
15+
name: Collect workflow inputs
16+
runs-on: ubuntu-latest
17+
outputs:
18+
directories: ${{ steps.dirs.outputs.directories }}
19+
steps:
20+
- name: Checkout
21+
uses: actions/checkout@v4
22+
23+
- name: Get root directories
24+
id: dirs
25+
uses: clowdhaus/terraform-composite-actions/[email protected]
26+
27+
preCommitMinVersions:
28+
name: Min TF pre-commit
29+
needs: collectInputs
30+
runs-on: ubuntu-latest
31+
strategy:
32+
matrix:
33+
directory: ${{ fromJson(needs.collectInputs.outputs.directories) }}
34+
steps:
35+
# https://github.com/orgs/community/discussions/25678#discussioncomment-5242449
36+
- name: Delete huge unnecessary tools folder
37+
run: |
38+
rm -rf /opt/hostedtoolcache/CodeQL
39+
rm -rf /opt/hostedtoolcache/Java_Temurin-Hotspot_jdk
40+
rm -rf /opt/hostedtoolcache/Ruby
41+
rm -rf /opt/hostedtoolcache/go
42+
43+
- name: Checkout
44+
uses: actions/checkout@v4
45+
46+
- name: Terraform min/max versions
47+
id: minMax
48+
uses: clowdhaus/[email protected]
49+
with:
50+
directory: ${{ matrix.directory }}
51+
52+
- name: Pre-commit Terraform ${{ steps.minMax.outputs.minVersion }}
53+
# Run only validate pre-commit check on min version supported
54+
if: ${{ matrix.directory != '.' }}
55+
uses: clowdhaus/terraform-composite-actions/[email protected]
56+
with:
57+
terraform-version: ${{ steps.minMax.outputs.minVersion }}
58+
tflint-version: ${{ env.TFLINT_VERSION }}
59+
args: 'terraform_validate --color=always --show-diff-on-failure --files ${{ matrix.directory }}/*'
60+
61+
- name: Pre-commit Terraform ${{ steps.minMax.outputs.minVersion }}
62+
# Run only validate pre-commit check on min version supported
63+
if: ${{ matrix.directory == '.' }}
64+
uses: clowdhaus/terraform-composite-actions/[email protected]
65+
with:
66+
terraform-version: ${{ steps.minMax.outputs.minVersion }}
67+
tflint-version: ${{ env.TFLINT_VERSION }}
68+
args: 'terraform_validate --color=always --show-diff-on-failure --files $(ls *.tf)'
69+
70+
preCommitMaxVersion:
71+
name: Max TF pre-commit
72+
runs-on: ubuntu-latest
73+
needs: collectInputs
74+
steps:
75+
# https://github.com/orgs/community/discussions/25678#discussioncomment-5242449
76+
- name: Delete huge unnecessary tools folder
77+
run: |
78+
rm -rf /opt/hostedtoolcache/CodeQL
79+
rm -rf /opt/hostedtoolcache/Java_Temurin-Hotspot_jdk
80+
rm -rf /opt/hostedtoolcache/Ruby
81+
rm -rf /opt/hostedtoolcache/go
82+
83+
- name: Checkout
84+
uses: actions/checkout@v4
85+
with:
86+
ref: ${{ github.event.pull_request.head.ref }}
87+
repository: ${{github.event.pull_request.head.repo.full_name}}
88+
89+
- name: Terraform min/max versions
90+
id: minMax
91+
uses: clowdhaus/[email protected]
92+
93+
- name: Pre-commit Terraform ${{ steps.minMax.outputs.maxVersion }}
94+
uses: clowdhaus/terraform-composite-actions/[email protected]
95+
with:
96+
terraform-version: ${{ steps.minMax.outputs.maxVersion }}
97+
tflint-version: ${{ env.TFLINT_VERSION }}
98+
terraform-docs-version: ${{ env.TERRAFORM_DOCS_VERSION }}
99+
install-hcledit: true

.github/workflows/release.yml

Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
name: Release
2+
3+
on:
4+
workflow_dispatch:
5+
push:
6+
branches:
7+
- main
8+
- master
9+
paths:
10+
- '**/*.tpl'
11+
- '**/*.py'
12+
- '**/*.tf'
13+
- '.github/workflows/release.yml'
14+
15+
jobs:
16+
release:
17+
name: Release
18+
runs-on: ubuntu-latest
19+
# Skip running release workflow on forks
20+
if: github.repository_owner == 'terraform-aws-modules'
21+
steps:
22+
- name: Checkout
23+
uses: actions/checkout@v4
24+
with:
25+
persist-credentials: false
26+
fetch-depth: 0
27+
28+
- name: Release
29+
uses: cycjimmy/semantic-release-action@v4
30+
with:
31+
semantic_version: 23.0.2
32+
extra_plugins: |
33+
@semantic-release/[email protected]
34+
@semantic-release/[email protected]
35+
36+
env:
37+
GITHUB_TOKEN: ${{ secrets.SEMANTIC_RELEASE_TOKEN }}
Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
name: 'Mark or close stale issues and PRs'
2+
on:
3+
schedule:
4+
- cron: '0 0 * * *'
5+
6+
jobs:
7+
stale:
8+
runs-on: ubuntu-latest
9+
steps:
10+
- uses: actions/stale@v9
11+
with:
12+
repo-token: ${{ secrets.GITHUB_TOKEN }}
13+
# Staling issues and PR's
14+
days-before-stale: 30
15+
stale-issue-label: stale
16+
stale-pr-label: stale
17+
stale-issue-message: |
18+
This issue has been automatically marked as stale because it has been open 30 days
19+
with no activity. Remove stale label or comment or this issue will be closed in 10 days
20+
stale-pr-message: |
21+
This PR has been automatically marked as stale because it has been open 30 days
22+
with no activity. Remove stale label or comment or this PR will be closed in 10 days
23+
# Not stale if have this labels or part of milestone
24+
exempt-issue-labels: bug,wip,on-hold
25+
exempt-pr-labels: bug,wip,on-hold
26+
exempt-all-milestones: true
27+
# Close issue operations
28+
# Label will be automatically removed if the issues are no longer closed nor locked.
29+
days-before-close: 10
30+
delete-branch: true
31+
close-issue-message: This issue was automatically closed because of stale in 10 days
32+
close-pr-message: This PR was automatically closed because of stale in 10 days

0 commit comments

Comments
 (0)