adx-mon ManagementCommand does not report a completion condition
- Dominant language
- Go
- Stars
- 15
- Forks
- 3
- Avg merge
- 21h 53m
- Merged PRs (30d)
- 131
Description
## Problem
`adx-mon` creates `adx.azure.com/v1alpha1` `ManagementCommand` resources to bootstrap the ADX control plane. In a deployed AKS environment, those resources can complete their intended work while `status.conditions` remains empty.
Terraform readiness logic that waits for a `Ready` or `Succeeded` condition on `ManagementCommand` therefore cannot determine completion and eventually times out. This was observed during an end-to-end TauGrid deployment validation.
The chart already documents this limitation in `charts/taugrid-core/values.yaml`: adx-mon does not currently provide a reliable ManagementCommand completion condition.
## Why this matters
Consumers need a supported, machine-readable readiness signal before they can safely sequence dependent ADX resources. Without it, automation either blocks indefinitely or relies on timing assumptions.
## Expected behavior
After a management command reaches a terminal outcome, adx-mon should expose a stable status contract, for example:
- a condition with a documented type and terminal status;
- an observed generation; and
- failure details when the command cannot complete.
## Acceptance criteria
- Define and document the status contract for `ManagementCommand` completion.
- Populate terminal success and failure conditions consistently.
- Include enough diagnostic status for clients to report failures.
- Add automated coverage for the contract.
## Workaround
Do not gate Terraform deployment on `ManagementCommand.status.conditions` until this contract is available. ADX functions that depend on asynchronously created tables should use Kusto `skipvalidation = 'true'` where appropriate.
## Upstream tracking
- [Azure/adx-mon#983](https://github.com/Azure/adx-mon/pull/983) is an open upstream pull request that adds `ManagementCommandExecuted` and related terminal status conditions. It is the direct upstream fix for this missing status contract.
- [Azure/adx-mon#975](https://github.com/Azure/adx-mon/issues/975) is a closed Function-status enhancement issue. Its related-work section explicitly identifies adding comparable conditions to `ManagementCommand` as follow-up work.
Contributor guide
Research direction
Start with charts/taugrid-core/values.yaml to understand the documented limitation, then read Azure/adx-mon#983 for the upstream status contract and implementation direction. Done means the supported ManagementCommand success and failure conditions, observed generation, diagnostics, documentation, and automated coverage are available to consumers.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- azure, kubernetes, terraform
- Domain
- backend-api-design, cloud, devops
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 25/100