azkaban-aplcache

Show version number in Azkaban logo in Web server UI (#820) Currently

11/18/2016 10:37:30 PM

Details

diff --git a/azkaban-web-server/src/main/java/azkaban/webapp/servlet/AbstractAzkabanServlet.java b/azkaban-web-server/src/main/java/azkaban/webapp/servlet/AbstractAzkabanServlet.java
index 39cc07d..ae33070 100644
--- a/azkaban-web-server/src/main/java/azkaban/webapp/servlet/AbstractAzkabanServlet.java
+++ b/azkaban-web-server/src/main/java/azkaban/webapp/servlet/AbstractAzkabanServlet.java
@@ -62,6 +62,7 @@ public abstract class AbstractAzkabanServlet extends HttpServlet {
   public static final String XML_MIME_TYPE = "application/xhtml+xml";
   public static final String JSON_MIME_TYPE = "application/json";
 
+  public static final String jarVersion = AbstractAzkabanServlet.class.getPackage().getImplementationVersion();
   protected static final WebUtils utils = new WebUtils();
 
   private AzkabanServer application;
@@ -331,6 +332,7 @@ public abstract class AbstractAzkabanServlet extends HttpServlet {
   protected Page newPage(HttpServletRequest req, HttpServletResponse resp,
       Session session, String template) {
     Page page = new Page(req, resp, getApplication().getVelocityEngine(), template);
+    page.add("version", jarVersion);
     page.add("azkaban_name", name);
     page.add("azkaban_label", label);
     page.add("azkaban_color", color);
@@ -382,6 +384,7 @@ public abstract class AbstractAzkabanServlet extends HttpServlet {
   protected Page newPage(HttpServletRequest req, HttpServletResponse resp,
       String template) {
     Page page = new Page(req, resp, getApplication().getVelocityEngine(), template);
+    page.add("version", jarVersion);
     page.add("azkaban_name", name);
     page.add("azkaban_label", label);
     page.add("azkaban_color", color);
diff --git a/azkaban-web-server/src/main/less/navbar.less b/azkaban-web-server/src/main/less/navbar.less
index aee616f..4878951 100644
--- a/azkaban-web-server/src/main/less/navbar.less
+++ b/azkaban-web-server/src/main/less/navbar.less
@@ -53,8 +53,8 @@
     color: #ffffff;
     font-size: 156.25%;
     font-weight: bold;
-    margin: 15px 0.6% 15px 4.75%;
-    padding: 12px 0 11px 42px;
+    margin: 15px 0.6% 5px 4.75%;
+    padding: 12px 0 5px 42px;
 
     a {
       color: #ffffff;
@@ -66,6 +66,12 @@
     }
   }
 
+  .navbar-version {
+    color: #ffffff;
+    font-size: x-small;
+    font-weight: normal;
+  }
+
   .navbar-nav {
     font-family: Arial;
     font-size: 81.25%;
diff --git a/azkaban-web-server/src/main/resources/azkaban/webapp/servlet/velocity/nav.vm b/azkaban-web-server/src/main/resources/azkaban/webapp/servlet/velocity/nav.vm
index 390bef3..042c1b8 100644
--- a/azkaban-web-server/src/main/resources/azkaban/webapp/servlet/velocity/nav.vm
+++ b/azkaban-web-server/src/main/resources/azkaban/webapp/servlet/velocity/nav.vm
@@ -14,51 +14,64 @@
  * the License.
 *#
 
-    <script type="text/javascript">
+<script type="text/javascript">
       function navMenuClick(url) {
         window.location.href = url;
       }
-    </script>
-    <div class="navbar navbar-inverse navbar-static-top">
-      <div class="container-full">
+</script>
+<div class="navbar navbar-inverse navbar-static-top">
+    <div class="container-full">
         <div class="navbar-header">
-          <div class="navbar-logo">
-            <a href="${context}/">Azkaban</a>
-          </div>
+            <div class="navbar-logo">
+                <a href="${context}/">Azkaban</a>
+                <div class="navbar-version">
+                    ${version}
+                </div>
+            </div>
+
         </div>
         <div class="navbar-left navbar-enviro">
-          <div class="navbar-enviro-name">${azkaban_name}</div>
-          <div class="navbar-enviro-server">${azkaban_label}</div>
+            <div class="navbar-enviro-name">${azkaban_name}</div>
+            <div class="navbar-enviro-server">${azkaban_label}</div>
         </div>
         <div class="navbar-collapse collapse">
-#if ($navbar_disabled != 1)
-          <ul class="nav navbar-nav">
-            <li#if($current_page == 'all') class="active"#end onClick="navMenuClick('$!context/')"><a href="$!context/index">Projects</a></li>
-            <li#if($current_page == 'schedule') class="active"#end onClick="navMenuClick('$!context/schedule')"><a href="$!context/schedule">Scheduling</a></li>
-            <!--<li#if($current_page == 'triggers') class="active"#end onClick="navMenuClick('$!context/triggers')"><a href="$!context/triggers">Triggers</a></li>-->
-            <li#if($current_page == 'executing') class="active"#end onClick="navMenuClick('$!context/executor')"><a href="$!context/executor">Executing</a></li>
-            <li#if($current_page == 'history') class="active"#end onClick="navMenuClick('$!context/history')"><a href="$!context/history">History</a></li>
-  #foreach ($viewer in $viewers)
-    #if (!$viewer.hidden)
-            <li#if($current_page == $viewer.pluginName) class="active"#end onClick="navMenuClick('$!context/$viewer.pluginPath')"><a href="$!context/$viewer.pluginPath">$viewer.pluginName</a></li>
-    #end
-  #end
+          #if ($navbar_disabled != 1)
+              <ul class="nav navbar-nav">
+                  <li#if($current_page == 'all') class="active"#end onClick="navMenuClick('$!context/')"><a
+                          href="$!context/index">Projects</a></li>
+                  <li#if($current_page == 'schedule') class="active"#end onClick="navMenuClick('$!context/schedule')"><a
+                          href="$!context/schedule">Scheduling</a></li>
+                  <!--<li#if($current_page ==
+                    'triggers') class="active"#end onClick="navMenuClick('$!context/triggers')"><a href="$!context/triggers">Triggers</a></li>-->
+                  <li#if($current_page == 'executing') class="active"#end onClick="navMenuClick('$!context/executor')">
+                      <a href="$!context/executor">Executing</a></li>
+                  <li#if($current_page == 'history') class="active"#end onClick="navMenuClick('$!context/history')"><a
+                          href="$!context/history">History</a></li>
+                #foreach ($viewer in $viewers)
+                  #if (!$viewer.hidden)
+                      <li#if($current_page == $viewer.pluginName) class="active"#end
+                                                                  onClick="navMenuClick('$!context/$viewer.pluginPath')">
+                          <a href="$!context/$viewer.pluginPath">$viewer.pluginName</a></li>
+                  #end
+                #end
 
-  #foreach ($trigger in $triggerPlugins)
-    #if (!$trigger.hidden)
-            <li#if($current_page == $trigger.pluginName) class="active"#end onClick="navMenuClick('$!context/$trigger.pluginPath')"><a href="$!context/$trigger.pluginPath">$trigger.pluginName</a></li>
-    #end
-  #end
-          </ul>
-          <ul class="nav navbar-nav navbar-right">
-            <li class="dropdown">
-              <a href="#" class="dropdown-toggle" data-toggle="dropdown">${user_id} <b class="caret"></b></a>
-              <ul class="dropdown-menu">
-                <li><a href="$!context?logout">Logout</a></li>
+                #foreach ($trigger in $triggerPlugins)
+                  #if (!$trigger.hidden)
+                      <li#if($current_page == $trigger.pluginName) class="active"#end
+                                                                   onClick="navMenuClick('$!context/$trigger.pluginPath')">
+                          <a href="$!context/$trigger.pluginPath">$trigger.pluginName</a></li>
+                  #end
+                #end
+              </ul>
+              <ul class="nav navbar-nav navbar-right">
+                  <li class="dropdown">
+                      <a href="#" class="dropdown-toggle" data-toggle="dropdown">${user_id} <b class="caret"></b></a>
+                      <ul class="dropdown-menu">
+                          <li><a href="$!context?logout">Logout</a></li>
+                      </ul>
+                  </li>
               </ul>
-            </li>
-          </ul>
-#end
+          #end
         </div><!--/.nav-collapse -->
-      </div>
     </div>
+</div>