blob: dab0bd23e2e64ba009a2f10456e166bb0c486c34 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
|
# frozen_string_literal: true
module Clusters
module Concerns
module ApplicationVersion
extend ActiveSupport::Concern
EXTERNAL_VERSION = 'EXTERNALLY_INSTALLED'
included do
state_machine :status do
before_transition any => [:installed, :updated] do |application|
application.version = application.class.const_get(:VERSION, false)
end
before_transition any => [:externally_installed] do |application|
application.version = EXTERNAL_VERSION
end
end
end
def update_available?
version != self.class.const_get(:VERSION, false)
end
end
end
end
|