summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorYujun Zhang <zhang.yujunz@zte.com.cn>2017-11-29 16:18:13 +0800
committerYujun Zhang <zhang.yujunz@zte.com.cn>2017-11-29 16:21:15 +0800
commit795221ce0cbd9daf23af9f3099e29c947bcad306 (patch)
tree8e443f916db57ba042cd10e61340b4a558358e14
parentf9a4031c4e8146c350065878b95cd40d81aa4fe7 (diff)
Deprecate qtip/web in favor of AWX
We decided to develop it at the time AWX is not open sourced. Now AWX seems to be a more promising solution then create the service from scratch. Change-Id: I586ac7e582b2db57ad81f0ece7585ca2bf0dd416 JIRA: QTIP-287 Signed-off-by: Yujun Zhang <zhang.yujunz@zte.com.cn>
-rw-r--r--qtip/web/bench/__init__.py0
-rw-r--r--qtip/web/bench/admin.py22
-rw-r--r--qtip/web/bench/apps.py8
-rw-r--r--qtip/web/bench/forms.py19
-rw-r--r--qtip/web/bench/management/__init__.py0
-rw-r--r--qtip/web/bench/management/commands/__init__.py0
-rw-r--r--qtip/web/bench/management/commands/_private.py0
-rw-r--r--qtip/web/bench/management/commands/importstatic.py10
-rw-r--r--qtip/web/bench/migrations/0001_initial.py36
-rw-r--r--qtip/web/bench/migrations/0002_auto_20170713_0210.py20
-rw-r--r--qtip/web/bench/migrations/0003_auto_20170713_0225.py20
-rw-r--r--qtip/web/bench/migrations/0004_auto_20170715_0325.py20
-rw-r--r--qtip/web/bench/migrations/0005_auto_20170720_2115.py35
-rw-r--r--qtip/web/bench/migrations/0006_auto_20170722_0135.py25
-rw-r--r--qtip/web/bench/migrations/__init__.py0
-rw-r--r--qtip/web/bench/models.py50
-rw-r--r--qtip/web/bench/tests.py6
-rw-r--r--qtip/web/bench/urls.py25
-rw-r--r--qtip/web/bench/utils.py27
-rw-r--r--qtip/web/bench/views.py101
-rwxr-xr-xqtip/web/manage.py22
-rw-r--r--qtip/web/templates/bench/base.html527
-rw-r--r--qtip/web/templates/bench/index.html3
-rw-r--r--qtip/web/templates/bench/repo_form.html43
-rw-r--r--qtip/web/templates/bench/run.html14
-rw-r--r--qtip/web/templates/bench/task_detail.html34
-rw-r--r--qtip/web/templates/bench/task_list.html77
-rw-r--r--qtip/web/templates/registration/login.html90
-rw-r--r--qtip/web/web/__init__.py0
-rw-r--r--qtip/web/web/settings.py126
-rw-r--r--qtip/web/web/urls.py22
-rw-r--r--qtip/web/web/wsgi.py16
-rw-r--r--requirements.txt1
33 files changed, 0 insertions, 1399 deletions
diff --git a/qtip/web/bench/__init__.py b/qtip/web/bench/__init__.py
deleted file mode 100644
index e69de29b..00000000
--- a/qtip/web/bench/__init__.py
+++ /dev/null
diff --git a/qtip/web/bench/admin.py b/qtip/web/bench/admin.py
deleted file mode 100644
index 1e678ad5..00000000
--- a/qtip/web/bench/admin.py
+++ /dev/null
@@ -1,22 +0,0 @@
-##############################################################################
-# Copyright (c) 2017 akhil.batra@research.iiit.ac.in and others.
-#
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Apache License, Version 2.0
-# which accompanies this distribution, and is available at
-# http://www.apache.org/licenses/LICENSE-2.0
-##############################################################################
-
-# -*- coding: utf-8 -*-
-
-from __future__ import unicode_literals
-
-from django.contrib import admin
-
-import models
-
-# Register your models here.
-
-
-admin.site.register(models.Repo)
-admin.site.register(models.Task)
diff --git a/qtip/web/bench/apps.py b/qtip/web/bench/apps.py
deleted file mode 100644
index db50dfe0..00000000
--- a/qtip/web/bench/apps.py
+++ /dev/null
@@ -1,8 +0,0 @@
-# -*- coding: utf-8 -*-
-from __future__ import unicode_literals
-
-from django.apps import AppConfig
-
-
-class BenchConfig(AppConfig):
- name = 'bench'
diff --git a/qtip/web/bench/forms.py b/qtip/web/bench/forms.py
deleted file mode 100644
index d897aca7..00000000
--- a/qtip/web/bench/forms.py
+++ /dev/null
@@ -1,19 +0,0 @@
-##############################################################################
-# Copyright (c) 2017 akhil.batra@research.iiit.ac.in and others.
-#
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Apache License, Version 2.0
-# which accompanies this distribution, and is available at
-# http://www.apache.org/licenses/LICENSE-2.0
-##############################################################################
-
-
-from django import forms
-
-import models
-
-
-class TaskForm(forms.ModelForm):
- class Meta:
- model = models.Task
- fields = ['repo']
diff --git a/qtip/web/bench/management/__init__.py b/qtip/web/bench/management/__init__.py
deleted file mode 100644
index e69de29b..00000000
--- a/qtip/web/bench/management/__init__.py
+++ /dev/null
diff --git a/qtip/web/bench/management/commands/__init__.py b/qtip/web/bench/management/commands/__init__.py
deleted file mode 100644
index e69de29b..00000000
--- a/qtip/web/bench/management/commands/__init__.py
+++ /dev/null
diff --git a/qtip/web/bench/management/commands/_private.py b/qtip/web/bench/management/commands/_private.py
deleted file mode 100644
index e69de29b..00000000
--- a/qtip/web/bench/management/commands/_private.py
+++ /dev/null
diff --git a/qtip/web/bench/management/commands/importstatic.py b/qtip/web/bench/management/commands/importstatic.py
deleted file mode 100644
index 471faf8b..00000000
--- a/qtip/web/bench/management/commands/importstatic.py
+++ /dev/null
@@ -1,10 +0,0 @@
-import os
-
-from django.core.management.base import BaseCommand
-
-
-class Command(BaseCommand):
- help = 'Import frontend dependencies for serving as static files'
-
- def handle(self, *args, **options):
- os.system("git clone https://github.com/gurayyarar/AdminBSBMaterialDesign.git bench/static/")
diff --git a/qtip/web/bench/migrations/0001_initial.py b/qtip/web/bench/migrations/0001_initial.py
deleted file mode 100644
index 04736679..00000000
--- a/qtip/web/bench/migrations/0001_initial.py
+++ /dev/null
@@ -1,36 +0,0 @@
-# -*- coding: utf-8 -*-
-# Generated by Django 1.11.3 on 2017-07-13 01:36
-from __future__ import unicode_literals
-
-from django.db import migrations, models
-import django.db.models.deletion
-
-
-class Migration(migrations.Migration):
-
- initial = True
-
- dependencies = [
- ]
-
- operations = [
- migrations.CreateModel(
- name='Repo',
- fields=[
- ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
- ('name', models.CharField(max_length=200)),
- ('github_link', models.URLField()),
- ],
- ),
- migrations.CreateModel(
- name='Task',
- fields=[
- ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
- ('start_time', models.DateTimeField(auto_now_add=True)),
- ('end_time', models.DateTimeField()),
- ('run_time', models.DurationField()),
- ('log', models.TextField()),
- ('repo', models.ForeignKey(on_delete=django.db.models.deletion.DO_NOTHING, to='bench.Repo')),
- ],
- ),
- ]
diff --git a/qtip/web/bench/migrations/0002_auto_20170713_0210.py b/qtip/web/bench/migrations/0002_auto_20170713_0210.py
deleted file mode 100644
index 30c0cd63..00000000
--- a/qtip/web/bench/migrations/0002_auto_20170713_0210.py
+++ /dev/null
@@ -1,20 +0,0 @@
-# -*- coding: utf-8 -*-
-# Generated by Django 1.11.3 on 2017-07-13 02:10
-from __future__ import unicode_literals
-
-from django.db import migrations, models
-
-
-class Migration(migrations.Migration):
-
- dependencies = [
- ('bench', '0001_initial'),
- ]
-
- operations = [
- migrations.AlterField(
- model_name='repo',
- name='github_link',
- field=models.URLField(unique=True),
- ),
- ]
diff --git a/qtip/web/bench/migrations/0003_auto_20170713_0225.py b/qtip/web/bench/migrations/0003_auto_20170713_0225.py
deleted file mode 100644
index fec4234a..00000000
--- a/qtip/web/bench/migrations/0003_auto_20170713_0225.py
+++ /dev/null
@@ -1,20 +0,0 @@
-# -*- coding: utf-8 -*-
-# Generated by Django 1.11.3 on 2017-07-13 02:25
-from __future__ import unicode_literals
-
-from django.db import migrations, models
-
-
-class Migration(migrations.Migration):
-
- dependencies = [
- ('bench', '0002_auto_20170713_0210'),
- ]
-
- operations = [
- migrations.AlterField(
- model_name='repo',
- name='name',
- field=models.CharField(max_length=20),
- ),
- ]
diff --git a/qtip/web/bench/migrations/0004_auto_20170715_0325.py b/qtip/web/bench/migrations/0004_auto_20170715_0325.py
deleted file mode 100644
index 74296cce..00000000
--- a/qtip/web/bench/migrations/0004_auto_20170715_0325.py
+++ /dev/null
@@ -1,20 +0,0 @@
-# -*- coding: utf-8 -*-
-# Generated by Django 1.11.3 on 2017-07-15 03:25
-from __future__ import unicode_literals
-
-from django.db import migrations, models
-
-
-class Migration(migrations.Migration):
-
- dependencies = [
- ('bench', '0003_auto_20170713_0225'),
- ]
-
- operations = [
- migrations.AlterField(
- model_name='repo',
- name='name',
- field=models.CharField(max_length=200),
- ),
- ]
diff --git a/qtip/web/bench/migrations/0005_auto_20170720_2115.py b/qtip/web/bench/migrations/0005_auto_20170720_2115.py
deleted file mode 100644
index 5bd81a2c..00000000
--- a/qtip/web/bench/migrations/0005_auto_20170720_2115.py
+++ /dev/null
@@ -1,35 +0,0 @@
-# -*- coding: utf-8 -*-
-# Generated by Django 1.11.3 on 2017-07-20 21:15
-from __future__ import unicode_literals
-
-from django.db import migrations, models
-
-
-class Migration(migrations.Migration):
-
- dependencies = [
- ('bench', '0004_auto_20170715_0325'),
- ]
-
- operations = [
- migrations.RenameField(
- model_name='repo',
- old_name='github_link',
- new_name='git_link',
- ),
- migrations.AlterField(
- model_name='task',
- name='end_time',
- field=models.DateTimeField(null=True),
- ),
- migrations.AlterField(
- model_name='task',
- name='log',
- field=models.FilePathField(),
- ),
- migrations.AlterField(
- model_name='task',
- name='run_time',
- field=models.DurationField(null=True),
- ),
- ]
diff --git a/qtip/web/bench/migrations/0006_auto_20170722_0135.py b/qtip/web/bench/migrations/0006_auto_20170722_0135.py
deleted file mode 100644
index 5d066702..00000000
--- a/qtip/web/bench/migrations/0006_auto_20170722_0135.py
+++ /dev/null
@@ -1,25 +0,0 @@
-# -*- coding: utf-8 -*-
-# Generated by Django 1.11.3 on 2017-07-22 01:35
-from __future__ import unicode_literals
-
-from django.db import migrations, models
-
-
-class Migration(migrations.Migration):
-
- dependencies = [
- ('bench', '0005_auto_20170720_2115'),
- ]
-
- operations = [
- migrations.AddField(
- model_name='task',
- name='status',
- field=models.CharField(choices=[('P', 'Pending'), ('IP', 'In progress'), ('F', 'Finished')], default='P', max_length=20),
- ),
- migrations.AlterField(
- model_name='task',
- name='log',
- field=models.FileField(upload_to='logs'),
- ),
- ]
diff --git a/qtip/web/bench/migrations/__init__.py b/qtip/web/bench/migrations/__init__.py
deleted file mode 100644
index e69de29b..00000000
--- a/qtip/web/bench/migrations/__init__.py
+++ /dev/null
diff --git a/qtip/web/bench/models.py b/qtip/web/bench/models.py
deleted file mode 100644
index 3f0439d9..00000000
--- a/qtip/web/bench/models.py
+++ /dev/null
@@ -1,50 +0,0 @@
-##############################################################################
-# Copyright (c) 2017 akhil.batra@research.iiit.ac.in and others.
-#
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Apache License, Version 2.0
-# which accompanies this distribution, and is available at
-# http://www.apache.org/licenses/LICENSE-2.0
-##############################################################################
-
-# -*- coding: utf-8 -*-
-from __future__ import unicode_literals
-
-from django.db import models
-from django.urls import reverse
-
-# Create your models here.
-
-
-class Repo(models.Model):
- name = models.CharField(max_length=200, blank=False)
- git_link = models.URLField(unique=True)
-
- def get_absolute_url(self):
- return reverse('repo_update', args=[self.pk])
-
- def __str__(self):
- return "%s, %s" % (self.name, self.git_link)
-
-
-class Task(models.Model):
- TASK_STATUS_CHOICES = (
- ('P', 'Pending'),
- ('IP', 'In progress'),
- ('F', 'Finished')
- )
-
- start_time = models.DateTimeField(auto_now_add=True)
- status = models.CharField(choices=TASK_STATUS_CHOICES, default='P', max_length=20)
- end_time = models.DateTimeField(null=True)
- run_time = models.DurationField(null=True)
- repo = models.ForeignKey('Repo', on_delete=models.DO_NOTHING)
- log = models.FileField(upload_to='logs')
-
- def save(self, **kwargs):
- if self.end_time:
- self.run_time = self.end_time - self.start_time
- super(Task, self).save(kwargs)
-
- def get_absolute_url(self):
- return reverse('task_view', args=[self.pk])
diff --git a/qtip/web/bench/tests.py b/qtip/web/bench/tests.py
deleted file mode 100644
index c2de5b3a..00000000
--- a/qtip/web/bench/tests.py
+++ /dev/null
@@ -1,6 +0,0 @@
-# -*- coding: utf-8 -*-
-from __future__ import unicode_literals
-
-# from django.test import TestCase
-
-# Create your tests here.
diff --git a/qtip/web/bench/urls.py b/qtip/web/bench/urls.py
deleted file mode 100644
index a6decbc5..00000000
--- a/qtip/web/bench/urls.py
+++ /dev/null
@@ -1,25 +0,0 @@
-##############################################################################
-# Copyright (c) 2017 akhil.batra@research.iiit.ac.in and others.
-#
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Apache License, Version 2.0
-# which accompanies this distribution, and is available at
-# http://www.apache.org/licenses/LICENSE-2.0
-##############################################################################
-
-# -*- coding: utf-8 -*-
-from __future__ import unicode_literals
-
-from django.conf.urls import include, url
-
-import views
-
-urlpatterns = [
- url('^', include('django.contrib.auth.urls')),
- url('^dashboard/$', views.Dashboard.as_view(), name="index"),
- url('^repos/$', views.ReposView.as_view(), name='repos'),
- url('^repos/(?P<pk>\d+)$', views.RepoUpdate.as_view(), name='repo_update'),
- url('^run/$', views.Run.as_view(), name='run'),
- url('^tasks/$', views.Logs.as_view(), name='tasks'),
- url('^tasks/(?P<pk>\d+)$', views.TaskView.as_view(), name='task_view'),
-]
diff --git a/qtip/web/bench/utils.py b/qtip/web/bench/utils.py
deleted file mode 100644
index aac388e0..00000000
--- a/qtip/web/bench/utils.py
+++ /dev/null
@@ -1,27 +0,0 @@
-##############################################################################
-# Copyright (c) 2017 akhil.batra@research.iiit.ac.in and others.
-#
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Apache License, Version 2.0
-# which accompanies this distribution, and is available at
-# http://www.apache.org/licenses/LICENSE-2.0
-##############################################################################
-
-import os
-from subprocess import Popen, PIPE, STDOUT
-import shutil
-
-
-def run(repo):
- if os.path.exists(repo.name):
- shutil.rmtree(repo.name)
- os.mkdir(repo.name)
- os.chdir(repo.name)
- output = Popen(("git clone %s ." % repo.git_link).split(), stdout=PIPE, stderr=STDOUT)
- for line in output.stdout:
- yield line
- output.wait()
- output = Popen("ansible-playbook run.yml".split(), stdout=PIPE, stderr=STDOUT)
- for line in output.stdout:
- yield line
- os.chdir("../")
diff --git a/qtip/web/bench/views.py b/qtip/web/bench/views.py
deleted file mode 100644
index 56f100cb..00000000
--- a/qtip/web/bench/views.py
+++ /dev/null
@@ -1,101 +0,0 @@
-##############################################################################
-# Copyright (c) 2017 akhil.batra@research.iiit.ac.in and others.
-#
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Apache License, Version 2.0
-# which accompanies this distribution, and is available at
-# http://www.apache.org/licenses/LICENSE-2.0
-##############################################################################
-
-# -*- coding: utf-8 -*-
-from __future__ import unicode_literals
-from multiprocessing import Process
-
-from django.contrib.auth.mixins import LoginRequiredMixin
-from django.views.generic.edit import CreateView, UpdateView
-from django.views.generic.list import ListView
-from django.views.generic.detail import DetailView
-from django.views.generic import TemplateView
-from django.views import View
-from django.shortcuts import render, redirect
-from django.core.files.base import ContentFile
-from django.utils import timezone
-
-import forms
-import models
-import utils
-
-
-class Dashboard(TemplateView):
- template_name = "bench/index.html"
-
-
-class ReposView(LoginRequiredMixin, CreateView):
- model = models.Repo
- fields = '__all__'
-
- def get_context_data(self, **kwargs):
- context = super(ReposView, self).get_context_data(**kwargs)
- context["repos"] = self.model.objects.all()
- context["template_role"] = "add"
- return context
-
-
-class RepoUpdate(LoginRequiredMixin, UpdateView):
- model = models.Repo
- fields = '__all__'
-
- def get_context_data(self, **kwargs):
- context = super(RepoUpdate, self).get_context_data(**kwargs)
- context["repos"] = self.model.objects.all()
- context["template_role"] = "edit"
- return context
-
-
-class Run(LoginRequiredMixin, View):
- template_name = 'bench/run.html'
- form_class = forms.TaskForm
-
- def get(self, request):
- task_form = self.form_class()
- return render(request, self.template_name, {'form': task_form})
-
- def post(self, request):
- task_form = self.form_class(request.POST)
- if task_form.is_valid():
- new_task = task_form.save()
- new_task.log.save("run_%s.log" % new_task.pk, ContentFile(''))
- p = Process(target=self.start_task, args=(new_task,))
- p.start()
- return redirect('tasks')
- p.join()
-
- def start_task(self, task):
- task = models.Task.objects.get(pk=task.pk)
- task.status = 'IP'
- task.save()
- with open(task.log.path, "a") as logfile:
- for line in utils.run(task.repo):
- logfile.write(line)
- now = timezone.now()
- task = models.Task.objects.get(pk=task.pk)
- task.end_time = now
- task.status = 'F'
- task.save()
-
-
-class Logs(LoginRequiredMixin, ListView):
- model = models.Task
-
-
-class TaskView(LoginRequiredMixin, DetailView):
- model = models.Task
-
- def get_context_data(self, **kwargs):
- context = super(TaskView, self).get_context_data(**kwargs)
- try:
- with open(context['object'].log.path, "r") as log_file:
- context['log'] = log_file.read()
- except ValueError:
- context['log'] = "No log to show"
- return context
diff --git a/qtip/web/manage.py b/qtip/web/manage.py
deleted file mode 100755
index f33e87a0..00000000
--- a/qtip/web/manage.py
+++ /dev/null
@@ -1,22 +0,0 @@
-#!/usr/bin/env python
-import os
-import sys
-
-if __name__ == "__main__":
- os.environ.setdefault("DJANGO_SETTINGS_MODULE", "web.settings")
- try:
- from django.core.management import execute_from_command_line
- except ImportError:
- # The above import may fail for some other reason. Ensure that the
- # issue is really that Django is missing to avoid masking other
- # exceptions on Python 2.
- try:
- import django # noqa
- except ImportError:
- raise ImportError(
- "Couldn't import Django. Are you sure it's installed and "
- "available on your PYTHONPATH environment variable? Did you "
- "forget to activate a virtual environment?"
- )
- raise
- execute_from_command_line(sys.argv)
diff --git a/qtip/web/templates/bench/base.html b/qtip/web/templates/bench/base.html
deleted file mode 100644
index 4eaf56f5..00000000
--- a/qtip/web/templates/bench/base.html
+++ /dev/null
@@ -1,527 +0,0 @@
-<html>
-<head>
- <meta charset="UTF-8">
- <meta http-equiv="X-UA-Compatible" content="IE=Edge">
- <meta content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no" name="viewport">
- <title>QTIP Benchmarking Services</title>
- <!-- Favicon-->
- <!--<link rel="icon" href="favicon.ico" type="image/x-icon">-->
- <!-- Google Fonts -->
- <link href="https://fonts.googleapis.com/css?family=Roboto:400,700&subset=latin,cyrillic-ext" rel="stylesheet" type="text/css">
- <link href="https://fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet" type="text/css">
-
- <!-- Bootstrap Core Css -->
- <link href="/static/plugins/bootstrap/css/bootstrap.css" rel="stylesheet">
-
- <!-- Waves Effect Css -->
- <link href="/static/plugins/node-waves/waves.css" rel="stylesheet" />
-
- <!-- Animation Css -->
- <link href="/static/plugins/animate-css/animate.css" rel="stylesheet" />
-
- <!-- Morris Chart Css-->
- <link href="/static/plugins/morrisjs/morris.css" rel="stylesheet" />
-
- <!-- Custom Css -->
- <link href="/static/css/style.css" rel="stylesheet"/>
- <!--<link href="/static/plugins/materialize-css/css/materialize.css" rel="stylesheet"/>-->
-
- <!-- AdminBSB Themes. You can choose a theme from css/themes instead of get all themes -->
- <link href="/static/css/themes/theme-teal.css" rel="stylesheet" />
- <script src="/static/plugins/jquery/jquery.min.js"></script>
-</head>
-
-<body class="theme-red">
- <!-- Page Loader -->
- <div class="page-loader-wrapper">
- <div class="loader">
- <div class="preloader">
- <div class="spinner-layer pl-red">
- <div class="circle-clipper left">
- <div class="circle"></div>
- </div>
- <div class="circle-clipper right">
- <div class="circle"></div>
- </div>
- </div>
- </div>
- <p>Please wait...</p>
- </div>
- </div>
- <!-- #END# Page Loader -->
- <!-- Overlay For Sidebars -->
- <div class="overlay"></div>
- <!-- #END# Overlay For Sidebars -->
- <!-- Search Bar -->
- <div class="search-bar">
- <div class="search-icon">
- <i class="material-icons">search</i>
- </div>
- <input type="text" placeholder="START TYPING...">
- <div class="close-search">
- <i class="material-icons">close</i>
- </div>
- </div>
- <!-- #END# Search Bar -->
- <!-- Top Bar -->
- <nav class="navbar">
- <div class="container-fluid">
- <div class="navbar-header">
- <a href="javascript:void(0);" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar-collapse" aria-expanded="false"></a>
- <a href="javascript:void(0);" class="bars"></a>
- <a class="navbar-brand" href="{% url 'index' %}">QTIP-Web</a>
- </div>
- <div class="collapse navbar-collapse" id="navbar-collapse">
- <ul class="nav navbar-nav navbar-right">
- <!-- Call Search -->
- <li><a href="javascript:void(0);" class="js-search" data-close="true"><i class="material-icons">search</i></a></li>
- <!-- #END# Call Search -->
- <!-- Notifications -->
- <!--
- <li class="dropdown">
- <a href="javascript:void(0);" class="dropdown-toggle" data-toggle="dropdown" role="button">
- <i class="material-icons">notifications</i>
- <span class="label-count">7</span>
- </a>
- <ul class="dropdown-menu">
- <li class="header">NOTIFICATIONS</li>
- <li class="body">
- <ul class="menu">
- <li>
- <a href="javascript:void(0);">
- <div class="icon-circle bg-light-green">
- <i class="material-icons">person_add</i>
- </div>
- <div class="menu-info">
- <h4>12 new members joined</h4>
- <p>
- <i class="material-icons">access_time</i> 14 mins ago
- </p>
- </div>
- </a>
- </li>
- <li>
- <a href="javascript:void(0);">
- <div class="icon-circle bg-cyan">
- <i class="material-icons">add_shopping_cart</i>
- </div>
- <div class="menu-info">
- <h4>4 sales made</h4>
- <p>
- <i class="material-icons">access_time</i> 22 mins ago
- </p>
- </div>
- </a>
- </li>
- <li>
- <a href="javascript:void(0);">
- <div class="icon-circle bg-red">
- <i class="material-icons">delete_forever</i>
- </div>
- <div class="menu-info">
- <h4><b>Nancy Doe</b> deleted account</h4>
- <p>
- <i class="material-icons">access_time</i> 3 hours ago
- </p>
- </div>
- </a>
- </li>
- <li>
- <a href="javascript:void(0);">
- <div class="icon-circle bg-orange">
- <i class="material-icons">mode_edit</i>
- </div>
- <div class="menu-info">
- <h4><b>Nancy</b> changed name</h4>
- <p>
- <i class="material-icons">access_time</i> 2 hours ago
- </p>
- </div>
- </a>
- </li>
- <li>
- <a href="javascript:void(0);">
- <div class="icon-circle bg-blue-grey">
- <i class="material-icons">comment</i>
- </div>
- <div class="menu-info">
- <h4><b>John</b> commented your post</h4>
- <p>
- <i class="material-icons">access_time</i> 4 hours ago
- </p>
- </div>
- </a>
- </li>
- <li>
- <a href="javascript:void(0);">
- <div class="icon-circle bg-light-green">
- <i class="material-icons">cached</i>
- </div>
- <div class="menu-info">
- <h4><b>John</b> updated status</h4>
- <p>
- <i class="material-icons">access_time</i> 3 hours ago
- </p>
- </div>
- </a>
- </li>
- <li>
- <a href="javascript:void(0);">
- <div class="icon-circle bg-purple">
- <i class="material-icons">settings</i>
- </div>
- <div class="menu-info">
- <h4>Settings updated</h4>
- <p>
- <i class="material-icons">access_time</i> Yesterday
- </p>
- </div>
- </a>
- </li>
- </ul>
- </li>
- <li class="footer">
- <a href="javascript:void(0);">View All Notifications</a>
- </li>
- </ul>
- </li>
-
-
- <li class="dropdown">
- <a href="javascript:void(0);" class="dropdown-toggle" data-toggle="dropdown" role="button">
- <i class="material-icons">flag</i>
- <span class="label-count">9</span>
- </a>
- <ul class="dropdown-menu">
- <li class="header">TASKS</li>
- <li class="body">
- <ul class="menu tasks">
- <li>
- <a href="javascript:void(0);">
- <h4>
- Footer display issue
- <small>32%</small>
- </h4>
- <div class="progress">
- <div class="progress-bar bg-pink" role="progressbar" aria-valuenow="85" aria-valuemin="0" aria-valuemax="100" style="width: 32%">
- </div>
- </div>
- </a>
- </li>
- <li>
- <a href="javascript:void(0);">
- <h4>
- Make new buttons
- <small>45%</small>
- </h4>
- <div class="progress">
- <div class="progress-bar bg-cyan" role="progressbar" aria-valuenow="85" aria-valuemin="0" aria-valuemax="100" style="width: 45%">
- </div>
- </div>
- </a>
- </li>
- <li>
- <a href="javascript:void(0);">
- <h4>
- Create new dashboard
- <small>54%</small>
- </h4>
- <div class="progress">
- <div class="progress-bar bg-teal" role="progressbar" aria-valuenow="85" aria-valuemin="0" aria-valuemax="100" style="width: 54%">
- </div>
- </div>
- </a>
- </li>
- <li>
- <a href="javascript:void(0);">
- <h4>
- Solve transition issue
- <small>65%</small>
- </h4>
- <div class="progress">
- <div class="progress-bar bg-orange" role="progressbar" aria-valuenow="85" aria-valuemin="0" aria-valuemax="100" style="width: 65%">
- </div>
- </div>
- </a>
- </li>
- <li>
- <a href="javascript:void(0);">
- <h4>
- Answer GitHub questions
- <small>92%</small>
- </h4>
- <div class="progress">
- <div class="progress-bar bg-purple" role="progressbar" aria-valuenow="85" aria-valuemin="0" aria-valuemax="100" style="width: 92%">
- </div>
- </div>
- </a>
- </li>
- </ul>
- </li>
- <li class="footer">
- <a href="javascript:void(0);">View All Tasks</a>
- </li>
- </ul>
- </li>
- <!-- #END# Tasks -->
- <li class="pull-right"><a href="javascript:void(0);" class="js-right-sidebar" data-close="true"><i class="material-icons">more_vert</i></a></li>
- </ul>
- </div>
- </div>
- </nav>
- <!-- #Top Bar -->
- <section>
- <!-- Left Sidebar -->
- <aside id="leftsidebar" class="sidebar">
- <!-- User Info -->
- <div class="user-info">
- <div class="image">
- <img src="/static/images/user.png" width="48" height="48" alt="User" />
- </div>
- <div class="info-container">
- <div class="name" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">{{ user.username }}</div>
- <div class="email">{{ user.email }}</div>
- <div class="btn-group user-helper-dropdown">
- <i class="material-icons" data-toggle="dropdown" aria-haspopup="true" aria-expanded="true">keyboard_arrow_down</i>
- <ul class="dropdown-menu pull-right">
- <li><a href="/bench/logout"><i class="material-icons">input</i>Sign Out</a></li>
- </ul>
- </div>
- </div>
- </div>
- <!-- #User Info -->
- <!-- Menu -->
- <div class="menu">
- <ul class="list">
- <li class="header">MAIN NAVIGATION</li>
- <li class="active">
- <a href="{% url 'index' %}">
- <i class="material-icons">home</i>
- <span>Home</span>
- </a>
- </li>
- <li>
- <a href="{% url 'repos' %}">
- <i class="material-icons">text_fields</i>
- <span>Repos</span>
- </a>
- </li>
- <li>
- <a href="{% url 'run' %}">
- <i class="material-icons">layers</i>
- <span>Run Benchmarks</span>
- </a>
- </li>
- <li>
- <a href="{% url 'tasks' %}" >
- <i class="material-icons">widgets</i>
- <span>Tasks</span>
- </a>
- </li>
- </ul>
- </div>
- <!-- #Menu -->
- <!-- Footer -->
- <div class="legal">
- <div class="copyright">
- &copy; 2016 - 2017 <a href="javascript:void(0);">AdminBSB - Material Design</a>.
- </div>
- <div class="version">
- <b>Version: </b> 1.0.5
- </div>
- </div>
- <!-- #Footer -->
- </aside>
- <!-- #END# Left Sidebar -->
- <!-- Right Sidebar -->
- <aside id="rightsidebar" class="right-sidebar">
- <ul class="nav nav-tabs tab-nav-right" role="tablist">
- <li role="presentation" class="active"><a href="#skins" data-toggle="tab">SKINS</a></li>
- <li role="presentation"><a href="#settings" data-toggle="tab">SETTINGS</a></li>
- </ul>
- <div class="tab-content">
- <div role="tabpanel" class="tab-pane fade in active in active" id="skins">
- <ul class="demo-choose-skin">
- <li data-theme="red" class="active">
- <div class="red"></div>
- <span>Red</span>
- </li>
- <li data-theme="pink">
- <div class="pink"></div>
- <span>Pink</span>
- </li>
- <li data-theme="purple">
- <div class="purple"></div>
- <span>Purple</span>
- </li>
- <li data-theme="deep-purple">
- <div class="deep-purple"></div>
- <span>Deep Purple</span>
- </li>
- <li data-theme="indigo">
- <div class="indigo"></div>
- <span>Indigo</span>
- </li>
- <li data-theme="blue">
- <div class="blue"></div>
- <span>Blue</span>
- </li>
- <li data-theme="light-blue">
- <div class="light-blue"></div>
- <span>Light Blue</span>
- </li>
- <li data-theme="cyan">
- <div class="cyan"></div>
- <span>Cyan</span>
- </li>
- <li data-theme="teal">
- <div class="teal"></div>
- <span>Teal</span>
- </li>
- <li data-theme="green">
- <div class="green"></div>
- <span>Green</span>
- </li>
- <li data-theme="light-green">
- <div class="light-green"></div>
- <span>Light Green</span>
- </li>
- <li data-theme="lime">
- <div class="lime"></div>
- <span>Lime</span>
- </li>
- <li data-theme="yellow">
- <div class="yellow"></div>
- <span>Yellow</span>
- </li>
- <li data-theme="amber">
- <div class="amber"></div>
- <span>Amber</span>
- </li>
- <li data-theme="orange">
- <div class="orange"></div>
- <span>Orange</span>
- </li>
- <li data-theme="deep-orange">
- <div class="deep-orange"></div>
- <span>Deep Orange</span>
- </li>
- <li data-theme="brown">
- <div class="brown"></div>
- <span>Brown</span>
- </li>
- <li data-theme="grey">
- <div class="grey"></div>
- <span>Grey</span>
- </li>
- <li data-theme="blue-grey">
- <div class="blue-grey"></div>
- <span>Blue Grey</span>
- </li>
- <li data-theme="black">
- <div class="black"></div>
- <span>Black</span>
- </li>
- </ul>
- </div>
- <div role="tabpanel" class="tab-pane fade" id="settings">
- <div class="demo-settings">
- <p>GENERAL SETTINGS</p>
- <ul class="setting-list">
- <li>
- <span>Report Panel Usage</span>
- <div class="switch">
- <label><input type="checkbox" checked><span class="lever"></span></label>
- </div>
- </li>
- <li>
- <span>Email Redirect</span>
- <div class="switch">
- <label><input type="checkbox"><span class="lever"></span></label>
- </div>
- </li>
- </ul>
- <p>SYSTEM SETTINGS</p>
- <ul class="setting-list">
- <li>
- <span>Notifications</span>
- <div class="switch">
- <label><input type="checkbox" checked><span class="lever"></span></label>
- </div>
- </li>
- <li>
- <span>Auto Updates</span>
- <div class="switch">
- <label><input type="checkbox" checked><span class="lever"></span></label>
- </div>
- </li>
- </ul>
- <p>ACCOUNT SETTINGS</p>
- <ul class="setting-list">
- <li>
- <span>Offline</span>
- <div class="switch">
- <label><input type="checkbox"><span class="lever"></span></label>
- </div>
- </li>
- <li>
- <span>Location Permission</span>
- <div class="switch">
- <label><input type="checkbox" checked><span class="lever"></span></label>
- </div>
- </li>
- </ul>
- </div>
- </div>
- </div>
- </aside>
- <!-- #END# Right Sidebar -->
- </section>
-
- <section class="content">
- <div class="container-fluid">
- {% block content %}
- {% endblock %}
- </section>
-
- <!-- Bootstrap Core Js -->
- <script src="/static/plugins/bootstrap/js/bootstrap.js"></script>
-
- <!-- Select Plugin Js -->
- <script src="/static/plugins/bootstrap-select/js/bootstrap-select.js"></script>
-
- <!-- Slimscroll Plugin Js -->
- <script src="/static/plugins/jquery-slimscroll/jquery.slimscroll.js"></script>
-
- <!-- Waves Effect Plugin Js -->
- <script src="/static/plugins/node-waves/waves.js"></script>
-
- <!-- Jquery CountTo Plugin Js -->
- <script src="/static/plugins/jquery-countto/jquery.countTo.js"></script>
-
- <!-- Morris Plugin Js -->
- <script src="/static/plugins/raphael/raphael.min.js"></script>
- <script src="/static/plugins/morrisjs/morris.js"></script>
-
- <!-- ChartJs -->
- <!--<script src="/static/plugins/chartjs/Chart.bundle.js"></script>
-
- <!-- Flot Charts Plugin Js
- <script src="/static/plugins/flot-charts/jquery.flot.js"></script>
- <script src="/static/plugins/flot-charts/jquery.flot.resize.js"></script>
- <script src="/static/plugins/flot-charts/jquery.flot.pie.js"></script>
- <script src="/static/plugins/flot-charts/jquery.flot.categories.js"></script>
- <script src="/static/plugins/flot-charts/jquery.flot.time.js"></script>-->
-
- <!-- Sparkline Chart Plugin Js -->
- <script src="/static/plugins/jquery-sparkline/jquery.sparkline.js"></script>
-
- <!-- Custom Js -->
- <script src="/static/js/admin.js"></script>
- <script src="/static/js/pages/index.js"></script>
-
- <!-- Demo Js -->
- <script src="/static/js/demo.js"></script>
-</body>
-
-</html>
diff --git a/qtip/web/templates/bench/index.html b/qtip/web/templates/bench/index.html
deleted file mode 100644
index b3625a33..00000000
--- a/qtip/web/templates/bench/index.html
+++ /dev/null
@@ -1,3 +0,0 @@
-{% extends 'bench/base.html' %}
-{% block content %}
-{% endblock %} \ No newline at end of file
diff --git a/qtip/web/templates/bench/repo_form.html b/qtip/web/templates/bench/repo_form.html
deleted file mode 100644
index 158b8481..00000000
--- a/qtip/web/templates/bench/repo_form.html
+++ /dev/null
@@ -1,43 +0,0 @@
-{% extends 'bench/base.html' %}
-{% block content %}
- <div class="card" >
- <div class="header">
- <h2>Repos</h2>
- <ul class="header-dropdown m-r-0">
- <li>
- <button data-toggle="modal" data-target="#repoform" class="btn bg-purple waves-effect"><i id="template-role" class="material-icons">{{ template_role }}</i></button>
- </li>
- </ul>
- </div>
- <div class="body">
- {% for repo in repos %}
- <ul class="font-15" ><a href="{% url 'repo_update' repo.id %}">{{ repo.name }}</a></ul>
- {% endfor %}
- </div>
- </div>
- <div id="repoform" class="modal fade in" role="dialog" tabindex="-1">
- <div class="modal-dialog" role="document">
- <div class="modal-content">
- <div class="modal-header"></div>
- <div class="modal-body">
- <form role="form" method="post" action="">{% csrf_token %}
- {{ form }}
- <div class=input-field" style="margin:30px 20px">
- <button type="submit" value="Login">Submit</button>
- </div>
- </form>
- </div>
- <div class="modal-footer"></div>
- </div>
- </div>
- </div>
- <script>
- $(window).on('load',function(){
- if($('#template-role').text() == "edit")
- {
- console.log("hello");
- $('#repoform').modal('show');
- }
- });
- </script>
-{% endblock %}
diff --git a/qtip/web/templates/bench/run.html b/qtip/web/templates/bench/run.html
deleted file mode 100644
index eabd2ea6..00000000
--- a/qtip/web/templates/bench/run.html
+++ /dev/null
@@ -1,14 +0,0 @@
-{% extends 'bench/base.html' %}
-{% block content %}
- <div class="card">
- <div class="header">
- <h2>Run</h2>
- </div>
- <form role="form" method="post" action="">{% csrf_token %}
- {{ form }}
- <div class=input-field">
- <button class="btn" type="submit" value="Login"/>Submit</button>
- </div>
- </form>
- </div>
-{% endblock %} \ No newline at end of file
diff --git a/qtip/web/templates/bench/task_detail.html b/qtip/web/templates/bench/task_detail.html
deleted file mode 100644
index 3f42c10a..00000000
--- a/qtip/web/templates/bench/task_detail.html
+++ /dev/null
@@ -1,34 +0,0 @@
-{% extends 'bench/base.html' %}
-{% block content %}
- <div class="card">
- <div class="header">
- <h2>Task</h2>
- </div>
- <div class="body">
- <table class="table-responsive table">
- <thead>
- <tr role="row">
- <th>Repo</th>
- <th>Status</th>
- <th>Start Time</th>
- <th>End Time</th>
- <th>Run time</th>
- </tr>
- </thead>
- <tbody>
- <tr role="row">
- <td>{{ object.repo}}</td><td>{{ object.get_status_display }}</td><td>{{ object.start_time }}</td>
- <td>{{ object.end_time }}</td><td>{{ object.duration }}</td><td>{{ object.log }}</td>
- </tr>
- </tbody>
- </table>
- </div>
- <div class="body">
- <div>
- <p>
- {{ log | linebreaks }}
- </p>
- </div>
- </div>
- </div>
-{% endblock %} \ No newline at end of file
diff --git a/qtip/web/templates/bench/task_list.html b/qtip/web/templates/bench/task_list.html
deleted file mode 100644
index 074483ab..00000000
--- a/qtip/web/templates/bench/task_list.html
+++ /dev/null
@@ -1,77 +0,0 @@
-{% extends 'bench/base.html' %}
-{% block content %}
-
- <!-- JQuery DataTable Css -->
- <link href="/static/plugins/jquery-datatable/skin/bootstrap/css/dataTables.bootstrap.css" rel="stylesheet">
- <div class="card">
- <div class="header">
- <h2>
- Tasks Log
- </h2>
- <ul class="header-dropdown m-r--5">
- <li class="dropdown">
- <a href="javascript:void(0);" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">
- <i class="material-icons">more_vert</i>
- </a>
- <ul class="dropdown-menu pull-right">
- <li><a href="javascript:void(0);" class=" waves-effect waves-block">Action</a></li>
- <li><a href="javascript:void(0);" class=" waves-effect waves-block">Another action</a></li>
- <li><a href="javascript:void(0);" class=" waves-effect waves-block">Something else here</a></li>
- </ul>
- </li>
- </ul>
- </div>
- <div class="body">
- <div class="table-responsive">
- <div id="DataTables_Table_1_wrapper" class="dataTables_wrapper form-inline dt-bootstrap"><div class="dt-buttons"></div>
- <table class="table table-bordered table-striped table-hover dataTable js-exportable" id="DataTables_Table_1" role="grid" aria-describedby="DataTables_Table_1_info">
- <thead>
- <tr role="row">
- <th class="sorting" aria-controls="DataTables_Table_1" rowspan="1" colspan="1" aria-sort="ascending" aria-label="Name: activate to sort column descending">Repo</th>
- <th class="sorting" aria-controls="DataTables_Table_1" rowspan="1" colspan="1" aria-sort="ascending" aria-label="Name: activate to sort column descending">Status</th>
- <th class="sorting" aria-controls="DataTables_Table_1" rowspan="1" colspan="1" aria-sort="ascending" aria-label="Name: activate to sort column descending">Start Time</th>
- <th class="sorting" aria-controls="DataTables_Table_1" rowspan="1" colspan="1" aria-sort="ascending" aria-label="Name: activate to sort column descending">End Time</th>
- <th class="sorting" aria-controls="DataTables_Table_1" rowspan="1" colspan="1" aria-sort="ascending" aria-label="Name: activate to sort column descending">Run time</th>
- </tr>
- </thead>
- <tbody>
- {% for task in object_list %}
- <tr role="row" onclick="location.href='{% url 'task_view' task.id %}'">
- <td>{{ task.repo }}</td>
- <td>{{ task.get_status_display }}</td>
- <td>{{ task.start_time }}</td>
- <td>{{ task.end_time }}</td>
- <td>{{ task.run_time }}</td>
- </tr>
- {% endfor %}
- </tbody>
- <tfoot>
- <tr role="row">
- <th rowspan="1" colspan="1">Repo</th>
- <th rowspan="1" colspan="1" >Status</th>
- <th rowspan="1" colspan="1" >Start Time</th>
- <th rowspan="1" colspan="1" >End Time</th>
- <th rowspan="1" colspan="1">Run time</th>
- </tr>
- </tfoot>
- </table>
- </div>
- </div>
- </div>
-
-
-<!-- Jquery DataTable Plugin Js -->
- <script src="/static/plugins/jquery-datatable/jquery.dataTables.js"></script>
- <script src="/static/plugins/jquery-datatable/skin/bootstrap/js/dataTables.bootstrap.js"></script>
- <script src="/static/plugins/jquery-datatable/extensions/export/dataTables.buttons.min.js"></script>
- <script src="/static/plugins/jquery-datatable/extensions/export/buttons.flash.min.js"></script>
- <script src="/static/plugins/jquery-datatable/extensions/export/jszip.min.js"></script>
- <script src="/static/plugins/jquery-datatable/extensions/export/pdfmake.min.js"></script>
- <script src="/static/plugins/jquery-datatable/extensions/export/vfs_fonts.js"></script>
- <script src="/static/plugins/jquery-datatable/extensions/export/buttons.html5.min.js"></script>
- <script src="/static/plugins/jquery-datatable/extensions/export/buttons.print.min.js"></script>
-
- <!-- Custom Js -->
- <script src="/static/js/admin.js"></script>
- <script src="/static/js/pages/tables/jquery-datatable.js"></script>
-{% endblock %} \ No newline at end of file
diff --git a/qtip/web/templates/registration/login.html b/qtip/web/templates/registration/login.html
deleted file mode 100644
index 1e15b90b..00000000
--- a/qtip/web/templates/registration/login.html
+++ /dev/null
@@ -1,90 +0,0 @@
-<!DOCTYPE html>
-<html>
-<head>
- <meta charset="UTF-8">
- <meta content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no" name="viewport">
- <title>Sign In | Bootstrap Based Admin Template - Material Design</title>
- <!-- Favicon-->
- <link rel="icon" href="/static/favicon.ico" type="image/x-icon">
-
- <!-- Google Fonts -->
- <link href="https://fonts.googleapis.com/css?family=Roboto:400,700&subset=latin,cyrillic-ext" rel="stylesheet" type="text/css">
- <link href="https://fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet" type="text/css">
-
- <!-- Bootstrap Core Css -->
- <link href="/static/plugins/bootstrap/css/bootstrap.css" rel="stylesheet">
-
- <!-- Waves Effect Css -->
- <link href="/static/plugins/node-waves/waves.css" rel="stylesheet" />
-
- <!-- Animation Css -->
- <link href="/static/plugins/animate-css/animate.css" rel="stylesheet" />
-
- <!-- Custom Css -->
- <link href="/static/css/style.css" rel="stylesheet">
-</head>
-
-<body class="login-page">
- <div class="login-box">
- <div class="card">
- <div class="body">
- {% block content %}
- <form id="sign_in" method="POST" action="/bench/login/" > {% csrf_token %}
- <div class="msg">Sign in to start your session</div>
- <div class="input-group">
- <span class="input-group-addon">
- <i class="material-icons">person</i>
- </span>
- <div class="form-line">
- <input type="text" class="form-control" name="{{ form.username.html_name}}" placeholder="Username" required autofocus>
- </div>
- </div>
- <div class="input-group">
- <span class="input-group-addon">
- <i class="material-icons">lock</i>
- </span>
- <div class="form-line">
- <input type="password" class="form-control" name="{{ form.password.html_name }}" placeholder="Password" required>
- </div>
- </div>
- <div class="row">
- <div class="col-xs-8 p-t-5">
- <input type="checkbox" name="rememberme" id="rememberme" class="filled-in chk-col-pink">
- <label for="rememberme">Remember Me</label>
- </div>
- <div class="col-xs-4">
- <button class="btn btn-block bg-pink waves-effect" type="submit">SIGN IN</button>
- </div>
- </div>
- <div class="row m-t-15 m-b--20">
- <div class="col-xs-6">
- <a href="sign-up.html">Register Now!</a>
- </div>
- <div class="col-xs-6 align-right">
- <a href="forgot-password.html">Forgot Password?</a>
- </div>
- </div>
- {{ form.errors }}
- </form>
- </div>
- </div>
- </div>
- {% endblock %}
- <!-- Jquery Core Js -->
- <script src="/static/plugins/jquery/jquery.min.js"></script>
-
- <!-- Bootstrap Core Js -->
- <script src="/static/plugins/bootstrap/js/bootstrap.js"></script>
-
- <!-- Waves Effect Plugin Js -->
- <script src="/static/plugins/node-waves/waves.js"></script>
-
- <!-- Validation Plugin Js -->
- <script src="/static/plugins/jquery-validation/jquery.validate.js"></script>
-
- <!-- Custom Js -->
- <script src="/static/js/admin.js"></script>
- <script src="/static/js/pages/examples/sign-in.js"></script>
-</body>
-
-</html>
diff --git a/qtip/web/web/__init__.py b/qtip/web/web/__init__.py
deleted file mode 100644
index e69de29b..00000000
--- a/qtip/web/web/__init__.py
+++ /dev/null
diff --git a/qtip/web/web/settings.py b/qtip/web/web/settings.py
deleted file mode 100644
index 8963ea89..00000000
--- a/qtip/web/web/settings.py
+++ /dev/null
@@ -1,126 +0,0 @@
-"""
-Django settings for web project.
-
-Generated by 'django-admin startproject' using Django 1.11.3.
-
-For more information on this file, see
-https://docs.djangoproject.com/en/1.11/topics/settings/
-
-For the full list of settings and their values, see
-https://docs.djangoproject.com/en/1.11/ref/settings/
-"""
-
-import os
-
-# Build paths inside the project like this: os.path.join(BASE_DIR, ...)
-BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
-
-
-# Quick-start development settings - unsuitable for production
-# See https://docs.djangoproject.com/en/1.11/howto/deployment/checklist/
-
-# SECURITY WARNING: keep the secret key used in production secret!
-SECRET_KEY = '9=rwv)cv6&sao=xnl%b)-jrl(tnid$l(4n7i96@44+3-cog$)$'
-
-# SECURITY WARNING: don't run with debug turned on in production!
-DEBUG = True
-
-ALLOWED_HOSTS = []
-
-
-# Application definition
-
-INSTALLED_APPS = [
- 'django.contrib.admin',
- 'django.contrib.auth',
- 'django.contrib.contenttypes',
- 'django.contrib.sessions',
- 'django.contrib.messages',
- 'django.contrib.staticfiles',
- 'bench.apps.BenchConfig',
-]
-
-MIDDLEWARE = [
- 'django.middleware.security.SecurityMiddleware',
- 'django.contrib.sessions.middleware.SessionMiddleware',
- 'django.middleware.common.CommonMiddleware',
- 'django.middleware.csrf.CsrfViewMiddleware',
- 'django.contrib.auth.middleware.AuthenticationMiddleware',
- 'django.contrib.messages.middleware.MessageMiddleware',
- 'django.middleware.clickjacking.XFrameOptionsMiddleware',
-]
-
-ROOT_URLCONF = 'web.urls'
-
-TEMPLATES = [
- {
- 'BACKEND': 'django.template.backends.django.DjangoTemplates',
- 'DIRS': ['templates'],
- 'APP_DIRS': True,
- 'OPTIONS': {
- 'context_processors': [
- 'django.template.context_processors.debug',
- 'django.template.context_processors.request',
- 'django.contrib.auth.context_processors.auth',
- 'django.contrib.messages.context_processors.messages',
- ],
- },
- },
-]
-
-WSGI_APPLICATION = 'web.wsgi.application'
-
-
-# Database
-# https://docs.djangoproject.com/en/1.11/ref/settings/#databases
-
-DATABASES = {
- 'default': {
- 'ENGINE': 'django.db.backends.sqlite3',
- 'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
- }
-}
-
-
-# Password validation
-# https://docs.djangoproject.com/en/1.11/ref/settings/#auth-password-validators
-
-AUTH_PASSWORD_VALIDATORS = [
- {
- 'NAME': 'django.contrib.auth.password_validation.UserAttributeSimilarityValidator',
- },
- {
- 'NAME': 'django.contrib.auth.password_validation.MinimumLengthValidator',
- },
- {
- 'NAME': 'django.contrib.auth.password_validation.CommonPasswordValidator',
- },
- {
- 'NAME': 'django.contrib.auth.password_validation.NumericPasswordValidator',
- },
-]
-
-
-# Internationalization
-# https://docs.djangoproject.com/en/1.11/topics/i18n/
-
-LANGUAGE_CODE = 'en-us'
-
-TIME_ZONE = 'UTC'
-
-USE_I18N = True
-
-USE_L10N = True
-
-USE_TZ = True
-
-
-# Static files (CSS, JavaScript, Images)
-# https://docs.djangoproject.com/en/1.11/howto/static-files/
-
-STATIC_URL = '/static/'
-
-# Auth Settings
-LOGIN_URL = '/bench/login/'
-LOGIN_REDIRECT_URL = '/bench/dashboard/'
-LOGOUT_REDIRECT_URL = LOGIN_URL
diff --git a/qtip/web/web/urls.py b/qtip/web/web/urls.py
deleted file mode 100644
index 49aaeb98..00000000
--- a/qtip/web/web/urls.py
+++ /dev/null
@@ -1,22 +0,0 @@
-"""web URL Configuration
-
-The `urlpatterns` list routes URLs to views. For more information please see:
- https://docs.djangoproject.com/en/1.11/topics/http/urls/
-Examples:
-Function views
- 1. Add an import: from my_app import views
- 2. Add a URL to urlpatterns: url(r'^$', views.home, name='home')
-Class-based views
- 1. Add an import: from other_app.views import Home
- 2. Add a URL to urlpatterns: url(r'^$', Home.as_view(), name='home')
-Including another URLconf
- 1. Import the include() function: from django.conf.urls import url, include
- 2. Add a URL to urlpatterns: url(r'^blog/', include('blog.urls'))
-"""
-from django.conf.urls import include, url
-from django.contrib import admin
-
-urlpatterns = [
- url(r'^bench/', include('bench.urls')),
- url(r'^admin/', admin.site.urls),
-]
diff --git a/qtip/web/web/wsgi.py b/qtip/web/web/wsgi.py
deleted file mode 100644
index 23d62e95..00000000
--- a/qtip/web/web/wsgi.py
+++ /dev/null
@@ -1,16 +0,0 @@
-"""
-WSGI config for web project.
-
-It exposes the WSGI callable as a module-level variable named ``application``.
-
-For more information on this file, see
-https://docs.djangoproject.com/en/1.11/howto/deployment/wsgi/
-"""
-
-import os
-
-from django.core.wsgi import get_wsgi_application
-
-os.environ.setdefault("DJANGO_SETTINGS_MODULE", "web.settings")
-
-application = get_wsgi_application()
diff --git a/requirements.txt b/requirements.txt
index 97229c29..9b48abe5 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -9,5 +9,4 @@ six
PyYAML
humanfriendly
asq
-Django
requests