Commit 119a2a63 authored by Stefano Alberto Russo's avatar Stefano Alberto Russo
Browse files

Added preliminary support for viewing task terminal output (log). move from...

Added preliminary support for viewing task terminal output (log). move from short_uuid to id. Minor fixes.
parent eaa13c58
Loading
Loading
Loading
Loading
+10 −1
Original line number Diff line number Diff line
@@ -106,10 +106,11 @@ class Task(models.Model):
            self.save()                   

    @property
    def short_uuid(self):
    def id(self):
        return str(self.uuid).split('-')[0]



#=========================
#  Containers
#=========================
@@ -128,4 +129,12 @@ class Container(models.Model):
    def __str__(self):
        return str('Container of type "{}" with image "{}" from registry "{}" of user "{}"'.format(self.type, self.image, self.registry, self.user))

    @property
    def id(self):
        return str(self.uuid).split('-')[0]

    #@property
    #def name(self):
    #    return self.image.split(':')[0].replace('_',' ').replace('-', ' ').replace('/', ' ').title()

+76 −18
Original line number Diff line number Diff line
@@ -8,30 +8,78 @@
<div class="container">
  <div class="dashboard">
    <div class="span8 offset2">
      <h1>Container List</h1>
      <h1><a href="/containers">Container List</a> {% if data.container %}&gt; {{ data.container.id }} {% endif %} </h1>
      <hr/>

      {% if data.container %}
      <table class="dashboard">

       <tr>
        <td><b>ID</b></td>
        <td>{{ data.container.id }}</td>
       </tr>

       <tr>
        <td><b>Image</b></td>
        <td>{{ data.container.image }}</td>
       </tr>

       <tr>
        <td><b>Type</b></td>
        <td>{{ data.container.type }}</td>
       </tr>

       <tr>
        <td><b>Owner</b></td>
        <td>{% if data.container.user %}{{data.container.user}}{% else %}Platform{% endif %}</td>
       </tr>

       <tr>
        <td><b>Registry</b></td>
        <td>{{ data.container.registry }}</td>
       </tr>

       <tr>
        <td><b>Service port(s)</b></td>
        <td>{{ data.container.service_ports}}</td>
       </tr>

      </table>
      <br />
      
      {% else %}
      
      {% for container in data.platform_containers %}
      
      <table class="dashboard">

       <tr>
        <td><b>Container image</b></td>
        <td>{{ container.image }} (platform)</td>
        <td><b>ID</b></td>
        <td><a href="?uuid={{ container.uuid }}">{{ container.id }}</a></td>
       </tr>

       <tr>
        <td><b>Image</b></td>
        <td>{{ container.image }}</td>
       </tr>

       <tr>
        <td><b>Container type</b></td>
        <td><b>Type</b></td>
        <td>{{ container.type }}</td>
       </tr>

       <tr>
        <td><b>Container registry</b></td>
        <td><b>Owner</b></td>
        <td>Platform</td>
       </tr>

       <tr>
        <td><b>Registry</b></td>
        <td>{{ container.registry }}</td>
       </tr>

       <tr>
        <td><b>Container service ports</b></td>
        <td><b>Service port(s)</b></td>
        <td>{{ container.service_ports}}</td>
       </tr>

@@ -44,22 +92,32 @@
      <table class="dashboard">

       <tr>
        <td><b>Container image</b></td>
        <td>{{ container.image }} (user)</td>
        <td><b>ID</b></td>
        <td><a href="?uuid={{ container.uuid }}">{{ container.id }}</a></td>
       </tr>

       <tr>
        <td><b>Container type</b></td>
        <td><b>Image</b></td>
        <td>{{ container.image }}</td>
       </tr>

       <tr>
        <td><b>Type</b></td>
        <td>{{ container.type }}</td>
       </tr>

       <tr>
        <td><b>Container registry</b></td>
        <td><b>Owner</b></td>
        <td>{{container.user}}</td>
       </tr>

       <tr>
        <td><b>Registry</b></td>
        <td>{{ container.registry }}</td>
       </tr>

       <tr>
        <td><b>Container service ports</b></td>
        <td><b>Service port(s)</b></td>
        <td>{{ container.service_ports}}</td>
       </tr>

