Class: Ci::Runners::ProcessRunnerVersionUpdateService

Inherits:
Object
  • Object
show all
Defined in:
app/services/ci/runners/process_runner_version_update_service.rb

Instance Method Summary collapse

Constructor Details

#initialize(version) ⇒ ProcessRunnerVersionUpdateService

Returns a new instance of ProcessRunnerVersionUpdateService.



6
7
8
# File 'app/services/ci/runners/process_runner_version_update_service.rb', line 6

def initialize(version)
  @version = version
end

Instance Method Details

#executeObject



10
11
12
13
14
15
16
17
18
19
# File 'app/services/ci/runners/process_runner_version_update_service.rb', line 10

def execute
  return ServiceResponse.error(message: 'version update disabled') unless enabled?
  return ServiceResponse.error(message: 'version not present') unless @version

  _, status = upgrade_check_service.check_runner_upgrade_suggestion(@version)
  return ServiceResponse.error(message: 'upgrade version check failed') if status == :error

  Ci::RunnerVersion.upsert({ version: @version, status: status })
  ServiceResponse.success(payload: { upgrade_status: status.to_s })
end