diff options
Diffstat (limited to 'app')
-rw-r--r-- | app/models/clusters/platforms/kubernetes.rb | 4 | ||||
-rw-r--r-- | app/models/concerns/ci/contextable.rb | 6 | ||||
-rw-r--r-- | app/models/project.rb | 4 | ||||
-rw-r--r-- | app/models/project_services/kubernetes_service.rb | 6 | ||||
-rw-r--r-- | app/models/project_services/mock_deployment_service.rb | 2 |
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 |