AzLocal.UpdateManagement
0.8.86
PowerShell module to manage Azure Local (formerly Azure Stack HCI) cluster updates using Azure Update Manager APIs. Provides functions to start updates, check update status, list available updates, and monitor update runs. Renamed from AzStackHci.ManageUpdates in v0.7.3 to align with the Azure Local product name.
Minimum PowerShell version
5.1
Installation Options
Owners
Copyright
(c) Microsoft. All rights reserved.
Package Details
Author(s)
- Neil Bird Microsoft
Tags
Azure AzureLocal AzureStackHCI Updates UpdateManager HCI Automation CICD Pipeline ServiceNow ITSM Incident
Functions
Connect-AzLocalServicePrincipal Start-AzLocalClusterUpdate Get-AzLocalClusterUpdateReadiness Get-AzLocalClusterInventory Get-AzLocalClusterInfo Get-AzLocalUpdateSummary Get-AzLocalAvailableUpdates Get-AzLocalUpdateRuns Set-AzLocalClusterUpdateRingTag Invoke-AzLocalFleetOperation Get-AzLocalFleetProgress Test-AzLocalFleetHealthGate Export-AzLocalFleetState Resume-AzLocalFleetUpdate Stop-AzLocalFleetUpdate Test-AzLocalClusterHealth Get-AzLocalFleetStatusData New-AzLocalFleetStatusHtmlReport Test-AzLocalUpdateScheduleAllowed Reset-AzLocalSideloadedTag Get-AzLocalItsmConfig Test-AzLocalItsmConnection New-AzLocalIncident Copy-AzLocalPipelineExample Update-AzLocalPipelineExample Copy-AzLocalItsmSample Get-AzLocalFleetHealthFailures Test-AzLocalApplyUpdatesScheduleCoverage Get-AzLocalUpdateRunFailures Get-AzLocalApplyUpdatesScheduleConfig Resolve-AzLocalCurrentUpdateRing Get-AzLocalApplyUpdatesScheduleNextFirings New-AzLocalApplyUpdatesScheduleConfig Update-AzLocalApplyUpdatesScheduleConfig Get-AzLocalApplyUpdatesScheduleCycleCalendar Get-AzLocalFleetHealthOverview Get-AzLocalLatestSolutionVersion Get-AzLocalFleetConnectivityStatus New-AzLocalFleetConnectivityStatusSummary Add-AzLocalPipelineVersionBanner Export-AzLocalAuthValidationReport Invoke-AzLocalClusterInventory Set-AzLocalClusterUpdateRingTagFromCsv Export-AzLocalUpdateRunMonitorReport Export-AzLocalFleetUpdateStatusReport Export-AzLocalClusterUpdateReadinessReport Export-AzLocalFleetConnectivityStatusReport Export-AzLocalApplyUpdatesScheduleAudit Export-AzLocalFleetHealthStatusReport Resolve-AzLocalPipelineUpdateRing Export-AzLocalClusterReadinessGateReport Invoke-AzLocalReadinessGatedClusterUpdate Add-AzLocalApplyUpdatesStepSummary Add-AzLocalNoReadyClustersStepSummary Invoke-AzLocalItsmTicketingFromArtifact Update-AzLocalSideloadCatalog Resolve-AzLocalSideloadPlan Invoke-AzLocalSideloadUpdate Export-AzLocalSideloadStatusReport Add-AzLocalSideloadStepSummary
PSEditions
Dependencies
This module has no dependencies.
Release Notes
## Version 0.8.86 - Patch: renames the three onboarding pipeline templates from `Setup: 0N` to `Config: 0N` so the GitHub Actions sidebar (and the Azure DevOps Pipelines list) sorts the onboarding / configuration workflows ahead of the `Fleet: 0N` operational workflows. Both surfaces sort alphabetically by the workflow `name:` / definition name, and `C` (Config) sorts before `F` (Fleet); the previous `Setup:` prefix sorted AFTER `Fleet:`. Only the operator-facing `name:` (GitHub Actions) / `displayName:` (Azure DevOps) fields change - filenames, `AZLOCAL-PIPELINE-ID` values, aliases, prune logic, and all cmdlet behaviour are unchanged. Bundled pipeline README + appendix docs updated to match. No public API or behavioural change. Export count unchanged (still 60). `GENERATED_AGAINST_MODULE_VERSION` bumped from `'0.8.85'` to `'0.8.86'`.
## Version 0.8.85 - Patch: introduces Setup/Fleet naming in bundled pipeline templates, adds merged GitHub onboarding workflow `setup-validate-and-inventory.yml`, and updates pipeline refresh tooling with optional deprecated-file pruning guarded by AZLOCAL-PIPELINE-ID verification. No public API or behavioural change. Export count unchanged (still 60). `GENERATED_AGAINST_MODULE_VERSION` bumped from `'0.8.84'` to `'0.8.85'`.
## Version 0.8.83 - Patch: fix-forward for v0.8.82 Item-5. The Step.08 `UpdateLastAttempt` reconciliation in `Export-AzLocalUpdateRunMonitorReport` reads `$inv.tags` from `Get-AzLocalClusterInventory`, but the v0.8.82 inventory projection did not carry the raw ARM `tags` bag - so the "Recent update attempts with no observable updateRun" section was silently always empty in production. v0.8.83 surfaces the raw `tags` bag on every inventory row (in-memory only; the CSV / JSON export keeps its explicit `$selectColumns` whitelist - new regression test asserts both). Also wires `attempts_without_run` into the GitHub Actions `monitor-updates.yml` `jobs.outputs:` block (ADO `Set-AzLocalPipelineOutput` auto-publishes so only an ADO docstring refresh needed), and corrects the `Export-AzLocalUpdateRunMonitorReport` "6 step outputs" docstring to "7 step outputs". No public API change. Export count unchanged (still 60). All bundled pipeline templates bump `GENERATED_AGAINST_MODULE_VERSION` from `'0.8.82'` to `'0.8.83'`.
## Version 0.8.82 - Patch: four Step-summary UX polish fixes from v0.8.81 manual pipeline-run review. (1) Step.05 Summary counts table no longer duplicates labels: each row reused the shared `Get-AzLocalStatusIconMap` cell (which already includes its own label) AND appended a duplicate trailing label, producing `Ready for Update Ready for update` / `Up to Date Up to date` / `Action Required Not ready for update` / `Health Failure Clusters with Critical health failures`. Fixed by emitting the icon-map cell unmodified; the HealthFailure row keeps `(Clusters with Critical health failures)` in parentheses since it counts something different from the readiness cascade. (2) Step.05 All clusters detail table now sorts by Status priority first (`InProgress` -> `HealthFailure` -> `UpdateFailed` -> `ActionRequired` -> `SbeBlocked` -> `NeedsInvestigation` -> `ReadyForUpdate` -> `UpToDate`), then UpdateRing + ClusterName. In-flight + remediation rows surface at the top; Up-to-Date drops to the bottom. (3) Step.05 Not-Ready clusters (review first) table no longer leaves the `Blocking reasons` column as `-` for rows blocked by `UpdateFailed` / `NeedsAttention` / `InProgress` / Warning-only HealthFailure / SbeBlocked - the renderer now derives an actionable token from the Status bucket when the upstream `BlockingReasons` is empty (e.g. `UpdateInProgress (run in-flight)`, `UpdateState=NeedsAttention`, `PrerequisiteRequired (SBE update first)`, `HealthState=Failure (no Critical findings; review Warning findings)`), with `; HealthState=Warning` appended where relevant. (4) Step.10 Detailed Results Description column inline-vs-collapse threshold bumped from 120 to 280 characters, so short single-sentence descriptions render inline and only long multi-line descriptions collapse behind `<details><summary>view</summary>...</details>`. The previous 120-char cutoff put roughly half the rows inline and half collapsed on the same table, which looked broken. No public API or export-count change (still 60). All bundled pipeline templates bump `GENERATED_AGAINST_MODULE_VERSION` from `'0.8.81'` to `'0.8.82'`.
## Version 0.8.81 - Step summary polish across Steps 05-10. Step.10 fixes the KPI bug where Healthy + Unhealthy did not sum to Total (splits into Cluster Counts + Failing Checks Breakdown tables, adds `OtherClusters` step output; Detailed Results gains Title, raw FailureName and collapsible Description columns surfacing drive/volume detail e.g. file paths from `...FileSystem.Corruption.Correctable`). Steps 05-09 adopt three shared private helpers: `Get-AzLocalStatusIconMap` (host-aware GitHub Unicode vs Azure DevOps shortcodes), `Get-AzLocalClusterPortalLink` (portal deep-link wrapper) and `Get-AzLocalCtrlClickTip` (single-source Ctrl-click banner). Fixes literal shortcode text (`:white_check_mark:` etc.) rendering on Azure DevOps step summaries in Step.08 monitor + Step.09 fleet-update-status. No public API change (still 60 exports). All bundled pipeline templates bump `GENERATED_AGAINST_MODULE_VERSION` from `'0.8.80'` to `'0.8.81'`.
## Version 0.8.80 - Minor: three additive pipeline failure-rendering improvements across Step.05 / Step.08 / Step.09 / Step.10 step summaries. Q1 - Step.09 `Get-AzLocalUpdateRunFailures` attaches a `HealthCheckEvidence` array column (same-cluster Critical health-check entries within +/-2h) to HealthCheck-category rows; new private helper `Get-AzLocalUpdateRunHealthEvidence`; `-EnrichWithHealthEvidence` opt-out. Q2 - Step.05 `Test-AzLocalClusterHealth` and Step.10 `Get-AzLocalFleetHealthFailures` add per-check `Title` + full `TargetResourceID`; `Export-AzLocalFleetHealthStatusReport` wraps TargetResourceName in a portal hyperlink. Q3 - both deepest-error walkers capture step `description` alongside `errorMessage`; new `DeepestStepDescription` / `ErrorDescription` fields on `Get-AzLocalUpdateRunFailures` / `Format-AzLocalUpdateRun` / `Get-AzLocalUpdateRuns -PassThru`; Step.08 + Step.09 renderers combine the two in markdown failure cells and JUnit bodies. No new exports (still 60). `GENERATED_AGAINST_MODULE_VERSION` bumped from `'0.8.79'` to `'0.8.80'`. See CHANGELOG.md for the full v0.8.80 entry.
## Version 0.8.79 - Patch: operator break-glass override for Step.07. Adds `Force Immediate Update` to `Invoke-AzLocalReadinessGatedClusterUpdate` (`-ForceImmediateUpdate`) and `Start-AzLocalClusterUpdate` (`-IgnoreScheduleTags`), plus matching pipeline parameters `force_immediate_update` (GitHub Actions `workflow_dispatch` input) / `forceImmediateUpdate` (Azure DevOps `parameters:` boolean) both defaulting to `false`. When enabled, the per-cluster Step 3c maintenance-window gate (`UpdateStartWindow` / `UpdateExclusionsWindow` tags) is bypassed and updates start regardless of the current UTC time. Intended for emergency / out-of-window patching driven by an on-call operator. The override is UNREACHABLE from the apply-updates-schedule.yml configuration file - GHA wiring collapses the flag to `'false'` for any non-`workflow_dispatch` trigger (`${{ github.event_name == 'workflow_dispatch' && github.event.inputs.force_immediate_update || 'false' }}`), and ADO rechecks `$(Build.Reason) -eq 'Manual'` at runtime before honouring the parameter. A `WARNING:` GUI label is prepended on both pipeline hosts and a high-visibility `::warning::` (GHA) / `##vso[task.logissue type=warning]` (ADO) banner is emitted into the run log when the override fires. No new exports (still 60). All bundled pipeline templates bump `GENERATED_AGAINST_MODULE_VERSION` from `'0.8.78'` to `'0.8.79'`.
- **CHANGE (`Start-AzLocalClusterUpdate`)**: new `[switch]$IgnoreScheduleTags` parameter; when set, the Step 3c maintenance-window block is skipped and a per-cluster `Warning` is logged with the bypassed tag values. Does NOT bypass any other readiness gate.
- **CHANGE (`Invoke-AzLocalReadinessGatedClusterUpdate`)**: new `[switch]$ForceImmediateUpdate` parameter; forwards `-IgnoreScheduleTags` per cluster and emits a host-aware warning banner at the top of the apply.
- **CHANGE (`apply-updates.yml`)**: new `force_immediate_update` GHA choice / `forceImmediateUpdate` ADO boolean parameter; both enforce the manual-only constraint at the YAML layer so a scheduled cron firing can never honour the flag.
## Version 0.8.78 - Patch: pipeline-summary UX polish (`ScheduleBlocked` / `SideloadedBlocked` / `ExcludedByTag` now JUnit `<skipped>`; `Add-AzLocalApplyUpdatesStepSummary` gains `-UpToDateCount` / `-NotReadyCount`; `actions/download-artifact@v6` -> `@v7`). See CHANGELOG.md / docs/release-history.md.
For full v0.7.x and v0.8.x release notes see:
https://github.com/NeilBird/Azure-Local/blob/main/AzLocal.UpdateManagement/CHANGELOG.md
FileList
- AzLocal.UpdateManagement.nuspec
- Automation-Pipeline-Examples\github-actions\sideload-updates.yml
- docs\images\README.md
- Private\ConvertTo-SafeCsvCollection.ps1
- Private\Get-AzLocalPipelineId.ps1
- Private\Get-TagValue.ps1
- Private\Register-AzLocalSideloadCopyTask.ps1
- Private\Test-AzLocalUpdateVersionInProgressMatch.ps1
- Public\Export-AzLocalClusterReadinessGateReport.ps1
- Public\Get-AzLocalFleetHealthOverview.ps1
- Public\Reset-AzLocalSideloadedTag.ps1
- Automation-Pipeline-Examples\azure-devops\fleet-update-status.yml
- docs\cmdlet-reference.md
- ITSM\ITSM-Config-Reference.md
- Private\ConvertTo-SafeCsvField.ps1
- Private\Get-AzLocalPipelineManifest.ps1
- Private\Import-AzLocalFleetState.ps1
- Private\Resolve-AzLocalItsmSecret.ps1
- Private\Test-AzLocalUpdateWindow.ps1
- Public\Export-AzLocalClusterUpdateReadinessReport.ps1
- Public\Get-AzLocalFleetProgress.ps1
- Public\Resolve-AzLocalCurrentUpdateRing.ps1
- AzLocal.UpdateManagement.psd1
- Automation-Pipeline-Examples\azure-devops\manage-updatering-tags.yml
- docs\concepts.md
- ITSM\ITSM-Connector-Plan.md
- Private\ConvertTo-ScrubbedCliOutput.ps1
- Private\Get-AzLocalRunEndTime.ps1
- Private\Install-AzGraphExtension.ps1
- Private\Resolve-AzLocalSideloadCredential.ps1
- Private\Test-ExportPathWritable.ps1
- Public\Export-AzLocalFleetConnectivityStatusReport.ps1
- Public\Get-AzLocalFleetStatusData.ps1
- Public\Resolve-AzLocalPipelineUpdateRing.ps1
- AzLocal.UpdateManagement.psm1
- Automation-Pipeline-Examples\azure-devops\monitor-updates.yml
- docs\rbac.md
- ITSM\README.md
- Private\Export-ResultsToJUnitXml.ps1
- Private\Get-AzLocalSideloadAuthMap.ps1
- Private\Invoke-AzCliJson.ps1
- Private\Resolve-AzLocalSideloadTargetPath.ps1
- Private\Write-AzLocalPipelineNotice.ps1
- Public\Export-AzLocalFleetHealthStatusReport.ps1
- Public\Get-AzLocalItsmConfig.ps1
- Public\Resolve-AzLocalSideloadPlan.ps1
- example-update-request.json
- Automation-Pipeline-Examples\azure-devops\setup-validate-and-inventory.yml
- docs\release-history.md
- Private\Add-AzLocalPipelineStepSummary.ps1
- Private\Format-AzLocalDurationHuman.ps1
- Private\Get-AzLocalSideloadCatalog.ps1
- Private\Invoke-AzLocalItsmHttp.ps1
- Private\Resolve-AzLocalUpdateRunDeepestError.ps1
- Private\Write-AzLocalPipelineWarning.ps1
- Public\Export-AzLocalFleetState.ps1
- Public\Get-AzLocalLatestSolutionVersion.ps1
- Public\Resume-AzLocalFleetUpdate.ps1
- README.md
- Automation-Pipeline-Examples\azure-devops\sideload-updates.yml
- docs\troubleshooting.md
- Private\Convert-AzLocalScheduleSchemaVersion.ps1
- Private\Format-AzLocalIncidentBody.ps1
- Private\Get-AzLocalSideloadState.ps1
- Private\Invoke-AzLocalRemoteSolutionImport.ps1
- Private\Resolve-SafeOutputPath.ps1
- Private\Write-AzLocalUpdateLastAttemptTag.ps1
- Public\Export-AzLocalFleetUpdateStatusReport.ps1
- Public\Get-AzLocalUpdateRunFailures.ps1
- Public\Set-AzLocalClusterUpdateRingTag.ps1
- Test-Pipelines.ps1
- Automation-Pipeline-Examples\docs\appendix-pipelines.md
- docs\images\apply-updates-schedule-audit-part1.png
- Private\Convert-AzLocalSideloadCatalogSchemaVersion.ps1
- Private\Format-AzLocalUpdateLastAttemptTagValue.ps1
- Private\Get-AzLocalSolutionUpdateDownload.ps1
- Private\Invoke-AzLocalServiceNowAdapter.ps1
- Private\Resolve-WildcardDate.ps1
- Private\Write-Log.ps1
- Public\Export-AzLocalSideloadStatusReport.ps1
- Public\Get-AzLocalUpdateRuns.ps1
- Public\Set-AzLocalClusterUpdateRingTagFromCsv.ps1
- Automation-Pipeline-Examples\apply-updates-schedule.example.yml
- Automation-Pipeline-Examples\docs\appendix-release-history.md
- docs\images\apply-updates-schedule-audit-part2.png
- Private\Convert-AzLocalUpdateWindowToCron.ps1
- Private\Format-AzLocalUpdateRun.ps1
- Private\Get-AzLocalStatusIconMap.ps1
- Private\Invoke-AzLocalSideloadedAutoReset.ps1
- Private\Resolve-WildcardDateRange.ps1
- Private\Write-UpdateCsvLog.ps1
- Public\Export-AzLocalUpdateRunMonitorReport.ps1
- Public\Get-AzLocalUpdateSummary.ps1
- Public\Start-AzLocalClusterUpdate.ps1
- Automation-Pipeline-Examples\azlocal-update-management-custom-role.json
- Automation-Pipeline-Examples\docs\sideload-robocopy.md
- docs\images\apply-updates-schedule-audit-part3.png
- Private\ConvertFrom-AzLocalCronExpression.ps1
- Private\Get-AzLocalClusterPortalLink.ps1
- Private\Get-AzLocalUpdateRunHealthEvidence.ps1
- Private\Invoke-AzLocalSideloadedAutoResetForCluster.ps1
- Private\Select-AzLocalNextUpdateForCluster.ps1
- Private\Write-Utf8NoBomFile.ps1
- Public\Get-AzLocalApplyUpdatesScheduleConfig.ps1
- Public\Invoke-AzLocalClusterInventory.ps1
- Public\Stop-AzLocalFleetUpdate.ps1
- Automation-Pipeline-Examples\README.md
- Automation-Pipeline-Examples\docs\sideload.md
- docs\images\apply-updates-summary.png
- Private\ConvertFrom-AzLocalScheduleYaml.ps1
- Private\Get-AzLocalClusterReadinessStatus.ps1
- Private\Get-AzLocalUpdateRunStepStats.ps1
- Private\Invoke-AzLocalUpdateApply.ps1
- Private\Set-AzLocalClusterTagsMerge.ps1
- Public\Add-AzLocalApplyUpdatesStepSummary.ps1
- Public\Get-AzLocalApplyUpdatesScheduleCycleCalendar.ps1
- Public\Invoke-AzLocalFleetOperation.ps1
- Public\Test-AzLocalApplyUpdatesScheduleCoverage.ps1
- Automation-Pipeline-Examples\sideload-auth-map.example.csv
- Automation-Pipeline-Examples\github-actions\apply-updates-schedule-audit.yml
- docs\images\auth-smoke-test-validate-oidc.png
- Private\ConvertFrom-AzLocalUpdateExcluded.ps1
- Private\Get-AzLocalClusterUpdateRuns.ps1
- Private\Get-CurrentStepPath.ps1
- Private\Invoke-AzResourceGraphQuery.ps1
- Private\Set-AzLocalPipelineOutput.ps1
- Public\Add-AzLocalNoReadyClustersStepSummary.ps1
- Public\Get-AzLocalApplyUpdatesScheduleNextFirings.ps1
- Public\Invoke-AzLocalItsmTicketingFromArtifact.ps1
- Public\Test-AzLocalClusterHealth.ps1
- Automation-Pipeline-Examples\sideload-catalog.example.yml
- Automation-Pipeline-Examples\github-actions\apply-updates.yml
- docs\images\fleet-health-status-part-2.png
- Private\ConvertFrom-AzLocalUpdateExclusion.ps1
- Private\Get-AzLocalCtrlClickTip.ps1
- Private\Get-DeepestActiveStep.ps1
- Private\Invoke-AzRestJson.ps1
- Private\Test-AzCliAvailable.ps1
- Public\Add-AzLocalPipelineVersionBanner.ps1
- Public\Get-AzLocalAvailableUpdates.ps1
- Public\Invoke-AzLocalReadinessGatedClusterUpdate.ps1
- Public\Test-AzLocalFleetHealthGate.ps1
- Automation-Pipeline-Examples\.itsm\azurelocal-itsm.yml
- Automation-Pipeline-Examples\github-actions\assess-update-readiness.yml
- docs\images\fleet-health-status-part1.png
- Private\ConvertFrom-AzLocalUpdateLastAttemptTagValue.ps1
- Private\Get-AzLocalItsmDedupeKey.ps1
- Private\Get-DeepestErrorMessage.ps1
- Private\Invoke-FleetJobsInParallel.ps1
- Private\Test-AzLocalAllowedUpdateVersionsString.ps1
- Public\Connect-AzLocalServicePrincipal.ps1
- Public\Get-AzLocalClusterInfo.ps1
- Public\Invoke-AzLocalSideloadUpdate.ps1
- Public\Test-AzLocalItsmConnection.ps1
- Automation-Pipeline-Examples\.itsm\templates\incident-body.md
- Automation-Pipeline-Examples\github-actions\fleet-connectivity-status.yml
- docs\images\fleet-update-status.png
- Private\ConvertFrom-AzLocalUpdateSideloaded.ps1
- Private\Get-AzLocalItsmTriggerDecision.ps1
- Private\Get-ExportFormat.ps1
- Private\Invoke-FleetOpClusterAction.ps1
- Private\Test-AzLocalRemoteFileHash.ps1
- Public\Copy-AzLocalItsmSample.ps1
- Public\Get-AzLocalClusterInventory.ps1
- Public\New-AzLocalApplyUpdatesScheduleConfig.ps1
- Public\Test-AzLocalUpdateScheduleAllowed.ps1
- Automation-Pipeline-Examples\azure-devops\apply-updates-schedule-audit.yml
- Automation-Pipeline-Examples\github-actions\fleet-health-status.yml
- docs\images\github-actions-10-pipelines-view.png
- Private\ConvertFrom-AzLocalUpdateWindow.ps1
- Private\Get-AzLocalModuleRootManifestPath.ps1
- Private\Get-HealthCheckFailureSummary.ps1
- Private\New-AzLocalPipelineJUnitXml.ps1
- Private\Test-AzLocalUpdateExcludedAllowed.ps1
- Public\Copy-AzLocalPipelineExample.ps1
- Public\Get-AzLocalClusterUpdateReadiness.ps1
- Public\New-AzLocalFleetConnectivityStatusSummary.ps1
- Public\Update-AzLocalApplyUpdatesScheduleConfig.ps1
- Automation-Pipeline-Examples\azure-devops\apply-updates.yml
- Automation-Pipeline-Examples\github-actions\fleet-update-status.yml
- docs\images\inventory-clusters-run-output.png
- Private\ConvertTo-AzLocalAdditionalProperties.ps1
- Private\Get-AzLocalPipelineCustomiseMarkers.ps1
- Private\Get-LastUpdateRunErrorSummary.ps1
- Private\New-AzLocalPSRemotingSession.ps1
- Private\Test-AzLocalUpdateExclusion.ps1
- Public\Export-AzLocalApplyUpdatesScheduleAudit.ps1
- Public\Get-AzLocalFleetConnectivityStatus.ps1
- Public\New-AzLocalFleetStatusHtmlReport.ps1
- Public\Update-AzLocalPipelineExample.ps1
- Automation-Pipeline-Examples\azure-devops\assess-update-readiness.yml
- Automation-Pipeline-Examples\github-actions\manage-updatering-tags.yml
- docs\images\monitor-inflight-updates.png
- Private\ConvertTo-AzLocalUpdateRingKqlFilter.ps1
- Private\Get-AzLocalPipelineHost.ps1
- Private\Get-LatestUpdateByYYMM.ps1
- Private\Read-AzLocalApplyUpdatesYamlCrons.ps1
- Private\Test-AzLocalUpdateSideloadedAllowed.ps1
- Public\Export-AzLocalAuthValidationReport.ps1
- Public\Get-AzLocalFleetHealthFailures.ps1
- Public\New-AzLocalIncident.ps1
- Public\Update-AzLocalSideloadCatalog.ps1
- Automation-Pipeline-Examples\azure-devops\fleet-connectivity-status.yml
- Automation-Pipeline-Examples\github-actions\monitor-updates.yml
- Automation-Pipeline-Examples\azure-devops\fleet-health-status.yml
- Automation-Pipeline-Examples\github-actions\setup-validate-and-inventory.yml