|
|
|
@ -107,6 +107,10 @@ results:
|
|
|
|
|
|
|
|
|
|
from ansible.module_utils.basic import AnsibleModule
|
|
|
|
|
from ansible.module_utils.vmware_rest_client import VmwareRestClient
|
|
|
|
|
try:
|
|
|
|
|
from com.vmware.vapi.std.errors_client import Error
|
|
|
|
|
except ImportError:
|
|
|
|
|
pass
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
class VmwareTag(VmwareRestClient):
|
|
|
|
@ -160,13 +164,18 @@ class VmwareTag(VmwareRestClient):
|
|
|
|
|
self.module.fail_json(msg="Unable to find category specified using 'category_id' - %s" % category_id)
|
|
|
|
|
|
|
|
|
|
tag_spec.category_id = category_id
|
|
|
|
|
tag_id = ''
|
|
|
|
|
try:
|
|
|
|
|
tag_id = self.tag_service.create(tag_spec)
|
|
|
|
|
except Error as error:
|
|
|
|
|
self.module.fail_json(msg="%s" % self.get_error_message(error))
|
|
|
|
|
|
|
|
|
|
if tag_id:
|
|
|
|
|
self.module.exit_json(changed=True,
|
|
|
|
|
results=dict(msg="Tag '%s' created." % tag_spec.name,
|
|
|
|
|
tag_id=tag_id))
|
|
|
|
|
self.module.exit_json(changed=False,
|
|
|
|
|
results=dict(msg="No tag created", tag_id=''))
|
|
|
|
|
results=dict(msg="No tag created", tag_id=tag_id))
|
|
|
|
|
|
|
|
|
|
def state_unchanged(self):
|
|
|
|
|
"""
|
|
|
|
@ -189,7 +198,11 @@ class VmwareTag(VmwareRestClient):
|
|
|
|
|
desired_tag_desc = self.params.get('tag_description')
|
|
|
|
|
if tag_desc != desired_tag_desc:
|
|
|
|
|
tag_update_spec.description = desired_tag_desc
|
|
|
|
|
try:
|
|
|
|
|
self.tag_service.update(tag_id, tag_update_spec)
|
|
|
|
|
except Error as error:
|
|
|
|
|
self.module.fail_json(msg="%s" % self.get_error_message(error))
|
|
|
|
|
|
|
|
|
|
results['msg'] = 'Tag %s updated.' % self.tag_name
|
|
|
|
|
changed = True
|
|
|
|
|
|
|
|
|
@ -201,7 +214,10 @@ class VmwareTag(VmwareRestClient):
|
|
|
|
|
|
|
|
|
|
"""
|
|
|
|
|
tag_id = self.global_tags[self.tag_name]['tag_id']
|
|
|
|
|
try:
|
|
|
|
|
self.tag_service.delete(tag_id=tag_id)
|
|
|
|
|
except Error as error:
|
|
|
|
|
self.module.fail_json(msg="%s" % self.get_error_message(error))
|
|
|
|
|
self.module.exit_json(changed=True,
|
|
|
|
|
results=dict(msg="Tag '%s' deleted." % self.tag_name,
|
|
|
|
|
tag_id=tag_id))
|
|
|
|
|