summaryrefslogtreecommitdiffstats
path: root/pharos-dashboard/src/dashboard
diff options
context:
space:
mode:
authormaxbr <maxbr@mi.fu-berlin.de>2017-01-05 12:38:00 +0100
committermaxbr <maxbr@mi.fu-berlin.de>2017-01-05 12:38:00 +0100
commit6a821ea00a481bd77a8522f8b7145b8d7ce35d7f (patch)
treef0be8509e8488e3a687078078d0948f13c2522b4 /pharos-dashboard/src/dashboard
parent29a4b8697e4a7960931528142d7778383810b91e (diff)
Add booking communication reference implementation
JIRA: PHAROS-265 This adds an implementation of a booking communication agent that listens for booking notifications from the dashboard and updates the pod status in the dashboard. Change-Id: I1ea22390a46182a185df9c5e1771c9312d462092 Signed-off-by: maxbr <maxbr@mi.fu-berlin.de>
Diffstat (limited to 'pharos-dashboard/src/dashboard')
-rw-r--r--pharos-dashboard/src/dashboard/admin.py1
-rw-r--r--pharos-dashboard/src/dashboard/migrations/0001_initial.py20
-rw-r--r--pharos-dashboard/src/dashboard/migrations/0002_auto_20161005_1202.py21
-rw-r--r--pharos-dashboard/src/dashboard/models.py15
4 files changed, 32 insertions, 25 deletions
diff --git a/pharos-dashboard/src/dashboard/admin.py b/pharos-dashboard/src/dashboard/admin.py
index a1463a7..56ac169 100644
--- a/pharos-dashboard/src/dashboard/admin.py
+++ b/pharos-dashboard/src/dashboard/admin.py
@@ -14,3 +14,4 @@ from dashboard.models import *
admin.site.register(Resource)
admin.site.register(Server)
+admin.site.register(ResourceStatus)
diff --git a/pharos-dashboard/src/dashboard/migrations/0001_initial.py b/pharos-dashboard/src/dashboard/migrations/0001_initial.py
index ee054d3..aaf3945 100644
--- a/pharos-dashboard/src/dashboard/migrations/0001_initial.py
+++ b/pharos-dashboard/src/dashboard/migrations/0001_initial.py
@@ -1,5 +1,5 @@
# -*- coding: utf-8 -*-
-# Generated by Django 1.10 on 2016-09-23 11:36
+# Generated by Django 1.10 on 2016-11-03 13:33
from __future__ import unicode_literals
from django.conf import settings
@@ -12,8 +12,8 @@ class Migration(migrations.Migration):
initial = True
dependencies = [
- ('jenkins', '0001_initial'),
migrations.swappable_dependency(settings.AUTH_USER_MODEL),
+ ('jenkins', '0001_initial'),
]
operations = [
@@ -26,13 +26,27 @@ class Migration(migrations.Migration):
('url', models.CharField(blank=True, max_length=100, null=True)),
('owner', models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, related_name='user_lab_owner', to=settings.AUTH_USER_MODEL)),
('slave', models.ForeignKey(null=True, on_delete=django.db.models.deletion.DO_NOTHING, to='jenkins.JenkinsSlave')),
- ('vpn_users', models.ManyToManyField(related_name='user_vpn_users', to=settings.AUTH_USER_MODEL)),
+ ('vpn_users', models.ManyToManyField(blank=True, related_name='user_vpn_users', to=settings.AUTH_USER_MODEL)),
],
options={
'db_table': 'resource',
},
),
migrations.CreateModel(
+ name='ResourceStatus',
+ fields=[
+ ('id', models.AutoField(primary_key=True, serialize=False)),
+ ('timestamp', models.DateTimeField(auto_now_add=True)),
+ ('type', models.CharField(max_length=20)),
+ ('title', models.CharField(max_length=50)),
+ ('content', models.CharField(max_length=5000)),
+ ('resource', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='dashboard.Resource')),
+ ],
+ options={
+ 'db_table': 'resource_status',
+ },
+ ),
+ migrations.CreateModel(
name='Server',
fields=[
('id', models.AutoField(primary_key=True, serialize=False)),
diff --git a/pharos-dashboard/src/dashboard/migrations/0002_auto_20161005_1202.py b/pharos-dashboard/src/dashboard/migrations/0002_auto_20161005_1202.py
deleted file mode 100644
index e47c3b1..0000000
--- a/pharos-dashboard/src/dashboard/migrations/0002_auto_20161005_1202.py
+++ /dev/null
@@ -1,21 +0,0 @@
-# -*- coding: utf-8 -*-
-# Generated by Django 1.10 on 2016-10-05 12:02
-from __future__ import unicode_literals
-
-from django.conf import settings
-from django.db import migrations, models
-
-
-class Migration(migrations.Migration):
-
- dependencies = [
- ('dashboard', '0001_initial'),
- ]
-
- operations = [
- migrations.AlterField(
- model_name='resource',
- name='vpn_users',
- field=models.ManyToManyField(blank=True, related_name='user_vpn_users', to=settings.AUTH_USER_MODEL),
- ),
- ]
diff --git a/pharos-dashboard/src/dashboard/models.py b/pharos-dashboard/src/dashboard/models.py
index ec6fec7..4f3ac95 100644
--- a/pharos-dashboard/src/dashboard/models.py
+++ b/pharos-dashboard/src/dashboard/models.py
@@ -64,7 +64,6 @@ class Resource(models.Model):
def __str__(self):
return self.name
-
class Server(models.Model):
id = models.AutoField(primary_key=True)
resource = models.ForeignKey(Resource, on_delete=models.CASCADE)
@@ -79,3 +78,17 @@ class Server(models.Model):
def __str__(self):
return self.name
+
+class ResourceStatus(models.Model):
+ id = models.AutoField(primary_key=True)
+ resource = models.ForeignKey(Resource, on_delete=models.CASCADE)
+ timestamp = models.DateTimeField(auto_now_add=True)
+ type = models.CharField(max_length=20)
+ title = models.CharField(max_length=50)
+ content = models.CharField(max_length=5000)
+
+ class Meta:
+ db_table = 'resource_status'
+
+ def __str__(self):
+ return self.resource.name + ': ' + self.title + ' ' + str(self.timestamp)