AksArc.DeploymentReadiness.psd1
|
@{ # Module manifest for AksArc.DeploymentReadiness # Generated on: 2026-04-15 RootModule = 'AksArc.DeploymentReadiness.psm1' ModuleVersion = '0.8.3' GUID = 'a3e7c1d9-4f2b-4e8a-9d6c-1b5f3e7a2c4d' Author = 'smitzlroy' CompanyName = 'Community' Copyright = '(c) 2026 smitzlroy. MIT License.' Description = 'Pre-deployment readiness validation for AKS Arc on Azure Local. Validates network connectivity, endpoint reachability, cluster health, ARB status, and RBAC. Includes consolidated firewall endpoint reference and fleet-scale assessment. Follows the AzStackHci.ManageUpdates pattern.' # Minimum version of the PowerShell engine required PowerShellVersion = '5.1' # Functions to export from this module FunctionsToExport = @( 'Initialize-AksArcValidation' 'New-AksArcDeploymentPlan' 'Test-AksArcDeploymentReadiness' 'Test-AksArcNetworkConnectivity' 'Get-AksArcEndpointReference' 'Export-AksArcFirewallRules' 'Test-AksArcFleetReadiness' 'Get-AksArcFleetProgress' 'Connect-AksArcServicePrincipal' 'New-AksArcReadinessReport' 'Get-AksArcLocalContext' ) CmdletsToExport = @() VariablesToExport = @() AliasesToExport = @() # Private data for PSGallery PrivateData = @{ PSData = @{ Tags = @('AKS', 'AKS-Arc', 'Azure-Local', 'Azure-Stack-HCI', 'Readiness', 'Validation', 'Firewall', 'Endpoints', 'Fleet', 'OT') LicenseUri = 'https://github.com/smitzlroy/AksArc.DeploymentReadiness/blob/main/LICENSE' ProjectUri = 'https://github.com/smitzlroy/AksArc.DeploymentReadiness' ReleaseNotes = 'v0.8.3: Fixes from real-node validation. (1) Per-RP api-version map: Microsoft.ResourceConnector/appliances now uses 2022-10-27 and Microsoft.ExtendedLocation/customLocations uses 2021-08-15 (the global 2025-10-01 default returned NoRegisteredProviderFound for these RPs in westeurope). New Get-ApiVersionForUri helper picks the right version per resource type. (2) Gate 5 LNet detail: az stack-hci-vm network lnet show now uses --name (and --ids when available) instead of -n, which the extension does not alias. (3) Gate 8 RBAC: when az is logged in via az login --identity, account show returns user.name=systemAssignedIdentity which is not a valid --assignee value. The gate now resolves the Arc machine MSI principalId by reading the local Microsoft.HybridCompute/machines resource (machineName + RG come from azcmagent show -j via Get-AksArcLocalContext) and uses that oid for role assignment lookup. If the principalId cannot be resolved, the gate now Skips with specific guidance rather than producing a false-negative FAIL. (4) Get-AksArcLocalContext exposes new MachineName and MachineResourceGroup fields.' } } } |