gitlab-org--gitlab-foss/app/models/ci/build_schedule.rb

26 lines
467 B
Ruby

# frozen_string_literal: true
module Ci
class BuildSchedule < ActiveRecord::Base
extend Gitlab::Ci::Model
include Importable
include AfterCommitQueue
belongs_to :build
after_create :schedule, unless: :importing?
def execute_in
[0, self.execute_at - Time.now].max
end
private
def schedule
run_after_commit do
Ci::BuildScheduleWorker.perform_at(self.execute_at, self.build_id)
end
end
end
end