Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
T
terraform-aws-s3-bucket
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Packages
Packages
Container Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Terraform Modules
terraform-aws-s3-bucket
Commits
ad80d5ab
Unverified
Commit
ad80d5ab
authored
Nov 07, 2021
by
Bryant Biggs
Committed by
GitHub
Nov 07, 2021
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
chore: Update CI workflow to use composite actions and update pre-commit versions (#115)
parent
fa1defc0
Changes
7
Hide whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
62 additions
and
76 deletions
+62
-76
pre-commit.yml
.github/workflows/pre-commit.yml
+41
-62
.pre-commit-config.yaml
.pre-commit-config.yaml
+2
-0
Makefile
Makefile
+7
-2
README.md
examples/complete/README.md
+3
-3
README.md
examples/notification/README.md
+2
-2
README.md
examples/object/README.md
+5
-5
README.md
examples/s3-replication/README.md
+2
-2
No files found.
.github/workflows/pre-commit.yml
View file @
ad80d5ab
...
...
@@ -2,98 +2,77 @@ name: Pre-Commit
on
:
pull_request
:
push
:
branches
:
-
main
-
master
env
:
TERRAFORM_DOCS_VERSION
:
v0.16.0
jobs
:
# Min Terraform version(s)
getDirectories
:
name
:
Get root directories
collectInputs
:
name
:
Collect workflow inputs
runs-on
:
ubuntu-latest
outputs
:
directories
:
${{ steps.dirs.outputs.directories }}
steps
:
-
name
:
Checkout
uses
:
actions/checkout@v2
-
name
:
Install Python
uses
:
actions/setup-python@v2
-
name
:
Build matrix
id
:
matrix
run
:
|
DIRS=$(python -c "import json; import glob; print(json.dumps([x.replace('/versions.tf', '') for x in glob.glob('./**/versions.tf', recursive=True)]))")
echo "::set-output name=directories::$DIRS"
outputs
:
directories
:
${{ steps.matrix.outputs.directories }}
-
name
:
Get root directories
id
:
dirs
uses
:
clowdhaus/terraform-composite-actions/directories@v1.3.0
preCommitMinVersions
:
name
:
Min TF
validate
needs
:
getDirectorie
s
name
:
Min TF
pre-commit
needs
:
collectInput
s
runs-on
:
ubuntu-latest
strategy
:
matrix
:
directory
:
${{ fromJson(needs.
getDirectorie
s.outputs.directories) }}
directory
:
${{ fromJson(needs.
collectInput
s.outputs.directories) }}
steps
:
-
name
:
Checkout
uses
:
actions/checkout@v2
-
name
:
Install Python
uses
:
actions/setup-python@v2
-
name
:
Terraform min/max versions
id
:
minMax
uses
:
clowdhaus/terraform-min-max@v1.0.
2
uses
:
clowdhaus/terraform-min-max@v1.0.
3
with
:
directory
:
${{ matrix.directory }}
-
name
:
Install Terraform v${{ steps.minMax.outputs.minVersion }}
uses
:
hashicorp/setup-terraform@v1
with
:
terraform_version
:
${{ steps.minMax.outputs.minVersion }}
-
name
:
Install pre-commit dependencies
run
:
pip install pre-commit
-
name
:
Execute pre-commit
-
name
:
Pre-commit Terraform ${{ steps.minMax.outputs.minVersion }}
# Run only validate pre-commit check on min version supported
if
:
${{ matrix.directory != '.' }}
run
:
pre-commit run terraform_validate --color=always --show-diff-on-failure --files ${{ matrix.directory }}/*
-
name
:
Execute pre-commit
uses
:
clowdhaus/terraform-composite-actions/pre-commit@v1.3.0
with
:
terraform-version
:
${{ steps.minMax.outputs.minVersion }}
args
:
'
terraform_validate
--color=always
--show-diff-on-failure
--files
${{
matrix.directory
}}/*'
-
name
:
Pre-commit Terraform ${{ steps.minMax.outputs.minVersion }}
# Run only validate pre-commit check on min version supported
if
:
${{ matrix.directory == '.' }}
run
:
pre-commit run terraform_validate --color=always --show-diff-on-failure --files $(ls *.tf)
uses
:
clowdhaus/terraform-composite-actions/pre-commit@v1.3.0
with
:
terraform-version
:
${{ steps.minMax.outputs.minVersion }}
args
:
'
terraform_validate
--color=always
--show-diff-on-failure
--files
$(ls
*.tf)'
# Max Terraform version
getBaseVersion
:
name
:
Module max TF version
preCommitMaxVersion
:
name
:
Max TF pre-commit
runs-on
:
ubuntu-latest
needs
:
collectInputs
steps
:
-
name
:
Checkout
uses
:
actions/checkout@v2
with
:
ref
:
${{ github.event.pull_request.head.ref }}
repository
:
${{github.event.pull_request.head.repo.full_name}}
-
name
:
Terraform min/max versions
id
:
minMax
uses
:
clowdhaus/terraform-min-max@v1.0.2
outputs
:
minVersion
:
${{ steps.minMax.outputs.minVersion }}
maxVersion
:
${{ steps.minMax.outputs.maxVersion }}
uses
:
clowdhaus/terraform-min-max@v1.0.3
preCommitMaxVersion
:
name
:
Max TF pre-commit
runs-on
:
ubuntu-latest
needs
:
getBaseVersion
strategy
:
fail-fast
:
false
matrix
:
version
:
-
${{ needs.getBaseVersion.outputs.maxVersion }}
steps
:
-
name
:
Checkout
uses
:
actions/checkout@v2
-
name
:
Install Python
uses
:
actions/setup-python@v2
-
name
:
Install Terraform v${{ matrix.version }}
uses
:
hashicorp/setup-terraform@v1
-
name
:
Pre-commit Terraform ${{ steps.minMax.outputs.maxVersion }}
uses
:
clowdhaus/terraform-composite-actions/pre-commit@v1.3.0
with
:
terraform_version
:
${{ matrix.version }}
-
name
:
Install pre-commit dependencies
run
:
|
pip install pre-commit
curl -Lo ./terraform-docs.tar.gz https://github.com/terraform-docs/terraform-docs/releases/download/v0.13.0/terraform-docs-v0.13.0-$(uname)-amd64.tar.gz && tar -xzf terraform-docs.tar.gz && chmod +x terraform-docs && sudo mv terraform-docs /usr/bin/
curl -L "$(curl -s https://api.github.com/repos/terraform-linters/tflint/releases/latest | grep -o -E "https://.+?_linux_amd64.zip")" > tflint.zip && unzip tflint.zip && rm tflint.zip && sudo mv tflint /usr/bin/
-
name
:
Execute pre-commit
# Run all pre-commit checks on max version supported
if
:
${{ matrix.version == needs.getBaseVersion.outputs.maxVersion }}
run
:
pre-commit run --color=always --show-diff-on-failure --all-files
terraform-version
:
${{ steps.minMax.outputs.maxVersion }}
terraform-docs-version
:
${{ env.TERRAFORM_DOCS_VERSION }}
.pre-commit-config.yaml
View file @
ad80d5ab
...
...
@@ -22,6 +22,8 @@ repos:
-
id
:
terraform_fmt
-
id
:
terraform_validate
-
id
:
terraform_docs
args
:
-
'
--args=--lockfile=false'
-
id
:
terraform_tflint
args
:
-
'
--args=--only=terraform_deprecated_interpolation'
...
...
Makefile
View file @
ad80d5ab
.PHONY
:
changelog release
scope
?=
"minor"
changelog-unrelease
:
git-chglog
--no-case
-o
CHANGELOG.md
changelog
:
git-chglog
-
o
CHANGELOG.md
--next-tag
`
semtag final
-s
minor
-o
`
git-chglog
-
-no-case
-o
CHANGELOG.md
--next-tag
`
semtag final
-s
$(scope)
-o
-f
`
release
:
semtag final
-s
minor
semtag final
-s
$(scope)
examples/complete/README.md
View file @
ad80d5ab
...
...
@@ -44,9 +44,9 @@ Note that this example may create resources which cost money. Run `terraform des
| Name | Source | Version |
|------|--------|---------|
|
<a
name=
"module_cloudfront_log_bucket"
></a>
[
cloudfront\_log\_bucket
](
#module\_cloudfront\_log\_bucket
)
| ../../ | |
|
<a
name=
"module_log_bucket"
></a>
[
log\_bucket
](
#module\_log\_bucket
)
| ../../ | |
|
<a
name=
"module_s3_bucket"
></a>
[
s3\_bucket
](
#module\_s3\_bucket
)
| ../../ | |
|
<a
name=
"module_cloudfront_log_bucket"
></a>
[
cloudfront\_log\_bucket
](
#module\_cloudfront\_log\_bucket
)
| ../../ |
n/a
|
|
<a
name=
"module_log_bucket"
></a>
[
log\_bucket
](
#module\_log\_bucket
)
| ../../ |
n/a
|
|
<a
name=
"module_s3_bucket"
></a>
[
s3\_bucket
](
#module\_s3\_bucket
)
| ../../ |
n/a
|
## Resources
...
...
examples/notification/README.md
View file @
ad80d5ab
...
...
@@ -36,10 +36,10 @@ Note that this example may create resources which cost money. Run `terraform des
| Name | Source | Version |
|------|--------|---------|
|
<a
name=
"module_all_notifications"
></a>
[
all\_notifications
](
#module\_all\_notifications
)
| ../../modules/notification | |
|
<a
name=
"module_all_notifications"
></a>
[
all\_notifications
](
#module\_all\_notifications
)
| ../../modules/notification |
n/a
|
|
<a
name=
"module_lambda_function1"
></a>
[
lambda\_function1
](
#module\_lambda\_function1
)
| terraform-aws-modules/lambda/aws | ~> 2.0 |
|
<a
name=
"module_lambda_function2"
></a>
[
lambda\_function2
](
#module\_lambda\_function2
)
| terraform-aws-modules/lambda/aws | ~> 2.0 |
|
<a
name=
"module_s3_bucket"
></a>
[
s3\_bucket
](
#module\_s3\_bucket
)
| ../../ | |
|
<a
name=
"module_s3_bucket"
></a>
[
s3\_bucket
](
#module\_s3\_bucket
)
| ../../ |
n/a
|
|
<a
name=
"module_sns_topic1"
></a>
[
sns\_topic1
](
#module\_sns\_topic1
)
| terraform-aws-modules/sns/aws | ~> 3.0 |
|
<a
name=
"module_sns_topic2"
></a>
[
sns\_topic2
](
#module\_sns\_topic2
)
| terraform-aws-modules/sns/aws | ~> 3.0 |
...
...
examples/object/README.md
View file @
ad80d5ab
...
...
@@ -34,11 +34,11 @@ Note that this example may create resources which cost money. Run `terraform des
| Name | Source | Version |
|------|--------|---------|
|
<a
name=
"module_object"
></a>
[
object
](
#module\_object
)
| ../../modules/object | |
|
<a
name=
"module_object_complete"
></a>
[
object\_complete
](
#module\_object\_complete
)
| ../../modules/object | |
|
<a
name=
"module_object_locked"
></a>
[
object\_locked
](
#module\_object\_locked
)
| ../../modules/object | |
|
<a
name=
"module_s3_bucket"
></a>
[
s3\_bucket
](
#module\_s3\_bucket
)
| ../../ | |
|
<a
name=
"module_s3_bucket_with_object_lock"
></a>
[
s3\_bucket\_with\_object\_lock
](
#module\_s3\_bucket\_with\_object\_lock
)
| ../../ | |
|
<a
name=
"module_object"
></a>
[
object
](
#module\_object
)
| ../../modules/object |
n/a
|
|
<a
name=
"module_object_complete"
></a>
[
object\_complete
](
#module\_object\_complete
)
| ../../modules/object |
n/a
|
|
<a
name=
"module_object_locked"
></a>
[
object\_locked
](
#module\_object\_locked
)
| ../../modules/object |
n/a
|
|
<a
name=
"module_s3_bucket"
></a>
[
s3\_bucket
](
#module\_s3\_bucket
)
| ../../ |
n/a
|
|
<a
name=
"module_s3_bucket_with_object_lock"
></a>
[
s3\_bucket\_with\_object\_lock
](
#module\_s3\_bucket\_with\_object\_lock
)
| ../../ |
n/a
|
## Resources
...
...
examples/s3-replication/README.md
View file @
ad80d5ab
...
...
@@ -37,8 +37,8 @@ Note that this example may create resources which cost money. Run `terraform des
| Name | Source | Version |
|------|--------|---------|
|
<a
name=
"module_replica_bucket"
></a>
[
replica\_bucket
](
#module\_replica\_bucket
)
| ../../ | |
|
<a
name=
"module_s3_bucket"
></a>
[
s3\_bucket
](
#module\_s3\_bucket
)
| ../../ | |
|
<a
name=
"module_replica_bucket"
></a>
[
replica\_bucket
](
#module\_replica\_bucket
)
| ../../ |
n/a
|
|
<a
name=
"module_s3_bucket"
></a>
[
s3\_bucket
](
#module\_s3\_bucket
)
| ../../ |
n/a
|
## Resources
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment