foreman/app/models/host_status/build_status.rb @ 67110766
e54016da | Marek Hulan | module HostStatus
|
|
class BuildStatus < Status
|
|||
PENDING = 1
|
|||
5e1b7875 | Julien Pivotto | TOKEN_EXPIRED = 2
|
|
67110766 | Lukas Zapletal | BUILD_FAILED = 3
|
|
e54016da | Marek Hulan | BUILT = 0
|
|
def self.status_name
|
|||
N_("Build")
|
|||
end
|
|||
def to_label(options = {})
|
|||
case to_status
|
|||
when PENDING
|
|||
N_("Pending installation")
|
|||
5e1b7875 | Julien Pivotto | when TOKEN_EXPIRED
|
|
N_("Token expired")
|
|||
e54016da | Marek Hulan | when BUILT
|
|
N_("Installed")
|
|||
67110766 | Lukas Zapletal | when BUILD_FAILED
|
|
N_("Installation error")
|
|||
e54016da | Marek Hulan | else
|
|
N_("Unknown build status")
|
|||
end
|
|||
end
|
|||
5e1b7875 | Julien Pivotto | def to_global(options = {})
|
|
case to_status
|
|||
67110766 | Lukas Zapletal | when TOKEN_EXPIRED, BUILD_FAILED
|
|
5e1b7875 | Julien Pivotto | HostStatus::Global::ERROR
|
|
else
|
|||
HostStatus::Global::OK
|
|||
end
|
|||
end
|
|||
e54016da | Marek Hulan | def to_status(options = {})
|
|
if waiting_for_build?
|
|||
5e1b7875 | Julien Pivotto | if token_expired?
|
|
TOKEN_EXPIRED
|
|||
else
|
|||
PENDING
|
|||
end
|
|||
e54016da | Marek Hulan | else
|
|
67110766 | Lukas Zapletal | if build_errors?
|
|
BUILD_FAILED
|
|||
else
|
|||
BUILT
|
|||
end
|
|||
e54016da | Marek Hulan | end
|
|
end
|
|||
294ced20 | Dominic Cleal | def relevant?(options = {})
|
|
e54016da | Marek Hulan | SETTINGS[:unattended] && host.managed?
|
|
end
|
|||
def waiting_for_build?
|
|||
b03dcd1b | Michael Moll | host&.build
|
|
e54016da | Marek Hulan | end
|
|
5e1b7875 | Julien Pivotto | ||
def token_expired?
|
|||
b03dcd1b | Michael Moll | host&.token_expired?
|
|
5e1b7875 | Julien Pivotto | end
|
|
67110766 | Lukas Zapletal | ||
def build_errors?
|
|||
host && host.build_errors.present?
|
|||
end
|
|||
e54016da | Marek Hulan | end
|
|
end
|
|||
HostStatus.status_registry.add(HostStatus::BuildStatus)
|