π§ Azure Subscription Network Watcher is not enabled in every available region - prod.logic.yaml π΄π’
- Contextual name: π§ prod.logic.yaml π΄π’
- ID:
/ce/ca/azure/subscription/network-watcher-in-every-available-region/prod.logic.yaml
- Located in: π Azure Subscription Network Watcher is not enabled in every available region π’
Flagsβ
- π΄ Logic test results missing
- π’ Logic with extracts
- π’ Logic with test data
Input Typeβ
Type | API Name | Extracts | Extract Files | Logic Files | |
---|---|---|---|---|---|
π | π Azure Subscription | CA10__CaAzureAccount__c | 13 | 1 | 31 |
Usesβ
- π Azure Network Watcher - object.extracts.yaml
- π Azure Subscription - object.extracts.yaml
- π§ͺ test-data.json
Test Results π΄β
This policy has test-data, but no test-results found in the repo
Generationβ
File | MD5 | |
---|---|---|
Open | /ce/ca/azure/subscription/network-watcher-in-every-available-region/policy.yaml | 635D7FDFB05CD24D5DC2A3D110ADD61B |
Open | /ce/ca/azure/subscription/network-watcher-in-every-available-region/prod.logic.yaml | C1220DEA9E79CF5C167A68027FFA1369 |
Open | /types/CA10__CaAzureNetworkWatcher__c/object.extracts.yaml | 173B1F7B0677F449E887FDD2E68871B8 |
Open | /types/CA10__CaAzureAccount__c/object.extracts.yaml | 9C78116D7D6EA5327842D3BC5DCF8980 |
Open | /ce/ca/azure/subscription/network-watcher-in-every-available-region/test-data.json | 8FD2C8C4452E6057D78A8E630AD01C59 |
Generate FULL scriptβ
java -jar repo-manager.jar policies generate FULL /ce/ca/azure/subscription/network-watcher-in-every-available-region/prod.logic.yaml
Generate DEBUG scriptβ
java -jar repo-manager.jar policies generate DEBUG /ce/ca/azure/subscription/network-watcher-in-every-available-region/prod.logic.yaml
Generate CAPTURE_TEST_DATA scriptβ
java -jar repo-manager.jar policies generate CAPTURE_TEST_DATA /ce/ca/azure/subscription/network-watcher-in-every-available-region/prod.logic.yaml
Generate TESTS scriptβ
java -jar repo-manager.jar policies generate TESTS /ce/ca/azure/subscription/network-watcher-in-every-available-region/prod.logic.yaml
Execute testsβ
java -jar repo-manager.jar policies test /ce/ca/azure/subscription/network-watcher-in-every-available-region/prod.logic.yaml
Contentβ
---
inputType: "CA10__CaAzureAccount__c"
importExtracts:
- file: /types/CA10__CaAzureAccount__c/object.extracts.yaml
testData:
- file: "test-data.json"
conditions:
# only one Network Watcher per region is allowed
- status: "INCOMPLIANT"
currentStateMessage: "Network Watcher is not enabled for every available region in the Subscription."
remediationMessage: "Consider enabling Network Watcher for all available regions in the Subscription."
check:
GREATER_THAN:
left:
JSON_QUERY_NUMBER:
arg:
EXTRACT: "caJsonFrom_availableLocationNames__c"
expression: "length(values)"
undeterminedIf:
evaluationError: "The JSON query has failed."
resultTypeMismatch: "The JSON query did not return a number type."
right:
RELATED_LIST_COUNT:
relationshipName: "CA10__Azure_Network_Watchers__r"
status: "COMPLIANT"
- status: "COMPLIANT"
currentStateMessage: "Network Watcher is enabled for every available region in the Subscription."
check:
LESS_THAN_EQUAL:
left:
JSON_QUERY_NUMBER:
arg:
EXTRACT: "caJsonFrom_availableLocationNames__c"
expression: "length(values)"
undeterminedIf:
evaluationError: "The JSON query has failed."
resultTypeMismatch: "The JSON query did not return a number type."
right:
RELATED_LIST_COUNT:
relationshipName: "CA10__Azure_Network_Watchers__r"
status: "COMPLIANT"
otherwise:
status: "UNDETERMINED"
currentStateMessage: "Unexpected values in the fields."
relatedLists:
- relationshipName: "CA10__Azure_Network_Watchers__r"
importExtracts:
- file: "/types/CA10__CaAzureNetworkWatcher__c/object.extracts.yaml"
conditions:
- status: "COMPLIANT"
currentStateMessage: "Network Watcher is provisioned successfully."
check:
IS_EQUAL:
left:
EXTRACT: "CA10__provisioningState__c"
right:
TEXT: "Succeeded"
otherwise:
status: "INCOMPLIANT"
currentStateMessage: "Network Watcher was not provisioned successfully."
remediationMessage: "Try restoring Network Watcher succeeded state."