Support get_restore_status in cluster_management

get_restore_status is a cluster management API to get the restore status
of NSXT.

Change-Id: Ie38dee4218f508e6ba5fafd9d42c533b01e387cc
This commit is contained in:
Ran Gu 2019-11-07 14:38:53 +08:00
parent f835ea3a65
commit d466ea1e17
3 changed files with 57 additions and 0 deletions

View File

@ -0,0 +1,28 @@
# Copyright 2019 VMware, Inc.
# All Rights Reserved
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
import mock
from vmware_nsxlib.tests.unit.v3 import nsxlib_testcase
class TestNsxLibClusterManagement(nsxlib_testcase.NsxClientTestCase):
def test_get_restore_status(self):
cluster_api = self.nsxlib.cluster_management
with mock.patch.object(self.nsxlib.client, 'get') as get:
cluster_api.get_restore_status()
get.assert_called_with('cluster/restore/status')

View File

@ -19,6 +19,7 @@ from oslo_log import log
from vmware_nsxlib._i18n import _
from vmware_nsxlib.v3 import client
from vmware_nsxlib.v3 import cluster_management
from vmware_nsxlib.v3 import core_resources
from vmware_nsxlib.v3 import exceptions
from vmware_nsxlib.v3 import lib
@ -110,6 +111,8 @@ class NsxLib(lib.NsxLibBase):
self.client, self.nsxlib_config, nsxlib=self)
self.host_switch_profiles = resources.NsxlibHostSwitchProfiles(
self.client, self.nsxlib_config, nsxlib=self)
self.cluster_management = cluster_management.NsxLibClusterManagement(
self.client, self.nsxlib_config)
# Update tag limits
self.tag_limits = self.get_tag_limits()

View File

@ -0,0 +1,26 @@
# Copyright 2019 VMware, Inc.
# All Rights Reserved
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
from vmware_nsxlib.v3 import utils
BASE_SECTION = 'cluster'
RESTORE_SECTION = BASE_SECTION + '/restore'
class NsxLibClusterManagement(utils.NsxLibApiBase):
def get_restore_status(self):
resource = RESTORE_SECTION + '/status'
return self.client.get(resource)