Auto Conflict Policy¶
Overview¶
Use the Auto Conflict Policy API to create, retrieve, modify, or remove BIG-IQ import-deploy conflict resolution policy to resolve conflicts which arise when importing or re-importing changed AFM objects or changed LTM AddressList objects. You can specify the conflict resolution policy to be “USE_BIGIQ”, “USE_BIGIP” or “NONE”. The value “USE_BIGIQ” means the objects on the BIG-IQ will be used. The value “USE_BIGIP” means the objects on the BIG-IP will be used. If you specify “NONE”, and import conflicts exist, the BIG-IQ UI displays a conflicts dialog which must be resolved by the user manually. By using this API when importing or re-importing changed AFM objects or changed LTM AddressList objects, you can prevent the display of the conflicts dialog and resolve the conflicts with the specified policy automatically. You can also use this API to disable the deployment of AddressList objects through LTM.
Requests¶
Examples¶
POST to create an import-deploy conflict resolution policy¶
The following example sends a POST request to create an import-deploy conflict resolution policy.
POST https://<BIG-IQ>/mgmt/cm/shared/import-deploy-settings/
The JSON in the body of the POST can look similar to the following example.
{
"name": "afmAutoConflictPolicy",
"value": "USE_BIGIQ"
}
Response¶
The response to the POST can look similar to the following.
HTTP/1.1 200 OK
{
"uuid": "d32a12db-0f6a-323f-956d-b69a754e0abc",
"name": "afmAutoConflictPolicy",
"value": "USE_BIGIQ",
"generation": 1,
"lastUpdateMicros": 1587978251595665,
"kind": "cm:shared:import-deploy-settings:importdeploysettingsstate",
"selfLink": "https://localhost/mgmt/cm/shared/import-deploy-settings/d32a12db-0f6a-323f-956d-b69a754e0abc"
}
GET to list all import-deploy conflict resolution policy¶
The following example sends a GET request to retrieve a list of all settings.
GET https://<BIG-IQ>/mgmt/cm/shared/import-deploy-settings/
Response¶
The JSON in the body of the response to the GET can look similar to the following.
HTTP/1.1 200 OK
{
"items": [{
"kind": "cm:shared:import-deploy-settings:importdeploysettingsstate",
"name": "afmAutoConflictPolicy",
"uuid": "d32a12db-0f6a-323f-956d-b69a754e0abc",
"value": "USE_BIGIP",
"selfLink": "https://localhost/mgmt/cm/shared/import-deploy-settings/d32a12db-0f6a-323f-956d-b69a754e0abc",
"generation": 2,
"lastUpdateMicros": 1593503047521205
},
{
"kind": "cm:shared:import-deploy-settings:importdeploysettingsstate",
"name": "disableAddressListDeploy",
"uuid": "b5652a7a-a387-3a56-9a15-79fbb84591bd",
"value": "false",
"selfLink": "https://localhost/mgmt/cm/shared/import-deploy-settings/b5652a7a-a387-3a56-9a15-79fbb84591bd",
"generation": 1,
"lastUpdateMicros": 1593418508313832
}
],
"generation": 34,
"kind": "cm:shared:import-deploy-settings:importdeploysettingscollectionstate",
"lastUpdateMicros": 1593503052357673,
"selfLink": "https://localhost/mgmt/cm/shared/import-deploy-settings"
}
GET to list a specific import-deploy conflict resolution policy¶
The following example sends a GET request to retrieve the setting identified by it identifier. In the following example the value of the uuid for the setting is “d32a12db-0f6a-323f-956d-b69a754e0abc”.
GET https://<BIG-IQ>/mgmt/cm/shared/import-deploy-settings/"d32a12db-0f6a-323f-956d-b69a754e0abc"
Response¶
The JSON in the body of the response to the GET can look similar to the following.
HTTP/1.1 200 OK
{
"kind": "cm:shared:import-deploy-settings:importdeploysettingsstate",
"name": "afmAutoConflictPolicy",
"uuid": "d32a12db-0f6a-323f-956d-b69a754e0abc",
"value": "USE_BIGIQ",
"selfLink": "https://localhost/mgmt/cm/shared/import-deploy-settings/d32a12db-0f6a-323f-956d-b69a754e0abc",
"generation": 2,
"lastUpdateMicros": 1593594970431003
}
PUT to modify an import-deploy conflict resolution policy¶
The following example sends a PUT request to modify an import-deploy conflict resolution policy.
PUT https://<BIG-IQ>/mgmt/cm/shared/import-deploy-settings/
The JSON in the body of the PUT can look similar to the following example.
{
"name": "afmAutoConflictPolicy",
"uuid": "d32a12db-0f6a-323f-956d-b69a754e0abc",
"value": "USE_BIGIP"
}
Response¶
The response to the PUT can look similar to the following.
HTTP/1.1 200 OK
{
"uuid": "d32a12db-0f6a-323f-956d-b69a754e0abc",
"name": "afmAutoConflictPolicy",
"value": "USE_BIGIP",
"generation": 3,
"lastUpdateMicros": 1587981010020011,
"kind": "cm:shared:import-deploy-settings:importdeploysettingsstate",
"selfLink": "https://localhost/mgmt/cm/shared/import-deploy-settings/e02ac68d-6cc2-3639-adec-5b4755d55e8a"
}
PUT to modify an import-deploy conflict resolution policy (with non-admin error)¶
The user must be an admin to use the Auto Conflict Policy API. The following example demonstrates the response if a non-admin user attempts to send a PUT request to modify an import-deploy conflict resolution policy.
PUT https://<BIG-IQ>/mgmt/cm/shared/import-deploy-settings/
The JSON in the body of the PUT can look similar to the following example.
{
"name": "afmAutoConflictPolicy",
"uuid": "d32a12db-0f6a-323f-956d-b69a754e0abc",
"value": "NONE"
}
Response (with non-admin error)¶
If the request was sent by a non-admin user, the operation fails, and the JSON in the body of the response can provide some additional information about the error.
HTTP/1.1 403 Forbidden
{
"code": 403,
"message": "not authorized",
"referer": "172.18.234.55",
"restOperationId": 15532126,
"errorStack": [],
"kind": ":resterrorresponse"
}
PUT to modify an import-deploy conflict resolution policy (with invalid value error)¶
The user must provide one of the valid values for value to use the Auto Conflict Policy API. The following example demonstrates the response if an admin user attempts to send a PUT request with an invalid value for value.
PUT https://<BIG-IQ>/mgmt/cm/shared/import-deploy-settings/
The JSON in the body of the PUT can look similar to the following example. Note that “ABCD” is not a valid value.
{
"name": "afmAutoConflictPolicy",
"uuid": "d32a12db-0f6a-323f-956d-b69a754e0abc",
"value": "ABCD"
}
Response (with invalid value error)¶
If the request is sent with an invalid value in the value field, the operation fails, and the JSON in the body of the response can provide some additional information about the error.
HTTP/1.1 400 Bad Request
{
"code": 400,
"message": "Setting value is Invalid :ABCD",
"originalRequestBody": "{\"uuid\":\"d32a12db-0f6a-323f-956d-b69a754e0abc\",\"name\":\"afmAutoConflictPolicy\",\"value\":\"ABCD\",\"generation\":0,\"lastUpdateMicros\":1594232405644981,\"kind\":\"cm:shared:import-deploy-settings:importdeploysettingsstate\",\"selfLink\":\"https://localhost/mgmt/cm/shared/import-deploy-settings/d32a12db-0f6a-323f-956d-b69a754e0abc\"}",
"referer": "172.18.232.46",
"restOperationId": 16262782,
"errorStack": [],
"kind": ":resterrorresponse"
}
DELETE to delete an import-deploy conflict resolution policy¶
The following example sends a DELETE request to delete an import-deploy conflict resolution policy identified by it identifier. In the following example the value of the uuid for the setting is “d32a12db-0f6a-323f-956d-b69a754e0abc”.
DELETE https://<BIG-IQ>/mgmt/cm/shared/import-deploy-settings
The JSON in the body of the DELETE can look similar to the following example.
{
"uuid": "d32a12db-0f6a-323f-956d-b69a754e0abc"
}
Response¶
HTTP/1.1 200 OK
The JSON in the body of the response represents the deleted import-deploy conflict resolution policy setting.
{
"uuid": "d32a12db-0f6a-323f-956d-b69a754e0abc",
"generation":0,
"lastUpdateMicros":1587981387138860
}