azkaban-uncached

Fix job history page.

12/19/2013 10:50:14 AM

Changes

src/java/azkaban/webapp/servlet/velocity/jobnav.vm 20(+0 -20)

src/java/azkaban/webapp/servlet/velocity/jobsidebar.vm 70(+0 -70)

Details

diff --git a/src/java/azkaban/webapp/servlet/velocity/jobhistorypage.vm b/src/java/azkaban/webapp/servlet/velocity/jobhistorypage.vm
index 7a58cf6..3ca1afb 100644
--- a/src/java/azkaban/webapp/servlet/velocity/jobhistorypage.vm
+++ b/src/java/azkaban/webapp/servlet/velocity/jobhistorypage.vm
@@ -88,85 +88,75 @@
 
 		<div class="az-page-header">
 			<div class="container">
-				<h1>
-					<a href="${context}/manager?project=${project.name}">$project.name</a> / 
-					<a href="${context}/manager?project=${project.name}&flow=${flowid}">$flowid</a>
-				</h1>
+        <h1><a href="${context}/manager?project=${projectName}&job=${jobid}&history">Job History <small>$jobid</small></a></h1>
 			</div>
 		</div>
 
 		<div class="container">
-			<div class="row">
-				<div class="col-lg-8">
 	
-	## Breadcrumb
+  ## Breadcrumb
 
-					<ol class="breadcrumb">
-						<li><a href="${context}/manager?project=${project.name}"><strong>Project</strong> $project.name</a></li>
-						<li><a href="${context}/manager?project=${project.name}&flow=${flowid}"><strong>Flow</strong> $flowid</a></li>
-						<li><a href="${context}/manager?project=${project.name}&flow=${flowid}&job=${jobid}"><strong>Job</strong> $jobid</a></li>
-					</ol>
-			
-	#set ($job_page="history")
-	#parse ("azkaban/webapp/servlet/velocity/jobnav.vm")
-				
-					<div class="panel panel-default">
-						<div class="panel-heading">Job History</div>
-						<div class="panel-body">
-							<div id="timeGraph"></div>
-						</div>
-
-						<table id="all-jobs" class="table table-striped table-bordered">
-							<thead>
-								<tr>
-									<th class="execid">Execution Id</th>
-									<th class="jobid">Job</th>
-									<th class="flowid">Flow</th>
-									<th class="date">Start Time</th>
-									<th class="date">End Time</th>
-									<th class="elapse">Elapse</th>		
-									<th class="status">Status</th>
-									<th class="logs">Logs</th>
-								</tr>
-							</thead>
-							<tbody>
+      <ol class="breadcrumb">
+        <li><a href="${context}/manager?project=${projectName}"><strong>Project</strong> $projectName</a></li>
+        <li class="active"><strong>Job History</strong> $jobid</li>
+      </ol>
+
+			<div class="row">
+				<div class="col-lg-12">
+					<div class="well well-clear well-sm">
+            <div id="timeGraph"></div>
+          </div>
+
+          <table id="all-jobs" class="table table-striped table-bordered table-condensed table-hover">
+            <thead>
+              <tr>
+                <th class="execid">Execution Id</th>
+                <th class="jobid">Job</th>
+                <th class="flowid">Flow</th>
+                <th class="date">Start Time</th>
+                <th class="date">End Time</th>
+                <th class="elapse">Elapse</th>		
+                <th class="status">Status</th>
+                <th class="logs">Logs</th>
+              </tr>
+            </thead>
+            <tbody>
 	#if ($history)
 		#foreach ($job in $history)
-								<tr>
-									<td class="first">
+              <tr>
+                <td class="first">
 			#if ($job.attempt > 0)
-										<a href="${context}/executor?execid=${job.execId}">${job.execId}.${job.attempt}</a>
+                  <a href="${context}/executor?execid=${job.execId}">${job.execId}.${job.attempt}</a>
 			#else
-										<a href="${context}/executor?execid=${job.execId}">${job.execId}</a>
+                  <a href="${context}/executor?execid=${job.execId}">${job.execId}</a>
 			#end
