AzureUtils.psd1
|
@{ # Script module associated with this manifest. RootModule = 'AzureUtils.psm1' # Version number of this module (used by the tag pipeline to build the git tag). ModuleVersion = '0.2.0' # Pre-release label. When set, the tag becomes v{ModuleVersion}-{Prerelease} # and the PowerShell Gallery package is published as a pre-release. # Defined under PrivateData.PSData.Prerelease below. # Supported PowerShell editions (Core only -> PowerShell 7+). CompatiblePSEditions = @('Core') # Minimum PowerShell engine version. PowerShellVersion = '7.0' # Unique identifier for this module. GUID = 'd0c4f8a2-3b6e-4e1a-9f7c-2a5b8d3e1c47' Author = 'Henderson Andrade' CompanyName = 'Henderson Andrade | Personal Project' Copyright = 'Henderson Andrade | Personal Project' Description = 'Practical utility cmdlets for Azure governance, inventory, cost hygiene and security posture, built on Azure Resource Graph. Complements (does not replace) the Az modules with simple, automation-ready commands: tag inventory to/from Excel and resource-group tag inheritance (Export-/Set-AzureUtilsTagInventory, Set-AzureUtilsTagFromResourceGroup), required-tag compliance (Test-AzureUtilsTagCompliance), pipeline inventory (Get-AzureUtilsResourceInventory), and Find-* sweeps for orphaned, empty, idle and duplicate resources plus public exposure, insecure configuration, Azure Policy non-compliance and orphaned RBAC role assignments.' # Hard dependencies (auto-installed by Install-Module AzureUtils): # Az.Accounts - resolves the Azure context (Connect-AzAccount) # Az.ResourceGraph - powers the inventory query # Az.Resources - applies tags back to resources (Update-AzTag) # ImportExcel - reads/writes the .xlsx RequiredModules = @( @{ ModuleName = 'Az.Accounts'; ModuleVersion = '2.12.1' }, @{ ModuleName = 'Az.ResourceGraph'; ModuleVersion = '0.13.0' }, @{ ModuleName = 'Az.Resources'; ModuleVersion = '6.0.0' }, @{ ModuleName = 'ImportExcel'; ModuleVersion = '7.0.0' } ) # Colored table views for the Find-* result types. FormatsToProcess = @('AzureUtils.Format.ps1xml') # Only commands placed under Public/ are exported. FunctionsToExport = @( 'Export-AzureUtilsTagInventory', 'Set-AzureUtilsTagInventory', 'Set-AzureUtilsTagFromResourceGroup', 'Test-AzureUtilsTagCompliance', 'Get-AzureUtilsResourceInventory', 'Find-AzureUtilsOrphanResource', 'Find-AzureUtilsEmptyResourceGroup', 'Find-AzureUtilsPublicResource', 'Find-AzureUtilsIdleResource', 'Find-AzureUtilsInsecureConfig', 'Find-AzureUtilsPolicyNonCompliant', 'Find-AzureUtilsStaleRoleAssignment', 'Find-AzureUtilsDuplicateResource' ) CmdletsToExport = @() VariablesToExport = @() AliasesToExport = @() PrivateData = @{ PSData = @{ Tags = @('Azure', 'Governance', 'Inventory', 'Tags', 'ResourceGraph', 'FinOps', 'Excel', 'Automation', 'PSEdition_Core') LicenseUri = 'https://github.com/hendersonandrade/powershell-module-azureUtils/blob/main/LICENSE' ProjectUri = 'https://github.com/hendersonandrade/powershell-module-azureUtils' ReleaseNotes = 'See CHANGELOG.md: https://github.com/hendersonandrade/powershell-module-azureUtils/blob/main/CHANGELOG.md' # Pre-release label. Leave empty ('') for a stable release. # Prerelease = 'beta' } } } |