diff options
author | Stan Hu <stanhu@gmail.com> | 2017-12-02 22:55:49 -0800 |
---|---|---|
committer | Stan Hu <stanhu@gmail.com> | 2017-12-12 15:07:23 -0800 |
commit | 8e7f19c60bea4eec86844be1e0db12ebf30f105e (patch) | |
tree | a86172a9287a4e85900236e3007408d7a8ae2fc2 /app/workers | |
parent | ad1ce1238e8adfb1d10529a99ffd2b298bde3fb5 (diff) | |
download | gitlab-ce-8e7f19c60bea4eec86844be1e0db12ebf30f105e.tar.gz |
Add button to run scheduled pipeline immediately
Closes #38741
Diffstat (limited to 'app/workers')
-rw-r--r-- | app/workers/run_pipeline_schedule_worker.rb | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/app/workers/run_pipeline_schedule_worker.rb b/app/workers/run_pipeline_schedule_worker.rb new file mode 100644 index 00000000000..ac6371f0871 --- /dev/null +++ b/app/workers/run_pipeline_schedule_worker.rb @@ -0,0 +1,20 @@ +class RunPipelineScheduleWorker + include Sidekiq::Worker + include PipelineQueue + + enqueue_in group: :creation + + def perform(schedule_id, user_id) + schedule = Ci::PipelineSchedule.find(schedule_id) + user = User.find(user_id) + + run_pipeline_schedule(schedule, user) + end + + def run_pipeline_schedule(schedule, user) + Ci::CreatePipelineService.new(schedule.project, + user, + ref: schedule.ref) + .execute(:schedule, ignore_skip_ci: true, save_on_errors: false, schedule: schedule) + end +end |