Example #1
0
class OperatorRunAdmin(admin.ModelAdmin):
    list_display = (
        "id",
        link_relation("operator"),
        "first_run",
        "status",
        "run_count",
        progress_bar("percent_runs_succeeded"),
        progress_bar("percent_runs_finished"),
        "created_date",
    )
    ordering = ("-created_date", )
    readonly_fields = ("id", "operator", "job_group", "job_group_notifier",
                       "parent")

    def run_count(self, obj):
        return obj.runs.count()

    def first_run(self, obj):
        run = obj.runs.first()
        if run:
            url = reverse("admin:{}_{}_change".format(obj._meta.app_label,
                                                      "run"),
                          args=(run.pk, ))
            return format_html("<a href='{url}'>{name}</a>",
                               url=url,
                               name=run.name)
Example #2
0
class PipelineAdmin(admin.ModelAdmin):
    list_display = ('id', 'name', 'version', 'default', 'output_directory', link_relation("operator"))

    def get_readonly_fields(self, request, obj=None):
        if obj:
            return ('github', 'version')
        else:
            return []
Example #3
0
class PipelineAdmin(admin.ModelAdmin):
    list_display = ("id", "name", "version", "default", "output_directory",
                    link_relation("operator"))
    actions = [
        action_add_pipeline_to_cache,
    ]

    def get_readonly_fields(self, request, obj=None):
        if obj:
            return ("github", "version")
        else:
            return []
Example #4
0
class RunAdmin(admin.ModelAdmin):
    list_display = (
        "id",
        "name",
        link_relation("app"),
        link_relation("operator_run"),
        "tags",
        "status",
        "link_to_ridgeback",
        "created_date",
        "finished_date",
    )
    ordering = ("-created_date", )
    list_filter = (
        ("created_date", DateTimeRangeFilter),
        StatusFilter,
        AppFilter,
    )
    search_fields = ("tags__sampleId", "tags__requestId",
                     "tags__cmoSampleIds__contains", "operator_run__id")
    readonly_fields = (
        "samples",
        "job_group",
        "job_group_notifier",
        link_relation("operator_run"),
        link_relation("app"),
    )

    actions = [abort_run]

    def link_to_ridgeback(self, obj):
        if not obj.execution_id:
            return "-"
        return format_html(
            "<a target='_blank' href='{ridgeback_url}/admin/orchestrator/job/{execution_id}'>{execution_id}</a>",
            execution_id=obj.execution_id,
            ridgeback_url=RIDGEBACK_URL,
        )

    link_to_ridgeback.short_description = "Execution ID (Ridgeback)"
Example #5
0
class OperatorTriggerAdmin(admin.ModelAdmin):
    list_display = ('id', link_relation("from_operator"), link_relation("to_operator"), 'aggregate_condition')
Example #6
0
class RunAdmin(admin.ModelAdmin):
    list_display = ('id', 'name', link_relation("app"), link_relation("operator_run"), 'tags', 'status', 'execution_id', 'created_date', 'notify_for_outputs')
    ordering = ('-created_date',)
    list_filter = (('created_date', DateTimeRangeFilter), StatusFilter, AppFilter,)
    search_fields = ('tags__sampleId', 'tags__requestId', 'tags__cmoSampleIds__contains')
    readonly_fields = ('samples', 'job_group', 'job_group_notifier', 'operator_run', 'app')
Example #7
0
class RunAdmin(admin.ModelAdmin):
    list_display = ('id', 'name', link_relation("app"),
                    link_relation("operator_run"), 'tags', 'status',
                    'execution_id', 'created_date', 'notify_for_outputs')
    ordering = ('-created_date', )