Merge "server-group-list support 'all_projects' parameter"
This commit is contained in:
commit
2fad863909
novaclient
@ -31,6 +31,13 @@ class ServerGroupsTest(utils.FixturedTestCase):
|
||||
self.assertTrue(isinstance(server_group,
|
||||
server_groups.ServerGroup))
|
||||
|
||||
def test_list_server_groups_with_all_projects(self):
|
||||
result = self.cs.server_groups.list(all_projects=True)
|
||||
self.assert_called('GET', '/os-server-groups?all_projects')
|
||||
for server_group in result:
|
||||
self.assertTrue(isinstance(server_group,
|
||||
server_groups.ServerGroup))
|
||||
|
||||
def test_create_server_group(self):
|
||||
kwargs = {'name': 'ig1',
|
||||
'policies': ['anti-affinity']}
|
||||
|
@ -2405,6 +2405,14 @@ class ShellTest(utils.TestCase):
|
||||
self.assert_called('DELETE', '/os-server-groups/56789')
|
||||
self.assert_called('DELETE', '/os-server-groups/12345', pos=-2)
|
||||
|
||||
def test_list_server_group(self):
|
||||
self.run_command('server-group-list')
|
||||
self.assert_called('GET', '/os-server-groups')
|
||||
|
||||
def test_list_server_group_with_all_projects(self):
|
||||
self.run_command('server-group-list --all-projects')
|
||||
self.assert_called('GET', '/os-server-groups?all_projects')
|
||||
|
||||
|
||||
class ShellTestV11(ShellTest):
|
||||
FAKE_ENV = {
|
||||
|
@ -39,12 +39,13 @@ class ServerGroupsManager(base.ManagerWithFind):
|
||||
"""
|
||||
resource_class = ServerGroup
|
||||
|
||||
def list(self):
|
||||
def list(self, all_projects=False):
|
||||
"""Get a list of all server groups.
|
||||
|
||||
:rtype: list of :class:`ServerGroup`.
|
||||
"""
|
||||
return self._list('/os-server-groups', 'server_groups')
|
||||
all = '?all_projects' if all_projects else ''
|
||||
return self._list('/os-server-groups%s' % all, 'server_groups')
|
||||
|
||||
def get(self, id):
|
||||
"""Get a specific server group.
|
||||
|
@ -4350,9 +4350,15 @@ def _print_server_group_details(server_group):
|
||||
utils.print_list(server_group, columns)
|
||||
|
||||
|
||||
@cliutils.arg(
|
||||
'--all-projects',
|
||||
dest='all_projects',
|
||||
action='store_true',
|
||||
default=False,
|
||||
help=_('Display server groups from all projects (Admin only).'))
|
||||
def do_server_group_list(cs, args):
|
||||
"""Print a list of all server groups."""
|
||||
server_groups = cs.server_groups.list()
|
||||
server_groups = cs.server_groups.list(args.all_projects)
|
||||
_print_server_group_details(server_groups)
|
||||
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user