summaryrefslogtreecommitdiff
path: root/app
diff options
context:
space:
mode:
Diffstat (limited to 'app')
-rw-r--r--app/models/clusters/platforms/kubernetes.rb4
-rw-r--r--app/models/concerns/ci/contextable.rb6
-rw-r--r--app/models/project.rb4
-rw-r--r--app/models/project_services/kubernetes_service.rb6
-rw-r--r--app/models/project_services/mock_deployment_service.rb2
5 files changed, 14 insertions, 8 deletions
diff --git a/app/models/clusters/platforms/kubernetes.rb b/app/models/clusters/platforms/kubernetes.rb
index 2afe471d1cc..0f592a7b131 100644
--- a/app/models/clusters/platforms/kubernetes.rb
+++ b/app/models/clusters/platforms/kubernetes.rb
@@ -70,7 +70,9 @@ module Clusters
default_value_for :authorization_type, :rbac
- def predefined_variables(project:)
+ def predefined_variables(environment:)
+ project = environment.project
+
Gitlab::Ci::Variables::Collection.new.tap do |variables|
variables.append(key: 'KUBE_URL', value: api_url)
diff --git a/app/models/concerns/ci/contextable.rb b/app/models/concerns/ci/contextable.rb
index e1d5ce7f7d4..a7e68ce7403 100644
--- a/app/models/concerns/ci/contextable.rb
+++ b/app/models/concerns/ci/contextable.rb
@@ -15,7 +15,7 @@ module Ci
variables.concat(project.predefined_variables)
variables.concat(pipeline.predefined_variables)
variables.concat(runner.predefined_variables) if runnable? && runner
- variables.concat(project.deployment_variables(environment: environment)) if environment
+ variables.concat(deployment_variables(environment_name: environment)) if environment
variables.concat(yaml_variables)
variables.concat(user_variables)
variables.concat(secret_group_variables)
@@ -104,5 +104,9 @@ module Ci
def secret_project_variables(environment: persisted_environment)
project.ci_variables_for(ref: git_ref, environment: environment)
end
+
+ def deployment_variables(environment_name:)
+ project.deployment_variables(environment_name: environment_name, persisted_environment: persisted_environment)
+ end
end
end
diff --git a/app/models/project.rb b/app/models/project.rb
index 7851f37116c..ff66de80089 100644
--- a/app/models/project.rb
+++ b/app/models/project.rb
@@ -1860,8 +1860,8 @@ class Project < ApplicationRecord
end
end
- def deployment_variables(environment: nil)
- deployment_platform(environment: environment)&.predefined_variables(project: self) || []
+ def deployment_variables(environment_name: nil, persisted_environment: nil)
+ deployment_platform(environment: environment_name)&.predefined_variables(environment: persisted_environment) || []
end
def auto_devops_variables
diff --git a/app/models/project_services/kubernetes_service.rb b/app/models/project_services/kubernetes_service.rb
index edf7e886e77..fa29b3265bf 100644
--- a/app/models/project_services/kubernetes_service.rb
+++ b/app/models/project_services/kubernetes_service.rb
@@ -94,7 +94,7 @@ class KubernetesService < Service
]
end
- def kubernetes_namespace_for(project)
+ def kubernetes_namespace_for(_)
if namespace.present?
namespace
else
@@ -117,12 +117,12 @@ class KubernetesService < Service
# as a way to keep this service compatible with
# Clusters::Platforms::Kubernetes, it won't be used on this method
# as it's only needed for Clusters::Cluster.
- def predefined_variables(project:)
+ def predefined_variables(environment:)
Gitlab::Ci::Variables::Collection.new.tap do |variables|
variables
.append(key: 'KUBE_URL', value: api_url)
.append(key: 'KUBE_TOKEN', value: token, public: false, masked: true)
- .append(key: 'KUBE_NAMESPACE', value: kubernetes_namespace_for(project))
+ .append(key: 'KUBE_NAMESPACE', value: kubernetes_namespace_for(nil))
.append(key: 'KUBECONFIG', value: kubeconfig, public: false, file: true)
if ca_pem.present?
diff --git a/app/models/project_services/mock_deployment_service.rb b/app/models/project_services/mock_deployment_service.rb
index 1103cb11e73..fea5e35e69a 100644
--- a/app/models/project_services/mock_deployment_service.rb
+++ b/app/models/project_services/mock_deployment_service.rb
@@ -24,7 +24,7 @@ class MockDeploymentService < Service
%w()
end
- def predefined_variables(project:)
+ def predefined_variables(environment:)
[]
end