From 7e34a19f291cecb359e9e77c60a0fc169fe3c18c Mon Sep 17 00:00:00 2001
From: Douwe Maan <douwe@selenight.nl>
Date: Thu, 5 Jul 2018 11:43:48 +0200
Subject: [PATCH] Check whether new service created from template is valid
 after unflagging it as a template

---
 app/models/service.rb       | 2 +-
 spec/models/service_spec.rb | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/app/models/service.rb b/app/models/service.rb
index 1d259bcfec78a..ad835293b46d4 100644
--- a/app/models/service.rb
+++ b/app/models/service.rb
@@ -281,9 +281,9 @@ def self.available_services_names
 
   def self.build_from_template(project_id, template)
     service = template.dup
-    service.active = false unless service.valid?
     service.template = false
     service.project_id = project_id
+    service.active = false if service.active? && !service.valid?
     service
   end
 
diff --git a/spec/models/service_spec.rb b/spec/models/service_spec.rb
index 28c908ea4258a..a849af062c5e1 100644
--- a/spec/models/service_spec.rb
+++ b/spec/models/service_spec.rb
@@ -78,7 +78,7 @@
       context 'when template is invalid' do
         it 'sets service template to inactive when template is invalid' do
           project = create(:project)
-          template = JiraService.new(template: true, active: true)
+          template = KubernetesService.new(template: true, active: true)
           template.save(validate: false)
 
           service = described_class.build_from_template(project.id, template)
-- 
GitLab