Skip to content

Commit f21b0a0

Browse files
Zuulopenstack-gerrit
authored andcommitted
Merge "Fix additional output encoding issues"
2 parents 3f99dba + 6df58b6 commit f21b0a0

7 files changed

Lines changed: 78 additions & 54 deletions

File tree

openstackclient/compute/v2/server.py

Lines changed: 49 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,6 @@
2020
import io
2121
import logging
2222
import os
23-
import sys
2423

2524
from novaclient.v2 import servers
2625
from osc_lib.cli import parseractions
@@ -190,12 +189,6 @@ def _prep_server_detail(compute_client, image_client, server):
190189
return info
191190

192191

193-
def _show_progress(progress):
194-
if progress:
195-
sys.stdout.write('\rProgress: %s' % progress)
196-
sys.stdout.flush()
197-
198-
199192
class AddFixedIP(command.Command):
200193
_description = _("Add fixed IP address to server")
201194

@@ -598,6 +591,12 @@ def get_parser(self, prog_name):
598591
return parser
599592

600593
def take_action(self, parsed_args):
594+
595+
def _show_progress(progress):
596+
if progress:
597+
self.app.stdout.write('\rProgress: %s' % progress)
598+
self.app.stdout.flush()
599+
601600
compute_client = self.app.client_manager.compute
602601
volume_client = self.app.client_manager.volume
603602
image_client = self.app.client_manager.image
@@ -832,11 +831,11 @@ def take_action(self, parsed_args):
832831
server.id,
833832
callback=_show_progress,
834833
):
835-
sys.stdout.write('\n')
834+
self.app.stdout.write('\n')
836835
else:
837836
LOG.error(_('Error creating server: %s'),
838837
parsed_args.server_name)
839-
sys.stdout.write(_('Error creating server\n'))
838+
self.app.stdout.write(_('Error creating server\n'))
840839
raise SystemExit
841840

842841
details = _prep_server_detail(compute_client, image_client, server)
@@ -890,6 +889,12 @@ def get_parser(self, prog_name):
890889
return parser
891890

892891
def take_action(self, parsed_args):
892+
893+
def _show_progress(progress):
894+
if progress:
895+
self.app.stdout.write('\rProgress: %s' % progress)
896+
self.app.stdout.flush()
897+
893898
compute_client = self.app.client_manager.compute
894899
for server in parsed_args.server:
895900
server_obj = utils.find_resource(
@@ -901,11 +906,11 @@ def take_action(self, parsed_args):
901906
server_obj.id,
902907
callback=_show_progress,
903908
):
904-
sys.stdout.write('\n')
909+
self.app.stdout.write('\n')
905910
else:
906911
LOG.error(_('Error deleting server: %s'),
907912
server_obj.id)
908-
sys.stdout.write(_('Error deleting server\n'))
913+
self.app.stdout.write(_('Error deleting server\n'))
909914
raise SystemExit
910915

911916

@@ -1308,6 +1313,11 @@ def get_parser(self, prog_name):
13081313

13091314
def take_action(self, parsed_args):
13101315

1316+
def _show_progress(progress):
1317+
if progress:
1318+
self.app.stdout.write('\rProgress: %s' % progress)
1319+
self.app.stdout.flush()
1320+
13111321
compute_client = self.app.client_manager.compute
13121322

13131323
server = utils.find_resource(
@@ -1333,11 +1343,11 @@ def take_action(self, parsed_args):
13331343
server.id,
13341344
callback=_show_progress,
13351345
):
1336-
sys.stdout.write(_('Complete\n'))
1346+
self.app.stdout.write(_('Complete\n'))
13371347
else:
13381348
LOG.error(_('Error migrating server: %s'),
13391349
server.id)
1340-
sys.stdout.write(_('Error migrating server\n'))
1350+
self.app.stdout.write(_('Error migrating server\n'))
13411351
raise SystemExit
13421352

13431353

@@ -1398,6 +1408,12 @@ def get_parser(self, prog_name):
13981408
return parser
13991409

