29 lines
692 B
Ruby
29 lines
692 B
Ruby
|
module Gitlab
|
||
|
class DowntimeCheck
|
||
|
class Message
|
||
|
attr_reader :path, :offline, :reason
|
||
|
|
||
|
OFFLINE = "\e[32moffline\e[0m"
|
||
|
ONLINE = "\e[31monline\e[0m"
|
||
|
|
||
|
# path - The file path of the migration.
|
||
|
# offline - When set to `true` the migration will require downtime.
|
||
|
# reason - The reason as to why the migration requires downtime.
|
||
|
def initialize(path, offline = false, reason = nil)
|
||
|
@path = path
|
||
|
@offline = offline
|
||
|
@reason = reason
|
||
|
end
|
||
|
|
||
|
def to_s
|
||
|
label = offline ? OFFLINE : ONLINE
|
||
|
|
||
|
message = "[#{label}]: #{path}"
|
||
|
message += ": #{reason}" if reason
|
||
|
|
||
|
message
|
||
|
end
|
||
|
end
|
||
|
end
|
||
|
end
|