mirror of
https://github.com/ansible/awx.git
synced 2026-05-06 17:07:36 -02:30
Initial support for downloading stdout
This commit is contained in:
@@ -45,6 +45,9 @@ class PlainTextRenderer(renderers.BaseRenderer):
|
|||||||
data = unicode(data)
|
data = unicode(data)
|
||||||
return data.encode(self.charset)
|
return data.encode(self.charset)
|
||||||
|
|
||||||
|
class DownloadTextRenderer(PlainTextRenderer):
|
||||||
|
format = "txt_download"
|
||||||
|
|
||||||
class AnsiTextRenderer(PlainTextRenderer):
|
class AnsiTextRenderer(PlainTextRenderer):
|
||||||
|
|
||||||
media_type = 'text/plain'
|
media_type = 'text/plain'
|
||||||
|
|||||||
@@ -2788,7 +2788,7 @@ class UnifiedJobStdout(RetrieveAPIView):
|
|||||||
|
|
||||||
serializer_class = UnifiedJobStdoutSerializer
|
serializer_class = UnifiedJobStdoutSerializer
|
||||||
renderer_classes = [BrowsableAPIRenderer, renderers.StaticHTMLRenderer,
|
renderer_classes = [BrowsableAPIRenderer, renderers.StaticHTMLRenderer,
|
||||||
PlainTextRenderer, AnsiTextRenderer,
|
PlainTextRenderer, AnsiTextRenderer, DownloadTextRenderer,
|
||||||
renderers.JSONRenderer]
|
renderers.JSONRenderer]
|
||||||
filter_backends = ()
|
filter_backends = ()
|
||||||
new_in_148 = True
|
new_in_148 = True
|
||||||
@@ -2820,6 +2820,10 @@ class UnifiedJobStdout(RetrieveAPIView):
|
|||||||
return Response(data)
|
return Response(data)
|
||||||
elif request.accepted_renderer.format == 'ansi':
|
elif request.accepted_renderer.format == 'ansi':
|
||||||
return Response(unified_job.result_stdout_raw)
|
return Response(unified_job.result_stdout_raw)
|
||||||
|
elif request.accepted_renderer.format == 'txt_download':
|
||||||
|
content = unified_job.result_stdout
|
||||||
|
headers = {"Content-Disposition": 'attachment; filename="job_%s.txt"' % str(unified_job.id)}
|
||||||
|
return Response(content, headers=headers)
|
||||||
else:
|
else:
|
||||||
return super(UnifiedJobStdout, self).retrieve(request, *args, **kwargs)
|
return super(UnifiedJobStdout, self).retrieve(request, *args, **kwargs)
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user