UTCM.Tools.psd1
|
@{ # Core identity RootModule = 'UTCM.Tools.psm1' ModuleVersion = '1.2.0' GUID = 'c8b6d337-2a88-4f7b-b7c0-3e5d21df310a' Author = 'Tadd Axon' CompanyName = 'tadda.org' Copyright = '(c) 2026 Tadd Axon. All rights reserved.' Description = 'Unified Tenant Configuration Management (UTCM) tooling for Microsoft 365: create and retrieve configuration snapshots, compare snapshots to current tenant state, detect drift via server-side monitors, and export/report results as JSON, CSV, and HTML via the Microsoft Graph beta UTCM APIs.' # Runtime requirements PowerShellVersion = '7.0' CompatiblePSEditions = @('Core') RequiredModules = @( @{ ModuleName = 'Microsoft.Graph.Authentication'; ModuleVersion = '2.0.0' } ) # Exports (explicit — no wildcards, per Gallery best practice) FunctionsToExport = @( 'Enable-UTCM', 'Grant-UTCMWorkloadAccess', 'Initialize-UTCM', 'Test-UTCMSetup', 'Get-UTCMAvailableSnapshot', 'New-UTCMSnapshot', 'Get-UTCMSnapshot', 'Remove-UTCMSnapshot', 'Compare-UTCMConfiguration', 'Export-UTCMSnapshot', 'New-UTCMDriftReport', 'Get-UTCMTenantDriftReport', 'Get-UTCMPreset', 'Get-UTCMDrift', 'New-UTCMMonitor', 'Get-UTCMMonitor', 'Get-UTCMMonitoringResult' ) CmdletsToExport = @() VariablesToExport = @() AliasesToExport = @() # Files shipped with the module (helps packaging tools and some installers) FileList = @( 'UTCM.Tools.psd1', 'UTCM.Tools.psm1', 'Presets/resource-presets.json', 'Presets/supported-resource-types.json' ) # Gallery metadata PrivateData = @{ PSData = @{ Tags = @( 'UTCM','Microsoft365','M365','Graph','GraphAPI', 'Drift','Snapshot','TenantConfig','ConfigurationMonitoring', 'Entra','Exchange','Intune','Teams','SecurityAndCompliance', 'Windows','Linux','MacOS','PSEdition_Core' ) LicenseUri = 'https://github.com/therealtadda/M365UTCMPowershell/blob/main/LICENSE' ProjectUri = 'https://github.com/therealtadda/M365UTCMPowershell' # IconUri = 'https://raw.githubusercontent.com/therealtadda/M365UTCMPowershell/main/icon.png' ReleaseNotes = @' 1.2.0 - Added server-side drift monitoring: New-UTCMMonitor, Get-UTCMMonitor, Get-UTCMMonitoringResult, Get-UTCMDrift. - Get-UTCMSnapshot -IncludeItems normalizes both `configurationItems` and `resources`/`properties` payloads to a consistent id/displayName/type/data shape; original artifact exposed as `rawConfiguration`. - Export-UTCMSnapshot CSV/HTML now include full per-resource configuration JSON (matches JSON export fidelity). - New-UTCMDriftReport: full-fidelity expandable per-row details; CSV `NormalizedData` carries full normalized payload. - Added `ConfigurationMonitoring.Read.All` least-privilege scope for read-only cmdlets. - Hardened idempotency when assigning Entra directory roles (handles "already exists" 400). - Test-UTCMSetup resilient to Microsoft.Graph SDK object-shape differences. '@ # Prerelease = 'beta1' # Uncomment for preview builds (e.g. 1.3.0-beta1) RequireLicenseAcceptance = $false } } # Help (optional — populate when a help site exists) # HelpInfoURI = 'https://github.com/therealtadda/M365UTCMPowershell/blob/main/README.md' } |