From 9501b0514a04dd988aeb32ed17e3eb65a6706909 Mon Sep 17 00:00:00 2001 From: Vermaas <vermaas@astron.nl> Date: Thu, 6 Jul 2023 17:29:14 +0200 Subject: [PATCH] add webdav link to jobs serializer (for easier access) --- atdb/taskdatabase/models.py | 13 +++++++++++++ atdb/taskdatabase/serializers.py | 1 + atdb/taskdatabase/templates/taskdatabase/index.html | 2 +- 3 files changed, 15 insertions(+), 1 deletion(-) diff --git a/atdb/taskdatabase/models.py b/atdb/taskdatabase/models.py index dc4511d4..03682219 100644 --- a/atdb/taskdatabase/models.py +++ b/atdb/taskdatabase/models.py @@ -368,6 +368,19 @@ class Job(models.Model): def __str__(self): return 'task_id:'+str(self.task_id)+', job_id:'+str(self.job_id) + @property + def webdav_url(self): + try: + path = self.metadata['stdout_path'] + + # form the webdav url + s = path.rsplit('/', 1) + l = s[0].split('/run') + webdav_url = "https://public.spider.surfsara.nl/project/ldv/run" + l[1] + + return webdav_url + except: + return "N/A" class PostProcessingRule(models.Model): aggregation_key = models.CharField(db_index=True, max_length=20, default=None,null=True, blank=True) diff --git a/atdb/taskdatabase/serializers.py b/atdb/taskdatabase/serializers.py index 3b19c5d5..9253fe93 100644 --- a/atdb/taskdatabase/serializers.py +++ b/atdb/taskdatabase/serializers.py @@ -159,6 +159,7 @@ class JobSerializer(serializers.ModelSerializer): class Meta: model = Job fields = "__all__" + fields = ['id','type','task_id','job_id','metadata','webdav_url'] class PostProcessingRuleSerializer(serializers.ModelSerializer): diff --git a/atdb/taskdatabase/templates/taskdatabase/index.html b/atdb/taskdatabase/templates/taskdatabase/index.html index e957558f..fd59a14c 100644 --- a/atdb/taskdatabase/templates/taskdatabase/index.html +++ b/atdb/taskdatabase/templates/taskdatabase/index.html @@ -31,7 +31,7 @@ {% include 'taskdatabase/pagination.html' %} </div> </div> - <p class="footer"> Version 4 July 2023 + <p class="footer"> Version 6 July 2023 </div> {% include 'taskdatabase/refresh.html' %} -- GitLab