diff --git a/openstack_dashboard/dashboards/project/stacks/mappings.py b/openstack_dashboard/dashboards/project/stacks/mappings.py index 18eda6bfb5..1a16fb473c 100644 --- a/openstack_dashboard/dashboards/project/stacks/mappings.py +++ b/openstack_dashboard/dashboards/project/stacks/mappings.py @@ -135,18 +135,15 @@ def resource_to_url(resource): def stack_output(output): if not output: return u'' - if isinstance(output, dict) or isinstance(output, list): - json_string = json.dumps(output, indent=2) - safe_output = u'
%s
' % html.escape(json_string) - return safestring.mark_safe(safe_output) if isinstance(output, basestring): parts = urlparse.urlsplit(output) if parts.netloc and parts.scheme in ('http', 'https'): url = html.escape(output) safe_link = u'%s' % (url, url) return safestring.mark_safe(safe_link) - return unicode(output) - + if isinstance(output, dict) or isinstance(output, list): + output = json.dumps(output, indent=2) + return safestring.mark_safe(u'
%s
' % html.escape(output)) resource_images = { 'LB_FAILED': '/static/dashboard/img/lb-red.svg', diff --git a/openstack_dashboard/dashboards/project/stacks/tests.py b/openstack_dashboard/dashboards/project/stacks/tests.py index 1e83642543..723d402396 100644 --- a/openstack_dashboard/dashboards/project/stacks/tests.py +++ b/openstack_dashboard/dashboards/project/stacks/tests.py @@ -87,7 +87,7 @@ class MappingsTests(test.TestCase): 'aaa') def test_stack_output(self): - self.assertEqual(u'foo', mappings.stack_output('foo')) + self.assertEqual(u'
foo
', mappings.stack_output('foo')) self.assertEqual(u'', mappings.stack_output(None)) outputs = ['one', 'two', 'three']