Contributing to Azure Local Networking Environment Validator Documentation
September 25, 2025 ยท View on GitHub
Contribution Guidelines
- Copy the TSG Template below and fill in the required sections
- Name the file according to the File Naming Conventions
- Keep content focused and actionable
- Any mitigation steps provided should be safe to perform and not disrupt the system
- Update the README.md with any new topics or files added
File Naming Conventions
Use the following naming schema for new files, use - to separate words:
Troubleshoot-Network-Test-<validator_name>.md
Example: Troubleshoot-Network-Test-HostNetworkConfigurationReadiness.md
TSG Template
# !!VALIDATOR_NAME
<table border="1" cellpadding="6" cellspacing="0" style="border-collapse:collapse; margin-bottom:1em;">
<tr>
<th style="text-align:left; width: 180px;">Name</th>
<td><strong>!!VALIDATOR_NAME</strong></td>
</tr>
<tr>
<th style="text-align:left; width: 180px;">Severity</th>
<td><strong>!!VALIDATOR_LEVEL</strong>: This validator will/will not block operations until remediated.</td>
</tr>
<tr>
<th style="text-align:left;">Applicable Scenarios</th>
<td><strong>!!WHAT_SCENARIOS_DOES_THIS_APPLY_TO? (Deployment,AddNode,Update, etc...)</strong></td>
</tr>
</table>
## Overview
!!OVERVIEW - Put a brief description of what this validator does, and why it is needed here. What components does it apply to? What does it check?
## Requirements
!!REQUIREMENTS - List what is required for this validator to pass. What causes it to fail?
- Failure Condition #1
- Failure Condition #2
You can also use this section to expand upon different scenarios and configuration. For example, the requirements might be different between scenarios.
## Troubleshooting Steps
### Review Environment Validator Output
!!OUTPUT - Capture the Alert from a test run and put it here. Modify the JSON to remove any references to nodes, ips, or timestamps. See the example below:
Review the Environment Validator output JSON. Check the `AdditionalData.Detail` field for summary of which Hosts are not configured properly. You can identify the host by the `TargetResourceID` field.
Here is an example:
```json
{
"Name": "AzStackHci_Network_Test_HostNetworkConfigurationReadiness",
"DisplayName": "Test if host network requirement meets for the deployment on all servers",
"Tags": {},
"Title": "Test host network configuration readiness",
"Status": 1,
"Severity": 2,
"Description": "Checking host network configuration readiness status on <hostnode>",
"Remediation": "Make sure host network configuration readiness is correct. Review detail message to find out the issue.",
"TargetResourceID": "<hostnode>",
"TargetResourceName": "HostNetworkReadiness",
"TargetResourceType": "HostNetworkReadiness",
"Timestamp": "\\/Date(timestamp)\\/",
"AdditionalData": {
"Detail": "On <hostnode>:\\nERROR: External VMSwitch ComputeSwitch(compute) is not having any VMNetworkAdapter attached to it.\\nERROR: Please remove the VMSwich, or add at least one VMNetworkAdapter to it.\\nPASS: DNS Client configuration has valid data for all adapters defined in intent\\nPASS: Hyper-V is running correctly on the system\\nPASS: External VMSwitch ConvergedSwitch(managementintent) have 2 VMNetworkAdapter(s) attached to it\\nPASS: At least 1 VMSwitch is having the network adapter defined in the management intent\\nPASS: All adapters defined in intent are physical NICs and Up in the system\\nPASS: Intent ManagementIntent is already defined in the system with same adapter(s)\\nPASS: Intent ComputeIntent is already defined in the system with same adapter(s)\\nPASS: Intent StorageIntent is already defined in the system with same adapter(s)",
"Status": "FAILURE",
"TimeStamp": "<timestamp>",
"Resource": "HostNetworkReadiness configuration status",
"Source": "<hostnode>"
}
}
```
---
### Failure: !!FAILURE_MESSAGE - Put any failure messages from the Detail section here, if there are multiple possible messages, split them into different sections
!!FAILURE_MESSAGE_DESCRIPTION - Put a description of the failure message here. How should it be interpreted?
### Example Failures
```text
!!EXAMPLE_FAILURE_MESSAGE
```
!!FAILURE_DESCRIPTION - What does this error mean? What should be checked?
Add more examples as needed
#### Remediation Steps
##### !!REMEDIATION_STEPS - Break down the remediation steps into larger categories, if there is only one, you can remove this section
!!REMEDIATION_STEP_DESCRIPTION - Explain what the remediation steps are, and why we take them
!!REMEDIATION_STEPS
1. Step 1
- Step 1.b
- Step 1.a
2. Step 2
and more...
Don't forget to include any cleanup steps!