[DTOSS-12175] - feat: enhance terraform module quality with automated tests and improved local/CI workflows#274
Open
josielsouzanordcloud wants to merge 1 commit intomainfrom
Conversation
#268) - Add azurerm_relay_namespace resource - Add optional private endpoint configuration - Add diagnostic settings integration - Add README with usage examples and naming constraints feat: add relay-hybrid-connection module for Azure Relay Hybrid Connections (#269) Adds a new Terraform module to create Azure Relay Hybrid Connections and Authorization Rules. The module is designed to work with an existing relay namespace created by the relay-namespace module. Add support for excluding paths from Entra ID authentication (#270) Allow container apps to specify paths (e.g., /healthcheck, /sha) that bypass authentication via the new auth_excluded_paths variable. Updated tfdocs feat: added alerts for Key Vault secrets nearing or past expiry (#271) feat: added alerts for key kault certificates nearing or past expiry (#272) fix: added default values for secret and certificate expiry alerts (#273) test: add Terraform module testing and security scanning - Add Terratest tests for managed-identity module - Valid inputs validation - Invalid inputs validation (name format) - Tests run offline (no Azure credentials required) - Add tflint integration (advisory) - Scans all modules for best practice violations - Reports issues in workflow summary - Non-blocking (178 existing issues baselined) - Add tfsec with GitHub Code Scanning (advisory) - Security scanning for Terraform misconfigurations - Results appear in Security tab, not public artifacts - Non-blocking (7 existing issues baselined) - Clean up workflow - Remove irrelevant jobs (unit tests, coverage, lint) - Update CodeQL action to v4 - Fix Go cache restore issues feat: integrate terraform quality tools and streamline local workflow - Add targets for terraform-lint, terraform-security, and terraform-test to Makefiles - Update CI/CD pipelines to dynamically use tool versions from .tool-versions - Clean up redundant boilerplate make targets to reduce clutter - Fix managed-identity linting issues by adding missing versions.tf - Disable unused Docker make includes to simplify the developer interface fix wrong line endings or no final newline removed redundant root All plugins are already installed, added to the linting loop and add check of exist tf file in a folder fix traiting whitespaces Amend managed identity testing to remove redundant provider remove comments
|
This pull request sets up GitHub code scanning for this repository. Once the scans have completed and the checks have passed, the analysis results for this pull request branch will appear on this overview. Once you merge this pull request, the 'Security' tab will show more code scanning analysis results (for example, for the default branch). Depending on your configuration and choice of analysis tool, future pull requests will be annotated with code scanning analysis results. For more information about GitHub code scanning, check out the documentation. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
This PR introduces a robust testing and quality assurance framework for our Terraform modules. It bridges the gap between local development and CI by providing standardised make targets and updating the GitHub Actions pipeline to use dynamic tool versions and enhanced security/linting checks.
Key changes
Terraform Module Quality
Tooling & Local Workflow
CI/CD Pipeline Upgrades
tfsecwith SARIF output, uploading findings directly to the GitHub Security tab.tflintpipeline failures by adding GITHUB_TOKEN for plugin downloads and implementing module-level initialisation.Type of changes
Checklist
Sensitive Information Declaration
To ensure the utmost confidentiality and protect your and others privacy, we kindly ask you to NOT including PII (Personal Identifiable Information) / PID (Personal Identifiable Data) or any other sensitive data in this PR (Pull Request) and the codebase changes. We will remove any PR that do contain any sensitive information. We really appreciate your cooperation in this matter.