diff --git a/app/models/service.rb b/app/models/service.rb index 1d259bcfec78af6ea123e7d35c3e853fec29951f..ad835293b46d4e8b753267b4f52bc80116bc3754 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 28c908ea4258aa71bbdf8359db4c3b33d253c52f..a849af062c5e16193fe5b979e32de817c285cc23 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)