浏览代码

HUE-1176 [jb] Use action button templates for all YARN jobs

Romain Rigaux 8 年之前
父节点
当前提交
ce0805b

+ 1 - 0
apps/jobbrowser/src/jobbrowser/apis/base_api.py

@@ -74,6 +74,7 @@ class MockDjangoRequest():
     self.jt = None
     self.GET = get if get is not None else {'format': 'json'}
     self.POST = post if post is not None else {}
+    self.REQUEST = {}
     self.method = "POST"
 
 

+ 2 - 2
apps/jobbrowser/src/jobbrowser/apis/job_api.py

@@ -189,7 +189,7 @@ class YarnApi(Api):
     if app_type == 'MAPREDUCE':
       if app_property == 'tasks':
         return {
-          'task_list': YarnMapReduceTaskApi(self.user, appid).apps(),
+          'task_list': YarnMapReduceTaskApi(self.user, appid).apps()['apps'],
         }
       elif app_property == 'metadata':
         return NativeYarnApi(self.user).get_job(jobid=appid).full_job_conf
@@ -245,7 +245,7 @@ class YarnMapReduceTaskApi(Api):
   def profile(self, appid, app_type, app_property):
     if app_property == 'attempts':
       return {
-          'task_list': YarnMapReduceTaskAttemptApi(self.user, appid).apps(),
+          'task_list': YarnMapReduceTaskAttemptApi(self.user, appid).apps()['apps'],
       }
     elif app_property == 'counters':
       return NativeYarnApi(self.user).get_task(jobid=self.app_id, task_id=appid).counters

+ 12 - 3
apps/jobbrowser/src/jobbrowser/templates/job_browser.mako

@@ -373,6 +373,8 @@ ${ commonheader("Job Browser", "jobbrowser", user, request) | n,unicode }
   ${ _('Progress') } <span data-bind="text: progress"></span>
   ${ _('Duration') } <span data-bind="text: duration"></span>
   ${ _('Submitted') } <span data-bind="text: submitted"></span>
+
+  <div data-bind="template: { name: 'actions' }"></div>
 </script>
 
 
@@ -399,7 +401,7 @@ ${ commonheader("Job Browser", "jobbrowser", user, request) | n,unicode }
     <div class="bar" data-bind="style: {'width': progress() + '%'}"></div>
   </div>
 
-  <a href="javascript:void(0)" data-bind="click: function() { control('kill'); }">Stop</a>
+  <div data-bind="template: { name: 'actions' }"></div>
 
   <ul class="nav nav-tabs margin-top-20">
     <li class="active"><a href="#job-mapreduce-page-logs" data-toggle="tab">${ _('Logs') }</a></li>
@@ -429,7 +431,9 @@ ${ commonheader("Job Browser", "jobbrowser", user, request) | n,unicode }
 
       <div class="btn-toolbar pull-right" style="display: inline; vertical-align: middle; margin-left: 10px; font-size: 12px">
         <span class="loader hide"><i class="fa fa-2x fa-spinner fa-spin muted"></i></span>
-        <button class="btn bulkToolbarBtn bulk-resume" data-operation="resume" title="${ _('Resume selected') }" disabled="disabled" type="button"><i class="fa fa-play"></i><span class="hide-small"> ${ _('View') }</span></button>
+        <button class="btn bulkToolbarBtn bulk-resume" data-operation="resume" title="${ _('Resume selected') }" disabled="disabled" type="button">
+          <i class="fa fa-play"></i><span class="hide-small"> ${ _('View') }</span>
+        </button>
       </div>
 
       <table class="table table-condensed">
@@ -522,7 +526,9 @@ ${ commonheader("Job Browser", "jobbrowser", user, request) | n,unicode }
 
       <div class="btn-toolbar pull-right" style="display: inline; vertical-align: middle; margin-left: 10px; font-size: 12px">
         <span class="loader hide"><i class="fa fa-2x fa-spinner fa-spin muted"></i></span>
-        <button class="btn bulkToolbarBtn bulk-resume" data-operation="resume" title="${ _('Resume selected') }" disabled="disabled" type="button"><i class="fa fa-play"></i><span class="hide-small"> ${ _('View') }</span></button>
+        <button class="btn bulkToolbarBtn bulk-resume" data-operation="resume" title="${ _('Resume selected') }" disabled="disabled" type="button">
+          <i class="fa fa-play"></i><span class="hide-small"> ${ _('View') }</span>
+        </button>
       </div>
 
       <table class="table table-condensed">
@@ -642,6 +648,7 @@ ${ commonheader("Job Browser", "jobbrowser", user, request) | n,unicode }
   ${ _('Submitted') } <span data-bind="text: submitted"></span>
 </script>
 
+
 <script type="text/html" id="job-spark-page">
   ${ _('Id') } <span data-bind="text: id"></span>
   ${ _('Name') } <span data-bind="text: name"></span>
@@ -651,6 +658,8 @@ ${ commonheader("Job Browser", "jobbrowser", user, request) | n,unicode }
   ${ _('Progress') } <span data-bind="text: progress"></span>
   ${ _('Duration') } <span data-bind="text: duration"></span>
   ${ _('Submitted') } <span data-bind="text: submitted"></span>
+  
+  <div data-bind="template: { name: 'actions' }"></div>
 </script>