41 lines
936 B
Ruby
41 lines
936 B
Ruby
module Devops
|
|
module Executor
|
|
class ServerOperationResult
|
|
RESULT_CODES = {
|
|
ok: 0,
|
|
server_bootstrap_fail: 2,
|
|
server_cannot_update_tags: 3,
|
|
server_bootstrap_private_ip_unset: 4,
|
|
server_not_in_chef_nodes: 5,
|
|
server_bootstrap_unknown_error: 7,
|
|
deploy_unknown_error: 6,
|
|
deploy_failed: 8,
|
|
creating_server_unknown_error: 9,
|
|
creating_server_in_cloud_failed: 10
|
|
}
|
|
|
|
attr_reader :code
|
|
|
|
def initialize(error_code)
|
|
@code = error_code
|
|
end
|
|
|
|
def ok?
|
|
@code == 0
|
|
end
|
|
|
|
def reason
|
|
RESULT_CODES.key(@code) || :unknown_error
|
|
end
|
|
|
|
def occured_during_bootstrap?(code)
|
|
[:server_bootstrap_fail, :server_not_in_chef_nodes, :server_bootstrap_unknown_error].include?(reason)
|
|
end
|
|
|
|
def self.code_of_reason(reason)
|
|
RESULT_CODES.fetch(reason)
|
|
end
|
|
|
|
end
|
|
end
|
|
end |