-									</td>
-									<td>
-										<a href="${context}/manager?project=${projectName}&flow=${job.flowId}&job=${jobid}">${jobid}</a>
-									</td>
-									<td>
-										<a href="${context}/manager?project=${projectName}&flow=${job.flowId}">${job.flowId}</a>
-									</td>
-									<td>$utils.formatDate(${job.startTime})</td>
-									<td>$utils.formatDate(${job.endTime})</td>
-									<td>$utils.formatDuration(${job.startTime}, ${job.endTime})</td>
-									<td>
-										<div class="status ${job.status}">
-											$utils.formatStatus(${job.status})
-										</div>
-									</td>
-									<td class="logLink">
-										<a href="${context}/executor?execid=${job.execId}&job=${jobid}&attempt=${job.attempt}">Logs</a>
-									</td>
-								</tr>
+                </td>
+                <td>
+                  <a href="${context}/manager?project=${projectName}&flow=${job.flowId}&job=${jobid}">${jobid}</a>
+                </td>
+                <td>
+                  <a href="${context}/manager?project=${projectName}&flow=${job.flowId}">${job.flowId}</a>
+                </td>
+                <td>$utils.formatDate(${job.startTime})</td>
+                <td>$utils.formatDate(${job.endTime})</td>
+                <td>$utils.formatDuration(${job.startTime}, ${job.endTime})</td>
+                <td>
+                  <div class="status ${job.status}">
+                    $utils.formatStatus(${job.status})
+                  </div>
+                </td>
+                <td class="logLink">
+                  <a href="${context}/executor?execid=${job.execId}&job=${jobid}&attempt=${job.attempt}">Logs</a>
+                </td>
+              </tr>
 		#end
 	#else
-								<tr>
-									<td colspan="8">No history</td>
-								</tr>
+              <tr>
+                <td colspan="8">No history</td>
+              </tr>
 	#end
-							</tbody>
-						</table>
-					</div>
+            </tbody>
+          </table>
 
 					<ul class="pagination" id="pageSelection">
 						<li id="previous" class="first"><a href="${context}/manager?project=${projectId}&job=${jobid}&history&page=${previous.page}&size=${previous.size}"><span class="arrow">&larr;</span>Previous</a></li>
@@ -178,11 +168,8 @@
 						<li id="next"><a href="${context}/manager?project=${projectName}&job=${jobid}&history&page=${next.page}&size=${next.size}">Next<span class="arrow">&rarr;</span></a></li>
 					</ul>
 
-				</div><!-- /col-lg-8 -->
-				<div class="col-lg-4">
-	#parse ("azkaban/webapp/servlet/velocity/jobsidebar.vm")
-				</div><!-- /col-lg-4 -->
-			</div><!-- /row -->
+				</div><!-- /.col-lg-12 -->
+			</div><!-- /.row -->
 
 #end
 #parse ("azkaban/webapp/servlet/velocity/footer.vm")
diff --git a/src/java/azkaban/webapp/servlet/velocity/jobpage.vm b/src/java/azkaban/webapp/servlet/velocity/jobpage.vm
index 0326037..c1c278a 100644
--- a/src/java/azkaban/webapp/servlet/velocity/jobpage.vm
+++ b/src/java/azkaban/webapp/servlet/velocity/jobpage.vm
@@ -68,7 +68,17 @@
 
 		<div class="az-page-header">
 			<div class="container">
-        <h1><a href="${context}/manager?project=${project.name}&flow=${flowid}&job=${jobid}">Job <small>$jobid</small></a></h1>
+        <div class="row">
+          <div class="col-lg-6">
+            <h1><a href="${context}/manager?project=${project.name}&flow=${flowid}&job=${jobid}">Job <small>$jobid</small></a></h1>
+          </div>
+          <div class="col-lg-6">
+            <div class="pull-right az-page-header-form">
+              <a href="${context}/manager?project=${project.name}&job=$jobid&history" class="btn btn-default btn-sm">History</a>
+            </div>
+            <div class="clearfix"></div>
+          </div>
+        </div>
 			</div>
 		</div>
 
@@ -85,9 +95,6 @@
 			<div class="row">
 				<div class="col-lg-8">
 	
-	#set ($job_page="properties")
-	#parse ("azkaban/webapp/servlet/velocity/jobnav.vm")
-
 	## Job details table
 
 					<div class="panel panel-default">
@@ -116,7 +123,60 @@
 					</div>
 				</div><!-- /col-lg-8 -->
 				<div class="col-lg-4">
