From c090abdf7fc941249517a18ac1da1b40db29c0b4 Mon Sep 17 00:00:00 2001 From: Madhav Date: Mon, 3 Feb 2020 19:17:53 +0530 Subject: [PATCH 1/4] upgrading pools to 1200 Signed-off-by: Madhav --- library/oneview_storage_pool.py | 61 +++++++++++-------------- library/oneview_storage_pool_facts.py | 35 ++++++-------- oneview-ansible.md | 36 +++++---------- test/test_oneview_storage_pool.py | 36 ++++++++------- test/test_oneview_storage_pool_facts.py | 8 ++-- 5 files changed, 77 insertions(+), 99 deletions(-) diff --git a/library/oneview_storage_pool.py b/library/oneview_storage_pool.py index 90fe1bf6e..a1556a123 100644 --- a/library/oneview_storage_pool.py +++ b/library/oneview_storage_pool.py @@ -1,7 +1,7 @@ #!/usr/bin/python # -*- coding: utf-8 -*- ### -# Copyright (2016-2017) Hewlett Packard Enterprise Development LP +# Copyright (2016-2020) Hewlett Packard Enterprise Development LP # # Licensed under the Apache License, Version 2.0 (the "License"); # You may not use this file except in compliance with the License. @@ -29,7 +29,7 @@ version_added: "2.3" requirements: - "python >= 2.7.9" - - "hpOneView >= 4.0.0" + - "hpOneView >= 5.0.0" author: "Gustavo Hennig (@GustavoHennig)" options: state: @@ -61,7 +61,6 @@ storageSystemUri: "/rest/storage-systems/TXQ1010307" poolName: "FST_CPG2" delegate_to: localhost - - name: Delete the Storage Pool (prior to API500) oneview_storage_pool: hostname: 172.16.101.48 @@ -72,26 +71,24 @@ data: poolName: "FST_CPG2" delegate_to: localhost - - name: Ensure the storage pool 'FST_CPG2' is managed by the appliance (API500 onwards) oneview_storage_pool: hostname: 172.16.101.48 username: administrator password: my_password - api_version: 600 + api_version: 1200 state: present data: storageSystemUri: "/rest/storage-systems/TXQ1010307" poolName: FST_CPG2 isManaged: True delegate_to: localhost - - name: Ensure the storage pool 'FST_CPG2' is unmanaged (API500 onwards) oneview_storage_pool: hostname: 172.16.101.48 username: administrator password: my_password - api_version: 600 + api_version: 1200 state: present data: storageSystemUri: "/rest/storage-systems/TXQ1010307" @@ -108,10 +105,10 @@ ''' -from ansible.module_utils.oneview import OneViewModuleBase, OneViewModuleValueError, OneViewModuleResourceNotFound, compare +from ansible.module_utils.oneview import OneViewModule, OneViewModuleValueError, OneViewModuleResourceNotFound, compare -class StoragePoolModule(OneViewModuleBase): +class StoragePoolModule(OneViewModule): MSG_CREATED = 'Storage Pool added successfully.' MSG_ALREADY_PRESENT = 'Storage Pool is already present.' MSG_UPDATED = 'Storage Pool was updated.' @@ -134,58 +131,54 @@ def __init__(self): ) super(StoragePoolModule, self).__init__(additional_arg_spec=argument_spec) - self.resource_client = self.oneview_client.storage_pools + self.set_resource_object(self.oneview_client.storage_pools) def execute_module(self): - resource = self.__get_by('name') if self.oneview_client.api_version >= 500 else self.__get_by('poolName') + + if not self.data.get("poolName") and not self.data.get("name"): + raise OneViewModuleValueError(self.MSG_MANDATORY_FIELD_MISSING) + + if self.data.get("poolName"): + self.current_resource = self.resource_client.get_by_name(self.data.get("poolName")) if self.state == 'present': - return self.__present(self.data, resource) + return self.__present() elif self.state == 'absent': - return self.__absent(self.data, resource) - - def __get_by(self, attribute): - if not self.data.get(attribute): - raise OneViewModuleValueError(self.MSG_MANDATORY_FIELD_MISSING) - else: - return self.get_by_name(self.data[attribute]) + return self.__absent() - def __present(self, data, resource): + def __present(self): changed = False msg = self.MSG_ALREADY_PRESENT - if not resource: + if not self.current_resource: if self.oneview_client.api_version >= 500: raise OneViewModuleResourceNotFound(self.MSG_RESOURCE_NOT_FOUND) else: - resource = self.oneview_client.storage_pools.add(data) + self.current_resource = self.resource_client.add(self.data) changed = True msg = self.MSG_CREATED else: - merged_data = resource.copy() + merged_data = self.current_resource.data.copy() merged_data.update(self.data) - if compare(resource, merged_data): + if compare(self.current_resource.data, merged_data): + changed = False msg = self.MSG_ALREADY_PRESENT else: - resource = self.resource_client.update(merged_data) + self.current_resource.update(merged_data) changed = True msg = self.MSG_UPDATED - return dict(changed=changed, - msg=msg, - ansible_facts=dict(storage_pool=resource)) + return dict(changed=changed, msg=msg, ansible_facts=dict(storage_pool=self.current_resource.data)) - def __absent(self, data, resource): + def __absent(self): if self.oneview_client.api_version >= 500: - if resource: + if self.current_resource: raise OneViewModuleResourceNotFound(self.MSG_RESOURCE_FOUND) else: - return dict(changed=False, - msg=self.MSG_ALREADY_ABSENT, - ansible_facts=dict(storage_pool=None)) + return dict(changed=False, msg=self.MSG_ALREADY_ABSENT, ansible_facts=dict(storage_pool=None)) else: - return self.resource_absent(resource, 'remove') + return self.resource_absent('remove') def main(): diff --git a/library/oneview_storage_pool_facts.py b/library/oneview_storage_pool_facts.py index 9e5a1451f..1e3c074bb 100644 --- a/library/oneview_storage_pool_facts.py +++ b/library/oneview_storage_pool_facts.py @@ -1,7 +1,7 @@ #!/usr/bin/python # -*- coding: utf-8 -*- ### -# Copyright (2016-2017) Hewlett Packard Enterprise Development LP +# Copyright (2016-2020) Hewlett Packard Enterprise Development LP # # Licensed under the Apache License, Version 2.0 (the "License"); # You may not use this file except in compliance with the License. @@ -30,7 +30,7 @@ version_added: "2.3" requirements: - "python >= 2.7.9" - - "hpOneView >= 4.0.0" + - "hpOneView >= 5.0.0" author: "Gustavo Hennig (@GustavoHennig)" options: name: @@ -55,42 +55,36 @@ hostname: 172.16.101.48 username: administrator password: my_password - api_version: 600 + api_version: 1200 delegate_to: localhost - - debug: var=storage_pools - - name: Gather paginated, filtered and sorted facts about Storage Pools oneview_storage_pool_facts: hostname: 172.16.101.48 username: administrator password: my_password - api_version: 600 + api_version: 1200 params: start: 0 count: 3 sort: 'name:descending' filter: status='OK' - - debug: var=storage_pools - - name: Gather facts about a Storage Pool by name oneview_storage_pool_facts: hostname: 172.16.101.48 username: administrator password: my_password - api_version: 600 + api_version: 1200 name: "CPG_FC-AO" delegate_to: localhost - - debug: var=storage_pools - - name: Gather facts about the reachable Storage Pools oneview_storage_pool_facts: hostname: 172.16.101.48 username: administrator password: my_password - api_version: 600 + api_version: 1200 options: - reachableStoragePools params: @@ -103,7 +97,6 @@ - /rest/storage-pools/5F9CA89B-C632-4F09-BC55-A8AA00DA5C4A scope_uris: '/rest/scopes/754e0dce-3cbd-4188-8923-edf86f068bf7' delegate_to: localhost - - debug: var=storage_pools_reachable_storage_pools ''' @@ -112,17 +105,16 @@ description: Has all the OneView facts about the Storage Pools. returned: Always, but can be null. type: dict - storage_pools_reachable_storage_pools: description: Has all the OneView facts about the Reachable Storage Pools. returned: Always, but can be null. type: dict ''' -from ansible.module_utils.oneview import OneViewModuleBase +from ansible.module_utils.oneview import OneViewModule -class StoragePoolFactsModule(OneViewModuleBase): +class StoragePoolFactsModule(OneViewModule): def __init__(self): argument_spec = dict( name=dict(required=False, type='str'), @@ -130,16 +122,17 @@ def __init__(self): options=dict(required=False, type='list') ) super(StoragePoolFactsModule, self).__init__(additional_arg_spec=argument_spec) - self.resource_client = self.oneview_client.storage_pools + self.set_resource_object(self.oneview_client.storage_pools) def execute_module(self): facts = {} - if self.module.params.get('name'): - storage_pool = self.oneview_client.storage_pools.get_by('name', self.module.params['name']) + pools = [] + if self.module.params['name']: + pools = self.resource_client.get_by('name', self.module.params['name']) else: - storage_pool = self.oneview_client.storage_pools.get_all(**self.facts_params) + pools = self.resource_client.get_all(**self.facts_params) - facts['storage_pools'] = storage_pool + facts['storage_pools'] = pools self.__get_options(facts) return dict(changed=False, ansible_facts=facts) diff --git a/oneview-ansible.md b/oneview-ansible.md index 6016e88bf..a75e47559 100644 --- a/oneview-ansible.md +++ b/oneview-ansible.md @@ -10070,7 +10070,7 @@ Manage OneView Storage Pool resources. Provides an interface to manage Storage Pool resources. Can add and remove. #### Requirements (on the host that executes the module) - * hpOneView >= 4.0.0 + * hpOneView >= 5.0.0 * python >= 2.7.9 #### Options @@ -10098,7 +10098,6 @@ Manage OneView Storage Pool resources. storageSystemUri: "/rest/storage-systems/TXQ1010307" poolName: "FST_CPG2" delegate_to: localhost - - name: Delete the Storage Pool (prior to API500) oneview_storage_pool: hostname: 172.16.101.48 @@ -10109,26 +10108,24 @@ Manage OneView Storage Pool resources. data: poolName: "FST_CPG2" delegate_to: localhost - - name: Ensure the storage pool 'FST_CPG2' is managed by the appliance (API500 onwards) oneview_storage_pool: hostname: 172.16.101.48 username: administrator password: my_password - api_version: 600 + api_version: 1200 state: present data: storageSystemUri: "/rest/storage-systems/TXQ1010307" poolName: FST_CPG2 isManaged: True delegate_to: localhost - - name: Ensure the storage pool 'FST_CPG2' is unmanaged (API500 onwards) oneview_storage_pool: hostname: 172.16.101.48 username: administrator password: my_password - api_version: 600 + api_version: 1200 state: present data: storageSystemUri: "/rest/storage-systems/TXQ1010307" @@ -10168,7 +10165,7 @@ Retrieve facts about one or more Storage Pools. Retrieve facts about one or more of the Storage Pools from OneView. #### Requirements (on the host that executes the module) - * hpOneView >= 4.0.0 + * hpOneView >= 5.0.0 * python >= 2.7.9 #### Options @@ -10191,48 +10188,40 @@ Retrieve facts about one or more Storage Pools. hostname: 172.16.101.48 username: administrator password: my_password - api_version: 600 + api_version: 1200 delegate_to: localhost - - debug: var=storage_pools - - name: Gather paginated, filtered and sorted facts about Storage Pools oneview_storage_pool_facts: hostname: 172.16.101.48 username: administrator password: my_password - api_version: 600 + api_version: 1200 params: start: 0 count: 3 sort: 'name:descending' filter: status='OK' - - debug: var=storage_pools - - name: Gather facts about a Storage Pool by name oneview_storage_pool_facts: hostname: 172.16.101.48 username: administrator password: my_password - api_version: 600 + api_version: 1200 name: "CPG_FC-AO" delegate_to: localhost - - debug: var=storage_pools - - name: Gather facts about the reachable Storage Pools oneview_storage_pool_facts: hostname: 172.16.101.48 username: administrator password: my_password - api_version: 600 + api_version: 1200 options: - reachableStoragePools params: sort: 'name:ascending' - - filter: status='OK' networks: - /rest/network/123456A @@ -10241,7 +10230,6 @@ Retrieve facts about one or more Storage Pools. - /rest/storage-pools/5F9CA89B-C632-4F09-BC55-A8AA00DA5C4A scope_uris: '/rest/scopes/754e0dce-3cbd-4188-8923-edf86f068bf7' delegate_to: localhost - - debug: var=storage_pools_reachable_storage_pools ``` @@ -10277,8 +10265,8 @@ Manage OneView Storage System resources. Provides an interface to manage Storage System resources. Can add, update and remove. #### Requirements (on the host that executes the module) - * python >= 2.7.9 * hpOneView >= 5.0.0 + * python >= 2.7.9 #### Options @@ -10395,8 +10383,8 @@ Retrieve facts about the OneView Storage Systems Retrieve facts about the Storage Systems from OneView. #### Requirements (on the host that executes the module) - * python >= 2.7.9 * hpOneView >= 5.0.0 + * python >= 2.7.9 #### Options @@ -11451,8 +11439,8 @@ Manage OneView Uplink Set resources. Provides an interface to manage Uplink Set resources. Can create, update, or delete. #### Requirements (on the host that executes the module) - * python >= 2.7.9 * hpOneView >= 5.0.0 + * python >= 2.7.9 #### Options @@ -11550,8 +11538,8 @@ Retrieve facts about one or more of the OneView Uplink Sets. Retrieve facts about one or more of the Uplink Sets from OneView. #### Requirements (on the host that executes the module) - * python >= 2.7.9 * hpOneView >= 5.0.0 + * python >= 2.7.9 #### Options diff --git a/test/test_oneview_storage_pool.py b/test/test_oneview_storage_pool.py index 88b3780ae..5d170f32c 100644 --- a/test/test_oneview_storage_pool.py +++ b/test/test_oneview_storage_pool.py @@ -1,7 +1,7 @@ #!/usr/bin/python # -*- coding: utf-8 -*- ### -# Copyright (2016-2017) Hewlett Packard Enterprise Development LP +# Copyright (2016-2020) Hewlett Packard Enterprise Development LP # # Licensed under the Apache License, Version 2.0 (the "License"); # You may not use this file except in compliance with the License. @@ -75,8 +75,9 @@ def specific_set_up(self, setUp): self.mock_ov_client.api_version = 300 def test_should_create_new_storage_pool(self): - self.mock_ov_client.storage_pools.get_by.return_value = [] - self.mock_ov_client.storage_pools.add.return_value = {"name": "name"} + self.resource.get_by_name.return_value = [] + self.resource.data = {"poolName": "name"} + self.resource.add.return_value = self.resource self.mock_ansible_module.params = yaml.load(YAML_STORAGE_POOL) StoragePoolModule().run() @@ -84,11 +85,11 @@ def test_should_create_new_storage_pool(self): self.mock_ansible_module.exit_json.assert_called_once_with( changed=True, msg=StoragePoolModule.MSG_CREATED, - ansible_facts=dict(storage_pool={"name": "name"}) + ansible_facts=dict(storage_pool={"poolName": "name"}) ) def test_should_do_nothing_when_storage_pool_already_exist(self): - self.mock_ov_client.storage_pools.get_by.return_value = [DICT_DEFAULT_STORAGE_POOL] + self.resource.data = DICT_DEFAULT_STORAGE_POOL self.mock_ansible_module.params = yaml.load(YAML_STORAGE_POOL) StoragePoolModule().run() @@ -100,7 +101,7 @@ def test_should_do_nothing_when_storage_pool_already_exist(self): ) def test_should_remove_storage_pool(self): - self.mock_ov_client.storage_pools.get_by.return_value = [DICT_DEFAULT_STORAGE_POOL] + self.resource.data = DICT_DEFAULT_STORAGE_POOL self.mock_ansible_module.params = yaml.load(YAML_STORAGE_POOL_ABSENT) StoragePoolModule().run() @@ -111,18 +112,21 @@ def test_should_remove_storage_pool(self): ) def test_should_do_nothing_when_storage_pool_not_exist(self): - self.mock_ov_client.storage_pools.get_by.return_value = [] + self.mock_ov_client.api_version = 500 + self.resource.get_by_name.return_value = None self.mock_ansible_module.params = yaml.load(YAML_STORAGE_POOL_ABSENT) StoragePoolModule().run() self.mock_ansible_module.exit_json.assert_called_once_with( changed=False, - msg=StoragePoolModule.MSG_ALREADY_ABSENT + msg=StoragePoolModule.MSG_ALREADY_ABSENT, + ansible_facts=dict(storage_pool=None) ) def test_should_fail_when_key_is_missing_api300(self): - self.mock_ov_client.storage_pools.get_by.return_value = [DICT_DEFAULT_STORAGE_POOL] + self.mock_ov_client.api_version = 300 + self.resource.data = DICT_DEFAULT_STORAGE_POOL self.mock_ansible_module.params = yaml.load(YAML_STORAGE_POOL_MISSING_KEY) StoragePoolModule().run() @@ -131,7 +135,7 @@ def test_should_fail_when_key_is_missing_api300(self): def test_should_fail_when_key_is_missing_api500(self): self.mock_ov_client.api_version = 500 - self.mock_ov_client.storage_pools.get_by.return_value = [DICT_DEFAULT_STORAGE_POOL] + self.resource.data = DICT_DEFAULT_STORAGE_POOL self.mock_ansible_module.params = yaml.load(YAML_STORAGE_POOL_MISSING_KEY) StoragePoolModule().run() @@ -144,7 +148,7 @@ def test_update_when_storage_pool_already_exists_and_is_different_api500(self): update_params['data']['isManaged'] = False self.mock_ansible_module.params = update_params - self.mock_ov_client.storage_pools.get_by.return_value = [DICT_DEFAULT_STORAGE_POOL_500] + self.resource.data = DICT_DEFAULT_STORAGE_POOL_500 self.mock_ov_client.storage_pools.update.return_value = update_params StoragePoolModule().run() @@ -152,14 +156,14 @@ def test_update_when_storage_pool_already_exists_and_is_different_api500(self): self.mock_ansible_module.exit_json.assert_called_once_with( changed=True, msg=StoragePoolModule.MSG_UPDATED, - ansible_facts=dict(storage_pool=update_params) + ansible_facts=dict(storage_pool=DICT_DEFAULT_STORAGE_POOL_500) ) def test_update_should_do_nothing_when_storage_pool_already_exists_and_is_equal_api500(self): self.mock_ov_client.api_version = 500 self.mock_ansible_module.params = yaml.load(YAML_STORAGE_POOL_500) - self.mock_ov_client.storage_pools.get_by.return_value = [DICT_DEFAULT_STORAGE_POOL_500] + self.resource.data = DICT_DEFAULT_STORAGE_POOL_500 StoragePoolModule().run() @@ -173,7 +177,7 @@ def test_update_should_do_nothing_when_storage_pool_is_absent_and_do_not_exists_ self.mock_ov_client.api_version = 500 self.mock_ansible_module.params = yaml.load(YAML_STORAGE_POOL_ABSENT_500) - self.mock_ov_client.storage_pools.get_by.return_value = [] + self.resource.get_by_name.return_value = None StoragePoolModule().run() @@ -185,7 +189,7 @@ def test_update_should_do_nothing_when_storage_pool_is_absent_and_do_not_exists_ def test_should_fail_when_present_but_storage_pool_is_absent_api500(self): self.mock_ov_client.api_version = 500 - self.mock_ov_client.storage_pools.get_by.return_value = [] + self.resource.get_by_name.return_value = None self.mock_ansible_module.params = yaml.load(YAML_STORAGE_POOL_500) StoragePoolModule().run() @@ -194,7 +198,7 @@ def test_should_fail_when_present_but_storage_pool_is_absent_api500(self): def test_should_fail_when_absent_but_storage_pool_exists_api500(self): self.mock_ov_client.api_version = 500 - self.mock_ov_client.storage_pools.get_by.return_value = [DICT_DEFAULT_STORAGE_POOL_500] + self.resource.data = DICT_DEFAULT_STORAGE_POOL_500 self.mock_ansible_module.params = yaml.load(YAML_STORAGE_POOL_ABSENT_500) StoragePoolModule().run() diff --git a/test/test_oneview_storage_pool_facts.py b/test/test_oneview_storage_pool_facts.py index 1f8f8403a..0eeccf338 100644 --- a/test/test_oneview_storage_pool_facts.py +++ b/test/test_oneview_storage_pool_facts.py @@ -1,7 +1,7 @@ #!/usr/bin/python # -*- coding: utf-8 -*- ### -# Copyright (2016-2017) Hewlett Packard Enterprise Development LP +# Copyright (2016-2020) Hewlett Packard Enterprise Development LP # # Licensed under the Apache License, Version 2.0 (the "License"); # You may not use this file except in compliance with the License. @@ -48,14 +48,14 @@ @pytest.mark.resource(TestStoragePoolFactsModule='storage_pools') class TestStoragePoolFactsModule(OneViewBaseFactsTest): def test_should_get_all_storage_pool(self): - self.resource.get_all.return_value = {"name": "Storage Pool Name"} + self.resource.get_all.return_value = [{"name": "Storage Pool Name"}] self.mock_ansible_module.params = PARAMS_GET_ALL StoragePoolFactsModule().run() self.mock_ansible_module.exit_json.assert_called_once_with( changed=False, - ansible_facts=dict(storage_pools=({"name": "Storage Pool Name"})) + ansible_facts=dict(storage_pools=[{"name": "Storage Pool Name"}]) ) def test_should_get_storage_pool_by_name(self): @@ -71,8 +71,8 @@ def test_should_get_storage_pool_by_name(self): def test_should_get_reachable_storage_pools(self): self.mock_ov_client.api_version = 600 - self.resource.get_by.return_value = {"name": "Storage Pool Name"} self.resource.get_reachable_storage_pools.return_value = [{'reachable': 'test'}] + self.resource.get_by.return_value = {"name": "Storage Pool Name"} self.mock_ansible_module.params = PARAMS_GET_REACHABLE_STORAGE_POOLS StoragePoolFactsModule().run() From 03f5c22ffa9fc07b2422f70a71025ac44f66e4d6 Mon Sep 17 00:00:00 2001 From: Madhav Date: Mon, 3 Feb 2020 19:18:58 +0530 Subject: [PATCH 2/4] Update CHANGELOG.md --- CHANGELOG.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 3b9f4540c..bc1aec1e3 100755 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -37,6 +37,8 @@ This release extends the planned support of the modules to OneView REST API vers - oneview_server_profile_facts - oneview_server_profile_template - oneview_server_profile_template_facts +- oneview_storage_pool +- oneview_storage_pool_facts - oneview_storage_system - oneview_storage_system_facts - oneview_storage_volume From 30a2492b6787fbe74eed621ad3927f5688741ffd Mon Sep 17 00:00:00 2001 From: Madhav Date: Mon, 3 Feb 2020 19:21:10 +0530 Subject: [PATCH 3/4] Update endpoints-support.md --- endpoints-support.md | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/endpoints-support.md b/endpoints-support.md index 0a5caa498..148fb84b6 100755 --- a/endpoints-support.md +++ b/endpoints-support.md @@ -364,12 +364,12 @@ |/rest/server-profiles/{id}/messages | GET | :white_check_mark: | :heavy_minus_sign: | :heavy_minus_sign: | :heavy_minus_sign: | :heavy_minus_sign: | |/rest/server-profiles/{id}/transformation | GET | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | | **Storage Pools** | -|/rest/storage-pools | GET | :white_check_mark: | :white_check_mark: -|/rest/storage-pools | POST | :heavy_minus_sign: | :heavy_minus_sign: -|/rest/storage-pools/reachable-storage-pools | GET | :white_check_mark: | :white_check_mark: -|/rest/storage-pools/{id} | GET | :white_check_mark: | :white_check_mark: -|/rest/storage-pools/{id} | PUT | :white_check_mark: | :white_check_mark: -|/rest/storage-pools/{id} | DELETE | :heavy_minus_sign: | :heavy_minus_sign: +|/rest/storage-pools | GET | :white_check_mark: | :white_check_mark: | :white_check_mark: | | :white_check_mark: | | :white_check_mark: | +|/rest/storage-pools | POST | :heavy_minus_sign: | :heavy_minus_sign: | :heavy_minus_sign: | :heavy_minus_sign: | :heavy_minus_sign: | +|/rest/storage-pools/reachable-storage-pools | GET | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | +|/rest/storage-pools/{id} | GET | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | +|/rest/storage-pools/{id} | PUT | :white_check_mark: | :white_check_mark:| :white_check_mark: | :white_check_mark: | :white_check_mark: | +|/rest/storage-pools/{id} | DELETE | :heavy_minus_sign: | :heavy_minus_sign: | :heavy_minus_sign: | :heavy_minus_sign: | :heavy_minus_sign: | | **Storage Systems** | |/rest/storage-systems | GET | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | |/rest/storage-systems | POST | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | From ed793ac96371ae8bcbc4ea175daa28270dbc0770 Mon Sep 17 00:00:00 2001 From: Madhav Date: Mon, 3 Feb 2020 19:22:56 +0530 Subject: [PATCH 4/4] Update endpoints-support.md --- endpoints-support.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/endpoints-support.md b/endpoints-support.md index 148fb84b6..fdd07d04a 100755 --- a/endpoints-support.md +++ b/endpoints-support.md @@ -364,7 +364,7 @@ |/rest/server-profiles/{id}/messages | GET | :white_check_mark: | :heavy_minus_sign: | :heavy_minus_sign: | :heavy_minus_sign: | :heavy_minus_sign: | |/rest/server-profiles/{id}/transformation | GET | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | | **Storage Pools** | -|/rest/storage-pools | GET | :white_check_mark: | :white_check_mark: | :white_check_mark: | | :white_check_mark: | | :white_check_mark: | +|/rest/storage-pools | GET | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | |/rest/storage-pools | POST | :heavy_minus_sign: | :heavy_minus_sign: | :heavy_minus_sign: | :heavy_minus_sign: | :heavy_minus_sign: | |/rest/storage-pools/reachable-storage-pools | GET | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | |/rest/storage-pools/{id} | GET | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: |