summaryrefslogtreecommitdiff
path: root/app/services/ci/update_runner_service.rb
blob: 4a17e25c0cc95bec8560682b3cc7269f8554e5a7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
# frozen_string_literal: true

module Ci
  class UpdateRunnerService
    attr_reader :runner

    def initialize(runner)
      @runner = runner
    end

    def update(params)
      params[:active] = !params.delete(:paused) if params.include?(:paused)

      runner.update(params).tap do |updated|
        runner.tick_runner_queue if updated
      end
    end
  end
end