diff --git a/atdb/atdb/static/taskdatabase/stager.png b/atdb/atdb/static/taskdatabase/stager.png new file mode 100644 index 0000000000000000000000000000000000000000..7281bb451cd57510d12cfe1201a6ada20ead194a Binary files /dev/null and b/atdb/atdb/static/taskdatabase/stager.png differ diff --git a/atdb/taskdatabase/models.py b/atdb/taskdatabase/models.py index b0e29ef410211548e3c4a48259aa6870f6cc9633..87bef70cdc0c4f975e450ba88a322415c22c6b3e 100644 --- a/atdb/taskdatabase/models.py +++ b/atdb/taskdatabase/models.py @@ -336,6 +336,16 @@ class Task(models.Model): return "unknown" + @property + def stageit_url(self): + stage_request_id = self.stage_request_id + if stage_request_id: + stager_api = Configuration.objects.get(key='stager:api').value + url = f"{stager_api}/requests/{self.stage_request_id}/" + return url + else: + return None + # NV: this shows the latest status change, but because it is a derived property it cannot be sorted. # This functionality was not requested, and to avoid additional requests about 'sort' functionalty # it is currently commented out. Could be of use later though, so I leave it in for now. diff --git a/atdb/taskdatabase/static/taskdatabase/stager.png b/atdb/taskdatabase/static/taskdatabase/stager.png new file mode 100644 index 0000000000000000000000000000000000000000..50d7870d62ed6230878f1cc9033469804ab9891a Binary files /dev/null and b/atdb/taskdatabase/static/taskdatabase/stager.png differ diff --git a/atdb/taskdatabase/templates/taskdatabase/failures/tasks.html b/atdb/taskdatabase/templates/taskdatabase/failures/tasks.html index 8175a58fa8e828eb022c1d0f79668ab121db89e3..59496de37be0e6bc17e299b3c9db68c465cb7b7e 100644 --- a/atdb/taskdatabase/templates/taskdatabase/failures/tasks.html +++ b/atdb/taskdatabase/templates/taskdatabase/failures/tasks.html @@ -41,6 +41,9 @@ <td> {% include "taskdatabase/failures/retry_buttons.html" %} + {% if task.stageit_url != None %} + <a href="{{ task.stageit_url }}" class="btn btn-info btn-sm" role="button" target="_blank"><img src="{% static 'taskdatabase/stager.png' %}" height="20" alt=""> StageIT</a> + {% endif %} <a href="{% url 'task-discard-view' task.pk 'discard' my_tasks.number %}" class="btn btn-danger btn-sm" role="button"><i class="fas fa-trash-alt"></i> Discard</a> </td> diff --git a/atdb/taskdatabase/templates/taskdatabase/index.html b/atdb/taskdatabase/templates/taskdatabase/index.html index 822b90a143f8beecc2f35353425a2237be61251d..4a37aaba7c20dd55cc575929e9efa673b23db17d 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 17 July 2023 + <p class="footer"> Version 18 July 2023 </div> {% include 'taskdatabase/refresh.html' %} diff --git a/atdb/taskdatabase/templates/taskdatabase/tasks/details_card.html b/atdb/taskdatabase/templates/taskdatabase/tasks/details_card.html index 1d527849e3a52b094ad71c56221310e318e00cff..280a5e0aece4e67e5d762f9464fa87cdaa1d10da 100644 --- a/atdb/taskdatabase/templates/taskdatabase/tasks/details_card.html +++ b/atdb/taskdatabase/templates/taskdatabase/tasks/details_card.html @@ -65,7 +65,8 @@ <tr><td><b>purge_policy</b></td><td>{{ task.purge_policy }}</td></tr> <tr><td><b>cleanup_policy</b></td><td>{{ task.cleanup_policy }}</td></tr> <tr><td><b>resume</b></td><td>{{ task.resume }}</td></tr> - <tr><td><b>stage_request_id</b></td><td>{{ task.stage_request_id }}</td></tr> + + <tr><td><b>stage_request_id</b></td><td><a href="{{ task.stageit_url }}">{{ task.stage_request_id }}</a></td></tr> <tr><td><b>size_to_process</b></td><td>{{ task.size_to_process|filesizeformat }}</td></tr> <tr><td><b>size_processed</b></td><td>{{ task.size_processed|filesizeformat }}</td></tr> <tr><td><b>total_processing_time</b></td><td>{{ task.total_processing_time }}</td></tr>