Skip to content

Commit 1e2e7da

Browse files
committed
Adding support for lsm
1 parent 81b354a commit 1e2e7da

File tree

1 file changed

+15
-0
lines changed

1 file changed

+15
-0
lines changed

plugins/module_utils/checkpoint.py

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -322,8 +322,12 @@ def api_call(module, api_call_object):
322322
if equals_code == 200:
323323
# else objects are equals and there is no need for set request
324324
if not equals_response['equals']:
325+
if 'lsm-cluster' == api_call_object:
326+
build_lsm_cluster_payload(payload, 'set')
325327
handle_call_and_set_result(connection, version, 'set-' + api_call_object, payload, module, result)
326328
elif equals_code == 404:
329+
if 'lsm-cluster' == api_call_object:
330+
build_lsm_cluster_payload(payload, 'add')
327331
handle_call_and_set_result(connection, version, 'add-' + api_call_object, payload, module, result)
328332
elif module.params['state'] == 'absent':
329333
handle_delete(equals_code, payload, delete_params, connection, version, api_call_object, module, result)
@@ -393,6 +397,17 @@ def build_rulebase_payload(api_call_object, payload, position_number):
393397
return rulebase_payload
394398

395399

400+
def build_lsm_cluster_payload(payload, operator):
401+
fields = ['security-profile', 'name-prefix', 'name-suffix', 'main-ip-address']
402+
if operator == 'add':
403+
del payload['name']
404+
else:
405+
for field in fields:
406+
if field in payload.keys():
407+
del payload[field]
408+
return payload
409+
410+
396411
def build_rulebase_command(api_call_object):
397412
rulebase_command = 'show-' + api_call_object.split('-')[0] + '-rulebase'
398413

0 commit comments

Comments
 (0)