summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKamil Trzcinski <ayufan@ayufan.eu>2017-11-07 13:50:04 +0100
committerKamil Trzcinski <ayufan@ayufan.eu>2017-11-07 13:50:24 +0100
commit67e12219bf6257568f91c1a9c883e4821337c80d (patch)
tree0df27b3b56778a7a389c389ea894b329eabb2567
parent1bd1d462dab33997c19432b00c867070fb6b1214 (diff)
downloadgitlab-ce-67e12219bf6257568f91c1a9c883e4821337c80d.tar.gz
Rework initial state
-rw-r--r--app/models/clusters/applications/helm.rb10
-rw-r--r--app/models/clusters/concerns/application_status.rb2
2 files changed, 7 insertions, 5 deletions
diff --git a/app/models/clusters/applications/helm.rb b/app/models/clusters/applications/helm.rb
index 863f9b9d834..d60bb7dcd02 100644
--- a/app/models/clusters/applications/helm.rb
+++ b/app/models/clusters/applications/helm.rb
@@ -11,14 +11,16 @@ module Clusters
validates :cluster, presence: true
- after_initialize :set_initial_status
-
def self.application_name
self.to_s.demodulize.underscore
end
- def set_initial_status
- self.status = 0 unless cluster&.platform_kubernetes_active?
+ def initial_status
+ if cluster&.platform_kubernetes_active?
+ :installable
+ else
+ :not_installable
+ end
end
def name
diff --git a/app/models/clusters/concerns/application_status.rb b/app/models/clusters/concerns/application_status.rb
index e73abfa9055..3e15da7fc32 100644
--- a/app/models/clusters/concerns/application_status.rb
+++ b/app/models/clusters/concerns/application_status.rb
@@ -4,7 +4,7 @@ module Clusters
extend ActiveSupport::Concern
included do
- state_machine :status, initial: :installable do
+ state_machine :status, initial: ->(application) { application.initial_status } do
state :not_installable, value: -2
state :errored, value: -1
state :installable, value: 0