diff options
author | Thong Kuah <tkuah@gitlab.com> | 2018-11-12 06:00:23 +0300 |
---|---|---|
committer | Thong Kuah <tkuah@gitlab.com> | 2018-11-14 23:25:03 +0300 |
commit | f27529ba5d9011b89c51312536555b89c9a9eba2 (patch) | |
tree | 1ef21958968f495e452b7a56b47279eb7caa5fe6 | |
parent | f76b3106e85411c3526b88ae366ef7619241cb85 (diff) |
Deprecate #project in Clusters::Platform::Kubernetes
Clusters now potentially have many projects with group level clusters,
so move away from assuming only one project
-rw-r--r-- | app/models/clusters/platforms/kubernetes.rb | 8 | ||||
-rw-r--r-- | spec/models/clusters/platforms/kubernetes_spec.rb | 10 |
2 files changed, 16 insertions, 2 deletions
diff --git a/app/models/clusters/platforms/kubernetes.rb b/app/models/clusters/platforms/kubernetes.rb index 3c5d7756eec..aafac1aa6a2 100644 --- a/app/models/clusters/platforms/kubernetes.rb +++ b/app/models/clusters/platforms/kubernetes.rb @@ -51,7 +51,6 @@ module Clusters alias_attribute :ca_pem, :ca_cert - delegate :project, to: :cluster, allow_nil: true delegate :enabled?, to: :cluster, allow_nil: true delegate :managed?, to: :cluster, allow_nil: true delegate :allow_user_defined_namespace?, to: :cluster, allow_nil: true @@ -65,6 +64,13 @@ module Clusters abac: 2 } + # DEPRECATED - please use Clusters::KubernetesNamespace + def project + raise "Cluster type does not support #project" if cluster && !cluster.project_type? + + cluster&.project + end + def actual_namespace if namespace.present? namespace diff --git a/spec/models/clusters/platforms/kubernetes_spec.rb b/spec/models/clusters/platforms/kubernetes_spec.rb index 99fd6ccc4d8..c9ef88353ec 100644 --- a/spec/models/clusters/platforms/kubernetes_spec.rb +++ b/spec/models/clusters/platforms/kubernetes_spec.rb @@ -13,7 +13,6 @@ describe Clusters::Platforms::Kubernetes, :use_clean_rails_memory_store_caching it { is_expected.to validate_presence_of(:api_url) } it { is_expected.to validate_presence_of(:token) } - it { is_expected.to delegate_method(:project).to(:cluster) } it { is_expected.to delegate_method(:enabled?).to(:cluster) } it { is_expected.to delegate_method(:managed?).to(:cluster) } it { is_expected.to delegate_method(:kubernetes_namespace).to(:cluster) } @@ -135,6 +134,15 @@ describe Clusters::Platforms::Kubernetes, :use_clean_rails_memory_store_caching end end + describe '#project' do + let(:cluster) { create(:cluster, :project) } + let(:kubernetes) { build(:cluster_platform_kubernetes, cluster: cluster) } + + subject { kubernetes.project } + + it { is_expected.to eq cluster.project } + end + describe '#kubeclient' do let(:cluster) { create(:cluster, :project) } let(:kubernetes) { build(:cluster_platform_kubernetes, :configured, namespace: 'a-namespace', cluster: cluster) } |