14001410
def take_action(self, parsed_args):
1411+
1412+
def _show_progress(progress):
1413+
if progress:
1414+
self.app.stdout.write('\rProgress: %s' % progress)
1415+
self.app.stdout.flush()
1416+
14011417
compute_client = self.app.client_manager.compute
14021418
server = utils.find_resource(
14031419
compute_client.servers, parsed_args.server)
@@ -1409,11 +1425,11 @@ def take_action(self, parsed_args):
14091425
server.id,
14101426
callback=_show_progress,
14111427
):
1412-
sys.stdout.write(_('Complete\n'))
1428+
self.app.stdout.write(_('Complete\n'))
14131429
else:
14141430
LOG.error(_('Error rebooting server: %s'),
14151431
server.id)
1416-
sys.stdout.write(_('Error rebooting server\n'))
1432+
self.app.stdout.write(_('Error rebooting server\n'))
14171433
raise SystemExit
14181434

14191435

@@ -1446,6 +1462,12 @@ def get_parser(self, prog_name):
14461462
return parser
14471463

14481464
def take_action(self, parsed_args):
1465+
1466+
def _show_progress(progress):
1467+
if progress:
1468+
self.app.stdout.write('\rProgress: %s' % progress)
1469+
self.app.stdout.flush()
1470+
14491471
compute_client = self.app.client_manager.compute
14501472
image_client = self.app.client_manager.image
14511473

@@ -1463,11 +1485,11 @@ def take_action(self, parsed_args):
14631485
server.id,
14641486
callback=_show_progress,
14651487
):
1466-
sys.stdout.write(_('Complete\n'))
1488+
self.app.stdout.write(_('Complete\n'))
14671489
else:
14681490
LOG.error(_('Error rebuilding server: %s'),
14691491
server.id)
1470-
sys.stdout.write(_('Error rebuilding server\n'))
1492+
self.app.stdout.write(_('Error rebuilding server\n'))
14711493
raise SystemExit
14721494

14731495
details = _prep_server_detail(compute_client, image_client, server)
@@ -1752,6 +1774,11 @@ def get_parser(self, prog_name):
17521774

17531775
def take_action(self, parsed_args):
17541776