@@ -74,8 +132,8 @@
      
      <br />
      <a href="/add_container">Add new...</a>
      <br/>
      <br/>
      
      {% endif %}
      <br />
      <br />
      <br />
+4 −0
Original line number Diff line number Diff line
@@ -9,6 +9,10 @@
    <meta name="description" content="">
    <meta name="author" content="">

    {% if refresh %}
    <meta http-equiv="refresh" content="{{refresh}}" >
    {% endif %}

    {% if data.title %}
    <title>{{data.title}}</title>
    {% else %}
+51 −0
Original line number Diff line number Diff line
{% load static %} 
{% include "header.html" with refresh=data.refresh %}
{% include "navigation.html" with main_path='/main/' %}

<br/>
<br/>

<div class="container">
  <div class="dashboard">
    <div class="span8 offset2">
    
      <h1><a href="/tasks/">Task List</a> &gt;  {{ data.task.id }} Log</h1>
       
      <hr>

  
      <b>ID:</b> {{ data.task.id }} &nbsp; &nbsp; 
      <b>Status:</b> {{ data.task.status }} &nbsp; &nbsp; 
      <b>Auto refresh:{{data.refresh}}</b>&nbsp;
      {% if not data.refresh %} OFF {% else %} <a href="?uuid={{data.task.uuid}}">OFF</a> {% endif %} | 
      {% if data.refresh == "3" %} 3s {% else %} <a href="?uuid={{data.task.uuid}}&refresh=3">3s</a> {% endif %} |   
      {% if data.refresh == "10" %} 10s{% else %} <a href="?uuid={{data.task.uuid}}}&refresh=10">10s</a> {% endif %} |   
      {% if data.refresh == "60" %} 60s{% else %} <a href="?uuid={{data.task.uuid}}}&refresh=60">60s</a> {% endif %}  
        
      <pre id="output" style="border: 1px solid #a0a0a0; width: 100%; height: 500px; background-color:black; color:white; white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: white-space: -o-pre-wrap; word-wrap: break-word;">{{ data.log }}</pre>


      <br/>
      <br/>
      <br/>
      <br/>
      <br/>
      <br/>
      
    </div>
  </div>
</div>

{% include "footer.html" %}


<script>
jQuery( function(){
       var pre = jQuery("#output");
        pre.scrollTop( pre.prop("scrollHeight") );
    });
</script>



+12 −14
Original line number Diff line number Diff line
@@ -8,11 +8,7 @@
<div class="container">
  <div class="dashboard">
    <div class="span8 offset2">
      {% if not data.sid %}
      <h1>Task List</h1>
      {% else %}
      <h1>Task Info</h1>
      {% endif %}

      <hr>

@@ -21,27 +17,27 @@
          <table class="dashboard">

           <tr>
            <td><b>Task id</b></td>
            <td>{{ task.short_uuid }}</td>
            <td><b>ID</b></td>
            <td>{{ task.id }}</td>
           </tr>

           <tr>
            <td><b>Task name</b></td>
            <td><b>Name</b></td>
            <td>{{ task.name }}</td>
           </tr>

           <tr>
            <td><b>Task container</b></td>
            <td>{{ task.container.image }}</td>
            <td><b>Container</b></td>
            <td><a href="">{{ task.container.image }}</a></td>
           </tr>

           <tr>
            <td><b>Task status</b></td>
            <td><b>Status</b></td>
            <td>{{ task.status }}</td>
           </tr>

           <tr>
            <td><b>Task created</b></td>
            <td><b>Created at</b></td>
            <td>{{ task.created }}</td>
           </tr>

@@ -51,12 +47,12 @@
           </tr> -->

           <tr>
            <td><b>Task ip</b></td>
            <td><b>IP</b></td>
            <td>{{ task.ip}}</td>
           </tr>

           <tr>
            <td><b>Task port</b></td>
            <td><b>Port</b></td>
            <td>{{ task.port }}</td>
           </tr>
           
@@ -83,8 +79,10 @@
            {% endif %}
            {% if task.status == "running" %}
             | <a href=?uuid={{task.uuid}}&action=connect>Connect</a>
             | <a href=/task_log/?uuid={{task.uuid}}&action=viewlog>View Log</a>
            {% else %}
             | <font color="#c0c0c0">Connect</font>
             | <font color="#c0c0c0">View Log</font>
            {% endif%}
            </td>
  
Loading