Releases: suzuki-shunsuke/tfaction
v0.6.2
Issues | Pull Requests | v0.6.1...v0.6.2 | Base revision
Features
#1005 #1006 #1007 Support tflint v0.47.0
Update suzuki-shunsuke/github-action-tflint to v0.16.
https://github.com/suzuki-shunsuke/github-action-tflint/releases/tag/v0.1.6
v0.6.1
Issues | Pull Requests | v0.6.0...v0.6.1 | Base revision
Fixes
#986 Fixed the pull request comment for terraform validate
@ponkio-o
AS IS
TO BE
v0.6.1-1
v0.6.0
Issues | Pull Requests | v0.5.25...v0.6.0 | Base revision
Features
#851 #876 Support Drift Detection
For details, please see the document.
tfaction enables you to detect the drift periodically and manage the drift as GitHub Issues.
This feature is disabled by default. To enable, please see the document.
tfaction creates an Issue per working directory.
tfaction checks if the drift exists at the following timing.
apply
workflowapply
workflow is run when the pull request is merged- If the job succeeds, the issue is closed.
- If the job fails, the issue is reopened.
schedule-detect-drifts
workflowschedule-detect-drifts
is run periodically- If
terraform plan
has no change, the issue is closed - If the job fails or
terraform plan
has change, the issue is reopened.
tfaction reopens the issue when the drift is detected, and closes the issue when the drift is resolved.
tfaction posts a comment and updates the issue description according to the result of the drift detection.
Example 1. An Issue is closed because terraform apply succeeded and the drift is resolved
Example 2. An Issue is opened because terraform apply fails
Example 3. Drift is checked by schedule-detect-drifts
periodically
Example 4. The latest comment is reflected to the issue description
Good point
If you already use GitHub Issues for your task management, you can add drift handling into your task management naturally.
You don't have to create issues yourself. You can manage issues in GitHub Projects, adjust the priority, and assign someone to issues.
Issue's comments become the history, so you can track when the drift is raised and which pull request caused the drift.
And comments tell you not only the existence of the drift but also the content of the drift.
You can adjust the frequency of the drift detection, and select workfing directories where the dirft detection is enabled.
v0.6.0-7
v0.6.0-6
v0.6.0-5
v0.6.0-4
v0.5.25
Issues | Pull Requests | v0.5.24...v0.5.25 | Base revision
Features
#910 scaffold-working-directory: Support skipping to create aqua.yaml
and add aqua packages
By default scaffold-working-directory creates aqua.yaml
and add some packages.
aqua init
aqua g -i open-policy-agent/conftest terraform-linters/tflint aquasecurity/tfsec hashicorp/terraform
You can skip this.
tfaction-root.yaml
scaffold_working_directory:
skip_adding_aqua_packages: true
You can configure packages and their versions in your template or you can also manage them in repository root's aqua.yaml.
v0.5.24
Issues | Pull Requests | v0.5.23...v0.5.24 | Base revision
Features
#909 scaffold-tfmigrate: Support scaffolding tfmigrate migration related files to existing pull requests
A new input pr_number
was added to the action scaffold-tfmigrate
.
e.g. .github/workflows/scaffolf-tfmigrate.yaml
- https://github.com/suzuki-shunsuke/tfaction-example/blob/f5de5ea39f807f92072dc1c71fcced9aeae3d9b0/.github/workflows/scaffold-tfmigrate.yaml#L12-L14
- https://github.com/suzuki-shunsuke/tfaction-example/blob/f5de5ea39f807f92072dc1c71fcced9aeae3d9b0/.github/workflows/scaffold-tfmigrate.yaml#L43
on:
workflow_dispatch:
inputs:
target:
description: 'target'
required: true
migration_name:
description: 'migration name. e.g. "import_foo"'
required: true
pr_number: # New
description: Pull Request Number
required: false
jobs:
scaffold-tfmigrate:
# ...
steps:
# ...
- uses: suzuki-shunsuke/tfaction/scaffold-tfmigrate@pr/909
id: scaffold-working-dir
with:
github_app_token: ${{steps.generate_token.outputs.token}}
migration_name: ${{github.event.inputs.migration_name}}
pr_number: ${{inputs.pr_number}} # New
If pr_number
is set, the action pushes a commit to the given request instead of creating a new pull request.