1777+
def _show_progress(progress):
1778+
if progress:
1779+
self.app.stdout.write('\rProgress: %s' % progress)
1780+
self.app.stdout.flush()
1781+
17551782
compute_client = self.app.client_manager.compute
17561783
server = utils.find_resource(
17571784
compute_client.servers,
@@ -1770,11 +1797,11 @@ def take_action(self, parsed_args):
17701797
success_status=['active', 'verify_resize'],
17711798
callback=_show_progress,
17721799
):
1773-
sys.stdout.write(_('Complete\n'))
1800+
self.app.stdout.write(_('Complete\n'))
17741801
else:
17751802
LOG.error(_('Error resizing server: %s'),
17761803
server.id)
1777-
sys.stdout.write(_('Error resizing server\n'))
1804+
self.app.stdout.write(_('Error resizing server\n'))
17781805
raise SystemExit
17791806
elif parsed_args.confirm:
17801807
compute_client.servers.confirm_resize(server)
@@ -1940,7 +1967,9 @@ def take_action(self, parsed_args):
19401967
if parsed_args.diagnostics:
19411968
(resp, data) = server.diagnostics()
19421969
if not resp.status_code == 200:
1943-
sys.stderr.write(_("Error retrieving diagnostics data\n"))
1970+
self.app.stderr.write(_(
1971+
"Error retrieving diagnostics data\n"
1972+
))
19441973
return ({}, {})
19451974
else:
19461975
data = _prep_server_detail(compute_client,

openstackclient/compute/v2/server_backup.py

Lines changed: 7 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -15,8 +15,6 @@
1515

1616
"""Compute v2 Server action implementations"""
1717

18-
import sys
19-
2018
from osc_lib.command import command
2119
from osc_lib import exceptions
2220
from osc_lib import utils
@@ -26,12 +24,6 @@
2624
from openstackclient.i18n import _
2725

2826

29-
def _show_progress(progress):
30-
if progress:
31-
sys.stderr.write('\rProgress: %s' % progress)
32-
sys.stderr.flush()
33-
34-
3527
class CreateServerBackup(command.ShowOne):
3628
_description = _("Create a server backup image")
3729

@@ -74,6 +66,12 @@ def get_parser(self, prog_name):
7466
return parser
7567

7668
def take_action(self, parsed_args):
69+
70+
def _show_progress(progress):
71+
if progress:
72+
self.app.stderr.write('\rProgress: %s' % progress)
73+
self.app.stderr.flush()
74+
7775
compute_client = self.app.client_manager.compute
7876

7977
server = utils.find_resource(
@@ -114,7 +112,7 @@ def take_action(self, parsed_args):
114112
image.id,
115113
callback=_show_progress,
116114
):
117-
sys.stdout.write('\n')
115+
self.app.stdout.write('\n')
118116
else:
119117
msg = _('Error creating server backup: %s') % parsed_args.name
120118
raise exceptions.CommandError(msg)

openstackclient/compute/v2/server_image.py

Lines changed: 7 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,6 @@
1616
"""Compute v2 Server action implementations"""
1717

1818
import logging
19-
import sys
2019

2120
from osc_lib.command import command
2221
from osc_lib import exceptions
@@ -30,12 +29,6 @@
3029
LOG = logging.getLogger(__name__)
3130

3231

33-
def _show_progress(progress):
34-
if progress:
35-
sys.stdout.write('\rProgress: %s' % progress)
36-
sys.stdout.flush()
37-
38-
3932
class CreateServerImage(command.ShowOne):
4033
_description = _("Create a new server disk image from an existing server")
4134

@@ -64,6 +57,12 @@ def get_parser(self, prog_name):
6457
return parser
6558

6659
def take_action(self, parsed_args):
60+
61+
def _show_progress(progress):
62+
if progress:
63+
self.app.stdout.write('\rProgress: %s' % progress)
64+
self.app.stdout.flush()
65+
6766
compute_client = self.app.client_manager.compute
6867

6968
server = utils.find_resource(
@@ -92,7 +91,7 @@ def take_action(self, parsed_args):
9291
image_id,
9392
callback=_show_progress,
9493
):
95-
sys.stdout.write('\n')
94+
self.app.stdout.write('\n')
9695
else:
9796
LOG.error(_('Error creating server image: %s'),
9897
parsed_args.server)

openstackclient/compute/v2/usage.py

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,6 @@
1616
"""Usage action implementations"""
1717

1818
import datetime
19-
import sys
2019

2120
from osc_lib.command import command
2221
from osc_lib import utils
@@ -96,7 +95,7 @@ def _format_project(project):
9695
pass
9796

9897
if parsed_args.formatter == 'table' and len(usage_list) > 0:
99-
sys.stdout.write(_("Usage from %(start)s to %(end)s: \n") % {
98+
self.app.stdout.write(_("Usage from %(start)s to %(end)s: \n") % {
10099
"start": start.strftime(dateformat),
101100
"end": end.strftime(dateformat),
102101
})
@@ -168,8 +167,9 @@ def take_action(self, parsed_args):
168167
usage = compute_client.usage.get(project, start, end)
169168

170169
if parsed_args.formatter == 'table':
171-
sys.stdout.write(_("Usage from %(start)s to %(end)s on "
172-
"project %(project)s: \n") % {
170+
self.app.stdout.write(_(
171+
"Usage from %(start)s to %(end)s on project %(project)s: \n"
172+
) % {
173173
"start": start.strftime(dateformat),
174174
"end": end.strftime(dateformat),
175175
"project": project,

openstackclient/identity/v3/group.py

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,6 @@
1616
"""Group action implementations"""
1717

1818
import logging
19-
import sys
2019

2120
from keystoneauth1 import exceptions as ks_exc
2221
from osc_lib.command import command
@@ -122,15 +121,15 @@ def take_action(self, parsed_args):
122121
'user': parsed_args.user,
123122
'group': parsed_args.group,
124123
}
125-
sys.stderr.write(msg)
124+
self.app.stderr.write(msg)
126125
else:
127126
raise e
128127
else:
129128
msg = _("%(user)s in group %(group)s\n") % {
130129
'user': parsed_args.user,
131130
'group': parsed_args.group,
132131
}
133-
sys.stdout.write(msg)
132+
self.app.stdout.write(msg)
134133

135134

136135
class CreateGroup(command.ShowOne):

openstackclient/image/v2/image.py

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,6 @@
1717

1818
import argparse
1919
import logging
20-
import sys
2120

2221
from glanceclient.common import utils as gc_utils
2322
from osc_lib.cli import parseractions
@@ -653,7 +652,7 @@ def take_action(self, parsed_args):
653652
if data.wrapped is None:
654653
msg = _('Image %s has no data.') % image.id
655654
LOG.error(msg)
656-
sys.stdout.write(msg + '\n')
655+
self.app.stdout.write(msg + '\n')
657656
raise SystemExit
658657

659658
gc_utils.save_image(data, parsed_args.file)

0 commit comments

Comments
 (0)