-	#parse ("azkaban/webapp/servlet/velocity/jobsidebar.vm")
+					<div class="well" id="job-summary">
+						<h3>Job <small>$jobid</small></h3>
+						<p><strong>Job Type</strong> $jobtype</p>
+					</div>
+
+	## Dependencies
+
+					<div class="panel panel-default">
+						<div class="panel-heading">Dependencies</div>
+						<ul class="list-group">
+	#if ($dependencies) 
+		#foreach($dependency in $dependencies)
+							<li class="list-group-item">
+								<a href="${context}/manager?project=${project.name}&flow=${flowid}&job=$dependency">$dependency</a>
+							</li>
+		#end
+	#else
+							<li class="list-group-item">No Dependencies</li>
+	#end
+						</ul>
+					</div><!-- /panel -->
+
+	## Dependents
+
+					<div class="panel panel-default">
+						<div class="panel-heading">Dependents</div>
+						<ul class="list-group">
+	#if ($dependents) 
+		#foreach($dependent in $dependents)
+							<li class="list-group-item">
+								<a href="${context}/manager?project=${project.name}&flow=${flowid}&job=$dependent">$dependent</a>
+							</li>
+		#end
+	#else
+							<li class="list-group-item">No Dependencies</li>
+	#end
+
+						</ul>
+					</div><!-- /panel -->
+
+					<div class="panel panel-default">
+						<div class="panel-heading">Properties</div>
+						<ul class="list-group">
+	#if ($properties) 
+		#foreach($property in $properties)
+							<li class="list-group-item">
+								<a href="${context}/manager?project=${project.name}&flow=${flowid}&job=${jobid}&prop=$property">$property</a>
+							</li>
+		#end
+	#else
+							<li class="list-group-item">No Property Files For This Job</li>
+	#end
+						</ul>
+					</div><!-- /panel -->
 				</div><!-- /col-lg-4 -->
 			</div><!-- /row -->
 
diff --git a/src/java/azkaban/webapp/servlet/velocity/propertypage.vm b/src/java/azkaban/webapp/servlet/velocity/propertypage.vm
index e9af077..f23f4e7 100644
--- a/src/java/azkaban/webapp/servlet/velocity/propertypage.vm
+++ b/src/java/azkaban/webapp/servlet/velocity/propertypage.vm
@@ -59,10 +59,7 @@
 
 		<div class="az-page-header">
 			<div class="container">
-				<h1>
-					<a href="${context}/manager?project=${project.name}">$project.name</a> / 
-					<a href="${context}/manager?project=${project.name}&flow=${flowid}">$flowid</a>
-				</h1>
+        <h1><a href="${context}/manager?project=${project.name}&flow=${flowid}&job=${jobid}&prop=${property}">Properties <small>$property</small></a></h1>
 			</div>
 		</div>
 
@@ -76,17 +73,13 @@
 						<li><a href="${context}/manager?project=${project.name}"><strong>Project</strong> $project.name</a></li>
 						<li><a href="${context}/manager?project=${project.name}&flow=${flowid}"><strong>Flow</strong> $flowid</a></li>
 						<li><a href="${context}/manager?project=${project.name}&flow=${flowid}&job=${jobid}"><strong>Job</strong> $jobid</a></li>
+            <li class="active"><strong>Properties</strong> $property</li>
 					</ol>
 	
-	## Tabs
-
-					<ul class="nav nav-tabs">
-						<li class="active"><a href="${context}/manager?project=${project.name}&flow=${flowid}&job=${jobid}">Properties</a></li>
-						<li><a id="jobs-logs-btn" href="${context}/manager?project=${project.name}&job=$jobid&history">History</a></li>
-					</ul>
+	## Properties
 
 					<div class="panel panel-default">
-						<div class="panel-heading">Property $property</div>
+						<div class="panel-heading">$property</div>
 
 						<table class="table table-striped table-bordered properties-table">
 							<thead>
@@ -109,7 +102,6 @@
 					<div class="well" id="job-summary">
 						<h4>Properties <small>$property</small></h4>
 						<p><strong>Job</strong> $jobid</p>
-						<p><strong>Job Type</strong> $jobtype</p>
 					</div>
 
 					<div class="panel panel-default">