diff options
Diffstat (limited to 'openstackclient')
| -rw-r--r-- | openstackclient/compute/v2/server.py | 26 | ||||
| -rw-r--r-- | openstackclient/identity/v3/user.py | 2 | ||||
| -rw-r--r-- | openstackclient/releasenotes/notes/bug-1543222-6f8579344ff5c958.yaml | 6 | ||||
| -rw-r--r-- | openstackclient/tests/volume/v2/test_volume.py | 48 |
4 files changed, 46 insertions, 36 deletions
diff --git a/openstackclient/compute/v2/server.py b/openstackclient/compute/v2/server.py index 2312575a..27abbe63 100644 --- a/openstackclient/compute/v2/server.py +++ b/openstackclient/compute/v2/server.py @@ -562,7 +562,7 @@ class CreateServer(command.ShowOne): else: self.log.error(_('Error creating server: %s'), parsed_args.server_name) - sys.stdout.write(_('\nError creating server')) + sys.stdout.write(_('Error creating server\n')) raise SystemExit details = _prep_server_detail(compute_client, server) @@ -646,7 +646,7 @@ class CreateServerImage(command.ShowOne): else: self.log.error(_('Error creating snapshot of server: %s'), parsed_args.server) - sys.stdout.write(_('\nError creating server snapshot')) + sys.stdout.write(_('Error creating server snapshot\n')) raise SystemExit image = _prep_image_detail(image_client, image_id) @@ -688,7 +688,7 @@ class DeleteServer(command.Command): else: self.log.error(_('Error deleting server: %s'), server_obj.id) - sys.stdout.write(_('\nError deleting server')) + sys.stdout.write(_('Error deleting server\n')) raise SystemExit @@ -1013,7 +1013,9 @@ class MigrateServer(command.Command): ): sys.stdout.write(_('Complete\n')) else: - sys.stdout.write(_('\nError migrating server')) + self.log.error(_('Error migrating server: %s'), + server.id) + sys.stdout.write(_('Error migrating server\n')) raise SystemExit @@ -1085,9 +1087,11 @@ class RebootServer(command.Command): server.id, callback=_show_progress, ): - sys.stdout.write(_('\nReboot complete\n')) + sys.stdout.write(_('Complete\n')) else: - sys.stdout.write(_('\nError rebooting server\n')) + self.log.error(_('Error rebooting server: %s'), + server.id) + sys.stdout.write(_('Error rebooting server\n')) raise SystemExit @@ -1136,9 +1140,11 @@ class RebuildServer(command.ShowOne): server.id, callback=_show_progress, ): - sys.stdout.write(_('\nComplete\n')) + sys.stdout.write(_('Complete\n')) else: - sys.stdout.write(_('\nError rebuilding server')) + self.log.error(_('Error rebuilding server: %s'), + server.id) + sys.stdout.write(_('Error rebuilding server\n')) raise SystemExit details = _prep_server_detail(compute_client, server) @@ -1290,7 +1296,9 @@ class ResizeServer(command.Command): ): sys.stdout.write(_('Complete\n')) else: - sys.stdout.write(_('\nError resizing server')) + self.log.error(_('Error resizing server: %s'), + server.id) + sys.stdout.write(_('Error resizing server\n')) raise SystemExit elif parsed_args.confirm: compute_client.servers.confirm_resize(server) diff --git a/openstackclient/identity/v3/user.py b/openstackclient/identity/v3/user.py index 9a7ced92..8bc4183b 100644 --- a/openstackclient/identity/v3/user.py +++ b/openstackclient/identity/v3/user.py @@ -369,6 +369,8 @@ class SetUser(command.Command): class SetPasswordUser(command.Command): """Change current user password""" + required_scope = False + def get_parser(self, prog_name): parser = super(SetPasswordUser, self).get_parser(prog_name) parser.add_argument( diff --git a/openstackclient/releasenotes/notes/bug-1543222-6f8579344ff5c958.yaml b/openstackclient/releasenotes/notes/bug-1543222-6f8579344ff5c958.yaml new file mode 100644 index 00000000..c783d013 --- /dev/null +++ b/openstackclient/releasenotes/notes/bug-1543222-6f8579344ff5c958.yaml @@ -0,0 +1,6 @@ +--- +fixes: + - Keystone V3 `user password set` is a self-service operation. It should + not required a scoped token as it is not considered a `scoped operation`. + [Bug `1543222 <https://bugs.launchpad.net/bugs/1543222>`_] + diff --git a/openstackclient/tests/volume/v2/test_volume.py b/openstackclient/tests/volume/v2/test_volume.py index 85ff6142..fb48d8ac 100644 --- a/openstackclient/tests/volume/v2/test_volume.py +++ b/openstackclient/tests/volume/v2/test_volume.py @@ -14,12 +14,12 @@ import copy -import mock from mock import call from openstackclient.common import utils from openstackclient.tests import fakes from openstackclient.tests.identity.v3 import fakes as identity_fakes +from openstackclient.tests.image.v2 import fakes as image_fakes from openstackclient.tests.volume.v2 import fakes as volume_fakes from openstackclient.volume.v2 import volume @@ -301,19 +301,16 @@ class TestVolumeCreate(TestVolume): self.assertEqual(self.datalist, data) def test_volume_create_image_id(self): - self.images_mock.get.return_value = fakes.FakeResource( - None, - copy.deepcopy(volume_fakes.IMAGE), - loaded=True, - ) + image = image_fakes.FakeImage.create_one_image() + self.images_mock.get.return_value = image arglist = [ - '--image', volume_fakes.image_id, + '--image', image.id, '--size', str(self.new_volume.size), self.new_volume.name, ] verifylist = [ - ('image', volume_fakes.image_id), + ('image', image.id), ('size', self.new_volume.size), ('name', self.new_volume.name), ] @@ -334,7 +331,7 @@ class TestVolumeCreate(TestVolume): project_id=None, availability_zone=None, metadata=None, - imageRef=volume_fakes.image_id, + imageRef=image.id, source_volid=None, ) @@ -342,19 +339,16 @@ class TestVolumeCreate(TestVolume): self.assertEqual(self.datalist, data) def test_volume_create_image_name(self): - self.images_mock.get.return_value = fakes.FakeResource( - None, - copy.deepcopy(volume_fakes.IMAGE), - loaded=True, - ) + image = image_fakes.FakeImage.create_one_image() + self.images_mock.get.return_value = image arglist = [ - '--image', volume_fakes.image_name, + '--image', image.name, '--size', str(self.new_volume.size), self.new_volume.name, ] verifylist = [ - ('image', volume_fakes.image_name), + ('image', image.name), ('size', self.new_volume.size), ('name', self.new_volume.name), ] @@ -375,7 +369,7 @@ class TestVolumeCreate(TestVolume): project_id=None, availability_zone=None, metadata=None, - imageRef=volume_fakes.image_id, + imageRef=image.id, source_volid=None ) @@ -383,21 +377,21 @@ class TestVolumeCreate(TestVolume): self.assertEqual(self.datalist, data) def test_volume_create_with_snapshot(self): + snapshot = volume_fakes.FakeSnapshot.create_one_snapshot() + self.new_volume.snapshot_id = snapshot.id arglist = [ '--size', str(self.new_volume.size), - '--snapshot', volume_fakes.snapshot_id, + '--snapshot', self.new_volume.snapshot_id, self.new_volume.name, ] verifylist = [ ('size', self.new_volume.size), - ('snapshot', volume_fakes.snapshot_id), + ('snapshot', self.new_volume.snapshot_id), ('name', self.new_volume.name), ] parsed_args = self.check_parser(self.cmd, arglist, verifylist) - fake_snapshot = mock.Mock() - fake_snapshot.id = volume_fakes.snapshot_id - self.snapshots_mock.get.return_value = fake_snapshot + self.snapshots_mock.get.return_value = snapshot # In base command class ShowOne in cliff, abstract method take_action() # returns a two-part tuple with a tuple of column names and a tuple of @@ -406,7 +400,7 @@ class TestVolumeCreate(TestVolume): self.volumes_mock.create.assert_called_once_with( size=self.new_volume.size, - snapshot_id=fake_snapshot.id, + snapshot_id=snapshot.id, name=self.new_volume.name, description=None, volume_type=None, @@ -642,12 +636,12 @@ class TestVolumeList(TestVolume): def test_volume_list_name(self): arglist = [ - '--name', volume_fakes.volume_name, + '--name', self.mock_volume.name, ] verifylist = [ ('long', False), ('all_projects', False), - ('name', volume_fakes.volume_name), + ('name', self.mock_volume.name), ('status', None), ] parsed_args = self.check_parser(self.cmd, arglist, verifylist) @@ -670,13 +664,13 @@ class TestVolumeList(TestVolume): def test_volume_list_status(self): arglist = [ - '--status', volume_fakes.volume_status, + '--status', self.mock_volume.status, ] verifylist = [ ('long', False), ('all_projects', False), ('name', None), - ('status', volume_fakes.volume_status), + ('status', self.mock_volume.status), ] parsed_args = self.check_parser(self.cmd, arglist, verifylist) |
