mirror of
https://github.com/ansible-collections/community.general.git
synced 2025-06-22 00:00:22 -07:00
ACI: Implement encoded query_string (#50358)
This requires urldecode support in Ansible
This commit is contained in:
parent
f45c41ef3e
commit
f90ec17465
11 changed files with 48 additions and 44 deletions
|
@ -37,6 +37,7 @@ import os
|
|||
from copy import deepcopy
|
||||
|
||||
from ansible.module_utils.parsing.convert_bool import boolean
|
||||
from ansible.module_utils.six.moves.urllib.parse import urlencode
|
||||
from ansible.module_utils.urls import fetch_url
|
||||
from ansible.module_utils._text import to_bytes
|
||||
|
||||
|
@ -387,13 +388,13 @@ class ACIModule(object):
|
|||
# TODO: This could be designed to update existing keys
|
||||
def update_qs(self, params):
|
||||
''' Append key-value pairs to self.filter_string '''
|
||||
accepted_params = dict((k, v) for (k, v) in params.items() if v)
|
||||
accepted_params = dict((k, v) for (k, v) in params.items() if v is not None)
|
||||
if accepted_params:
|
||||
if self.filter_string:
|
||||
self.filter_string += '&'
|
||||
else:
|
||||
self.filter_string = '?'
|
||||
self.filter_string += '&'.join(['%s=%s' % (k, v) for (k, v) in accepted_params.items()])
|
||||
self.filter_string += urlencode(accepted_params)
|
||||
|
||||
# TODO: This could be designed to accept multiple obj_classes and keys
|
||||
def build_filter(self, obj_class, params):
|
||||
|
|
|
@ -31,7 +31,7 @@
|
|||
|
||||
from copy import deepcopy
|
||||
from ansible.module_utils.basic import AnsibleModule, json
|
||||
from ansible.module_utils.six.moves.urllib.parse import urljoin
|
||||
from ansible.module_utils.six.moves.urllib.parse import urlencode, urljoin
|
||||
from ansible.module_utils.urls import fetch_url
|
||||
from ansible.module_utils._text import to_native, to_bytes
|
||||
|
||||
|
@ -79,8 +79,8 @@ def issubset(subset, superset):
|
|||
|
||||
def update_qs(params):
|
||||
''' Append key-value pairs to self.filter_string '''
|
||||
accepted_params = dict((k, v) for (k, v) in params.items() if v)
|
||||
return '?' + '&'.join(['%s=%s' % (k, v) for (k, v) in accepted_params.items()])
|
||||
accepted_params = dict((k, v) for (k, v) in params.items() if v is not None)
|
||||
return '?' + urlencode(accepted_params)
|
||||
|
||||
|
||||
def msc_argument_spec():
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue