f5-appsvcs-extension
f5-appsvcs-extension copied to clipboard
Cant rename virtual server. Experiencing code 422 Declaration failed
Environment
- Application Services Version: 3.45.0
- BIG-IP Version: 15.1.x
Summary
After a virtual server is declared, simply changing the virtual server name evokes a 422 declaration failure error.
Steps To Reproduce
Steps to reproduce the behavior:
- Submit the following declaration:
{
"class": "AS3",
"action": "deploy",
"persist": true,
"declaration": {
"class": "ADC",
"schemaVersion": "3.13.0",
"id": "123abc",
"label": "Sample 1",
"remark": "An HTTPS sample application",
"controls": {
"trace": true
},
"Common": {
"class": "Tenant",
"Shared": {
"class": "Application",
"template": "shared",
"demo-http": {
"class": "Service_HTTP",
"virtualPort": 9999,
"redirect80": false,
"virtualAddresses": [
"10.5.20.245"
]
}
}
}
}
}
- Declaration successful.
- Submit the following declaration:
{
"class": "AS3",
"action": "deploy",
"persist": true,
"declaration": {
"class": "ADC",
"schemaVersion": "3.13.0",
"id": "123abc",
"label": "Sample 1",
"remark": "An HTTPS sample application",
"controls": {
"trace": true
},
"Common": {
"class": "Tenant",
"Shared": {
"class": "Application",
"template": "shared",
"demo-http2": {
"class": "Service_HTTP",
"virtualPort": 9999,
"redirect80": false,
"virtualAddresses": [
"10.5.20.245"
]
}
}
}
}
}
- Observe the error message
"results": [
{
"code": 422,
"message": "declaration failed",
"response": "01070333:3: Virtual Server /Common/Shared/demo-htt2 illegally shares destination address, source address, service port, ip-protocol, and vlan with Virtual Server /Common/Shared/demo-http.",
"host": "localhost",
"tenant": "Common",
"runTime": 12942
},
Expected Behavior
Declaration is successful with no error messages. Virtual server is renamed in Big-IP configuration.
Actual Behavior
Error message is observed. Strangely, the virtual server name is updated in the Big-IP configuration despite the AS3 error message. If you re-run the exact same declaration (with name change) twice then it will complete successfully the second time with no error message.