summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTiger <twatson@gitlab.com>2019-04-26 09:49:02 +1000
committerTiger <twatson@gitlab.com>2019-04-29 07:57:08 +1000
commit825d759634773c82b6417ba8e7a9fdcb0f76561c (patch)
tree17769e796ff9d3b790ce2115a4eba8308fa6e12e
parent6246979a8659cef67533a5033755a45ad72d30c5 (diff)
downloadgitlab-ce-825d759634773c82b6417ba8e7a9fdcb0f76561c.tar.gz
Fix deployments for Kubernetes service templates
https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/27687
-rw-r--r--app/models/deployment.rb6
-rw-r--r--changelogs/unreleased/60821-deployment-jobs-broken-as-of-11-10-0.yml5
-rw-r--r--spec/models/deployment_spec.rb6
3 files changed, 16 insertions, 1 deletions
diff --git a/app/models/deployment.rb b/app/models/deployment.rb
index f5fdf285522..92c7311014a 100644
--- a/app/models/deployment.rb
+++ b/app/models/deployment.rb
@@ -85,7 +85,11 @@ class Deployment < ApplicationRecord
end
def cluster
- project.deployment_platform(environment: environment.name)&.cluster
+ platform = project.deployment_platform(environment: environment.name)
+
+ if platform.present? && platform.respond_to?(:cluster)
+ platform.cluster
+ end
end
def execute_hooks
diff --git a/changelogs/unreleased/60821-deployment-jobs-broken-as-of-11-10-0.yml b/changelogs/unreleased/60821-deployment-jobs-broken-as-of-11-10-0.yml
new file mode 100644
index 00000000000..88584352d42
--- /dev/null
+++ b/changelogs/unreleased/60821-deployment-jobs-broken-as-of-11-10-0.yml
@@ -0,0 +1,5 @@
+---
+title: Fix Kubernetes service template deployment jobs broken as of 11.10.0
+merge_request: 27687
+author:
+type: fixed
diff --git a/spec/models/deployment_spec.rb b/spec/models/deployment_spec.rb
index 0ca758429b8..f51322e1404 100644
--- a/spec/models/deployment_spec.rb
+++ b/spec/models/deployment_spec.rb
@@ -400,6 +400,12 @@ describe Deployment do
it { is_expected.to be_nil }
end
+ context 'project uses the kubernetes service for deployments' do
+ let!(:service) { create(:kubernetes_service, project: project) }
+
+ it { is_expected.to be_nil }
+ end
+
context 'project has a deployment platform' do
let!(:cluster) { create(:cluster, projects: [project]) }
let!(:platform) { create(:cluster_platform_kubernetes, cluster: cluster) }