Avm.Authoring
0.10.5
Minimum PowerShell version
7.4
Installation Options
Owners
Copyright
(c) Microsoft Corporation. All rights reserved.
Package Details
Author(s)
- Azure Verified Modules
Tags
Azure AVM AzureVerifiedModules Bicep Terraform Authoring CLI
Functions
Get-AvmAuthoringPlaceholder Get-AvmModuleContext Get-AvmTool Get-AvmVersion Install-AvmTool Invoke-Avm Invoke-AvmCheckConvention Invoke-AvmCheckPolicy Invoke-AvmDoctor Invoke-AvmDocs Invoke-AvmFormat Invoke-AvmLint Invoke-AvmPrCheck Invoke-AvmPreCommit Invoke-AvmSync Invoke-AvmTest Invoke-AvmTestE2e Invoke-AvmTestIntegration Invoke-AvmTestUnit Invoke-AvmTransform Update-AvmAuthoring
PSEditions
Dependencies
This module has no dependencies.
Release Notes
### Fixed
- `avm check convention` no longer reports `avm.tf.terraform-scopes-must-be-direct-children` against `.terraform` directories. `terraform init` populates `.terraform/modules/` with copies of external modules, and the scope walk read each copy as an authored Terraform root nested below `modules/` or `examples/`. Running `avm test unit` before `avm pr-check` in the same worktree was enough to fail the `check convention` step on gitignored build output the author did not write and could not move, and because the directories are correctly gitignored they never appear in `git status`. Stale ones persist across sessions, so the failure could surface days later against an unrelated change — it hit three different directories in one afternoon on `Azure/terraform-azurerm-avm-res-web-site`, reporting 9, 47 and roughly 19 errors. Scope discovery now prunes any path segment starting with `.` or named `node_modules`, which is the same exclusion `Get-AvmTerraformFile` and `Invoke-AvmTerraformTest` already applied, and the same rule now governs the `examples/*` and `modules/*` targets that `AppliesTo` expands into. See [#85](https://github.com/Azure/azure-verified-modules-tools/issues/85).
### Security
- Every GitHub Actions dependency is now pinned to a full-length commit SHA rather than a mutable tag, so a retagged upstream action cannot silently change what runs in the workflows that build, test and publish this module. Dependabot keeps the pins current and now waits 7 days before proposing an update, which shortens the window in which a compromised release would be adopted automatically. Thanks to @danfiedler-msft in [#87](https://github.com/Azure/azure-verified-modules-tools/pull/87).
FileList
- Avm.Authoring.nuspec
- Avm.Authoring.psd1
- Private\Version\Test-AvmManagedFilesVersion.ps1
- Private\Process\Assert-AvmGitWorkingTreeClean.ps1
- Engines\Terraform\Get-AvmTerraformE2eExample.ps1
- README.md
- Private\Version\Set-AvmManagedFilesVersionPin.ps1
- Private\Process\New-AvmToolPathEnvironment.ps1
- Engines\Terraform\Invoke-AvmTerraformLint.ps1
- Avm.Authoring.psm1
- Private\Version\Test-AvmModuleVersion.ps1
- Private\Process\Invoke-AvmScriptHook.ps1
- Engines\Terraform\Invoke-AvmTerraformCheckConvention.ps1
- Private\Version\Get-AvmManagedFilesVersionPinPath.ps1
- Private\Process\ConvertFrom-AvmDotEnv.ps1
- Engines\Terraform\Invoke-AvmTerraformTestSuite.ps1
- Public\Invoke-AvmFormat.ps1
- Private\Version\Resolve-AvmManagedFilesVersionPlan.ps1
- Private\Process\Invoke-AvmParallel.ps1
- Engines\Terraform\Format-AvmTerraformModule.ps1
- Public\Invoke-AvmPrCheck.ps1
- Private\Context\Read-AvmContextOverride.ps1
- Private\Process\Invoke-AvmTerraformInit.ps1
- Engines\Terraform\Invoke-AvmTerraformTransform.ps1
- Public\Invoke-AvmTestUnit.ps1
- Private\Context\Get-AvmContextRootSignature.ps1
- Private\Process\Lock-AvmTerraformPluginCache.ps1
- Resources\CustomRules\AvmAvoidStringThrow.psm1
- Public\Invoke-AvmLint.ps1
- Private\Context\Get-AvmModuleContextInternal.ps1
- Private\Process\Invoke-AvmProcess.ps1
- Resources\tflint\avm.tflint_example.hcl
- Public\Invoke-AvmTestIntegration.ps1
- Private\Context\Get-AvmReservedContextAncestor.ps1
- Private\Output\Write-AvmLog.ps1
- Resources\tflint\avm.tflint.hcl
- Public\Invoke-AvmTest.ps1
- Private\Folders\Get-AvmFolder.ps1
- Private\Output\ConvertTo-AvmResultLine.ps1
- Resources\tflint\avm.tflint_module.hcl
- Public\Get-AvmAuthoringPlaceholder.ps1
- Private\Folders\Get-AvmDescendantDirectory.ps1
- Private\Output\Assert-AvmCommandSuccess.ps1
- Resources\Rules\024-terraform-scopes-must-be-direct-children.psd1
- Public\Invoke-AvmSync.ps1
- Private\Folders\Copy-AvmTerraformModuleTree.ps1
- Private\Output\Get-AvmFailureDetail.ps1
- Resources\Rules\011-variables-tf-not-variable-tf.psd1
- Public\Invoke-AvmTestE2e.ps1
- Private\Folders\Get-AvmFileSnapshot.ps1
- Private\Output\Write-AvmResult.ps1
- Resources\Rules\010-outputs-tf-not-output-tf.psd1
- Public\Invoke-AvmCheckConvention.ps1
- Private\Folders\Test-AvmIgnoredPath.ps1
- Private\Objects\Get-AvmPropertyValue.ps1
- Resources\Rules\020-terraform-tf-must-exist.psd1
- Public\Get-AvmModuleContext.ps1
- Private\Dispatch\Get-AvmCommandTool.ps1
- Private\Layout\Test-AvmModuleLayout.ps1
- Resources\Rules\022-examples-dir-must-exist.psd1
- Public\Invoke-AvmDoctor.ps1
- Private\Dispatch\Test-AvmDisableSentinel.ps1
- Private\Config\Merge-AvmTflintConfig.ps1
- Resources\Rules\023-tests-dir-must-exist.psd1
- Public\Invoke-AvmCheckPolicy.ps1
- Private\Dispatch\Get-AvmVerbRegistry.ps1
- Private\Exceptions\AvmExceptions.ps1
- Resources\Rules\021-header-md-must-exist.psd1
- Public\Invoke-AvmPreCommit.ps1
- Private\Rules\Read-AvmRuleSet.ps1
- Engines\ManagedFiles\Sync-AvmManagedFile.ps1
- Private\Rules\Primitives\Test-AvmRuleDirectoryMustExist.ps1
- Public\Invoke-Avm.ps1
- Private\Rules\AvmRule.ps1
- Engines\ManagedFiles\Merge-AvmFileLine.ps1
- Private\Rules\Primitives\Test-AvmRuleFileMustExist.ps1
- Public\Get-AvmVersion.ps1
- Private\Tools\Read-AvmPins.ps1
- Engines\Bicep\Invoke-AvmBicepTransform.ps1
- Private\Rules\Primitives\Test-AvmRuleTerraformScopesMustBeDirectChildren.ps1
- Public\Get-AvmTool.ps1
- Private\Tools\Expand-AvmToolArchive.ps1
- Engines\Bicep\Invoke-AvmBicepTest.ps1
- Private\Rules\Primitives\Test-AvmRuleFileMustNotExist.ps1
- Public\Update-AvmAuthoring.ps1
- Private\Tools\Invoke-AvmHttp.ps1
- Engines\Bicep\Invoke-AvmBicepLint.ps1
- Resources\mapotf\pre-commit\sort_outputs.mptf.hcl
- Public\Invoke-AvmDocs.ps1
- Private\Tools\Get-AvmToolPlatform.ps1
- Engines\Bicep\Invoke-AvmBicepCheckConvention.ps1
- Resources\mapotf\pre-commit\avm_headers_for_azapi.mptf.hcl
- Public\Invoke-AvmTransform.ps1
- Private\Tools\Resolve-AvmMirrorUrl.ps1
- Engines\Bicep\Format-AvmBicepModule.ps1
- Resources\mapotf\pre-commit\order_terraform.mptf.hcl
- Public\Install-AvmTool.ps1
- Private\Tools\Find-AvmToolOnPath.ps1
- Engines\Bicep\Invoke-AvmBicepCheckPolicy.ps1
- Resources\mapotf\pre-commit\sort_variables.mptf.hcl
- Resources\PSScriptAnalyzerSettings.psd1
- Private\Tools\Test-AvmPins.ps1
- Engines\Bicep\README.md
- Resources\mapotf\pre-commit\order_resource_attrs.mptf.hcl
- Resources\avm.pins.jsonc
- Private\Tools\Lock-AvmToolCache.ps1
- Engines\Bicep\Invoke-AvmBicepDocs.ps1
- Resources\mapotf\pre-commit\move_misplaced_blocks.mptf.hcl
- Private\Assets\Resolve-AvmPinnedAsset.ps1
- Private\Tools\Resolve-AvmTool.ps1
- Engines\Terraform\Invoke-AvmTerraformDocs.ps1
- Resources\mapotf\pre-commit\order_module_attrs.mptf.hcl
- Private\Assets\Resolve-AvmPolicyBundle.ps1
- Private\Tools\Expand-AvmWindowsTarArchive.ps1
- Engines\Terraform\Invoke-AvmTerraformTestE2e.ps1
- Resources\mapotf\pre-commit\required_provider_versions.mptf.hcl
- Private\Version\Get-AvmManagedFilesVersionPin.ps1
- Private\Tools\Install-AvmToolFromPins.ps1
- Engines\Terraform\Invoke-AvmTerraformTest.ps1
- Resources\mapotf\pre-commit\main_telemetry_tf.mptf.hcl
- Private\Version\Get-AvmLatestManagedFilesVersion.ps1
- Private\Tools\Test-AvmAutoInstallDisabled.ps1
- Engines\Terraform\README.md
- Resources\mapotf\pre-commit\order_resource_meta.mptf.hcl
- Private\Version\Get-AvmLatestModuleVersion.ps1
- Private\Tools\Resolve-AvmArchiveEntryPath.ps1
- Engines\Terraform\Invoke-AvmTerraformCheckPolicy.ps1
Version History
| Version | Downloads | Last updated |
|---|---|---|
| 0.12.1 | 529 | 9/4/2026 |
| 0.12.0 | 212 | 9/4/2026 |
| 0.11.0 | 3,831 | 9/1/2026 |
| 0.10.5 (current version) | 640 | 9/1/2026 |
| 0.10.4 | 4,660 | 8/27/2026 |
| 0.10.3 | 474 | 8/27/2026 |
| 0.10.2 | 642 | 8/26/2026 |
| 0.10.1 | 6,531 | 8/20/2026 |
| 0.10.0 | 46 | 8/20/2026 |
| 0.9.5 | 1,873 | 8/19/2026 |
| 0.9.4 | 978 | 8/18/2026 |
| 0.9.3 | 324 | 8/18/2026 |
| 0.9.2 | 248 | 8/18/2026 |
| 0.9.1 | 3,148 | 8/14/2026 |
| 0.9.0 | 1,083 | 8/13/2026 |
| 0.8.1 | 2,474 | 8/12/2026 |
| 0.8.0 | 579 | 8/11/2026 |
| 0.7.0 | 374 | 8/11/2026 |
| 0.6.0 | 261 | 8/11/2026 |
| 0.5.6 | 1,921 | 8/10/2026 |
| 0.5.5 | 123 | 8/10/2026 |
| 0.5.4 | 296 | 8/10/2026 |
| 0.5.3 | 163 | 8/10/2026 |
| 0.5.2 | 1,115 | 8/7/2026 |
| 0.5.1 | 6 | 8/7/2026 |
| 0.5.0 | 5 | 8/7/2026 |
| 0.4.3 | 5 | 8/7/2026 |
| 0.4.2 | 8 | 8/7/2026 |
| 0.4.1 | 5 | 8/7/2026 |
| 0.4.0 | 6 | 8/7/2026 |
| 0.3.0 | 10 | 8/7/2026 |
| 0.2.3 | 18 | 8/5/2026 |
| 0.2.2 | 22 | 8/4/2026 |
| 0.2.1 | 4 | 8/4/2026 |
| 0.2.0 | 6 | 8/4/2026 |
| 0.1.9 | 51 | 8/3/2026 |
| 0.1.8 | 12 | 8/3/2026 |
| 0.1.7 | 21 | 7/31/2026 |
| 0.1.6 | 15 | 7/31/2026 |
| 0.1.5 | 13 | 7/31/2026 |
| 0.1.4 | 18 | 7/30/2026 |
| 0.1.3 | 4 | 7/30/2026 |
| 0.1.0 | 45 | 6/23/2026 |