X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/5a3fcd947082b668f2d6941b88f0cf6399d4ad1e..d018aa211d3efc93c711248851db379b19fa60a1:/services/api/app/models/job_task.rb diff --git a/services/api/app/models/job_task.rb b/services/api/app/models/job_task.rb index 89328ded04..b181e76ccf 100644 --- a/services/api/app/models/job_task.rb +++ b/services/api/app/models/job_task.rb @@ -1,9 +1,16 @@ +# Copyright (C) The Arvados Authors. All rights reserved. +# +# SPDX-License-Identifier: AGPL-3.0 + class JobTask < ArvadosModel include HasUuid include KindAndEtag include CommonApiTemplate serialize :parameters, Hash + before_create :set_default_qsequence after_update :delete_created_job_tasks_if_failed + before_create :create_disabled + before_update :update_disabled api_accessible :user, extend: :common do |t| t.add :job_uuid @@ -14,6 +21,8 @@ class JobTask < ArvadosModel t.add :output t.add :progress t.add :success + t.add :started_at + t.add :finished_at end protected @@ -23,4 +32,17 @@ class JobTask < ArvadosModel JobTask.delete_all ['created_by_job_task_uuid = ?', self.uuid] end end + + def set_default_qsequence + self.qsequence ||= self.class.connection. + select_value("SELECT nextval('job_tasks_qsequence_seq')") + end + + def create_disabled + raise "Disabled" + end + + def update_disabled + raise "Disabled" + end end