summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJames Fargher <proglottis@gmail.com>2019-05-24 09:39:59 +0100
committerJames Fargher <proglottis@gmail.com>2019-05-30 13:22:50 +0100
commit1a25ad3e578c9f3a0682551b7bef0a554c2763b8 (patch)
tree2f5746e6b140dd30908a6fc872d049f0c80b4f04
parentf26884a0a82c7540b0b81e59c05ea7d75fbd2dd8 (diff)
downloadgitlab-ce-1a25ad3e578c9f3a0682551b7bef0a554c2763b8.tar.gz
Allow a user defined namespace on non-gitlab managed clusters
Since they are not GitLab managed we wont make assumptions about the namespaces used
-rw-r--r--app/models/clusters/cluster.rb2
-rw-r--r--spec/models/clusters/cluster_spec.rb34
2 files changed, 30 insertions, 6 deletions
diff --git a/app/models/clusters/cluster.rb b/app/models/clusters/cluster.rb
index 57a1e461b2d..e23fb9f85c1 100644
--- a/app/models/clusters/cluster.rb
+++ b/app/models/clusters/cluster.rb
@@ -208,7 +208,7 @@ module Clusters
end
def allow_user_defined_namespace?
- project_type?
+ project_type? || !managed?
end
def kube_ingress_domain
diff --git a/spec/models/clusters/cluster_spec.rb b/spec/models/clusters/cluster_spec.rb
index 4739e62289a..19ced0275a1 100644
--- a/spec/models/clusters/cluster_spec.rb
+++ b/spec/models/clusters/cluster_spec.rb
@@ -509,19 +509,43 @@ describe Clusters::Cluster, :use_clean_rails_memory_store_caching do
subject { cluster.allow_user_defined_namespace? }
context 'project type cluster' do
- it { is_expected.to be_truthy }
+ context 'gitlab managed' do
+ it { is_expected.to be_truthy }
+ end
+
+ context 'not managed' do
+ let(:cluster) { create(:cluster, :provided_by_gcp, managed: false) }
+
+ it { is_expected.to be_truthy }
+ end
end
context 'group type cluster' do
- let(:cluster) { create(:cluster, :provided_by_gcp, :group) }
+ context 'gitlab managed' do
+ let(:cluster) { create(:cluster, :provided_by_gcp, :group) }
+
+ it { is_expected.to be_falsey }
+ end
- it { is_expected.to be_falsey }
+ context 'not managed' do
+ let(:cluster) { create(:cluster, :provided_by_gcp, :group, managed: false) }
+
+ it { is_expected.to be_truthy }
+ end
end
context 'instance type cluster' do
- let(:cluster) { create(:cluster, :provided_by_gcp, :instance) }
+ context 'gitlab managed' do
+ let(:cluster) { create(:cluster, :provided_by_gcp, :instance) }
+
+ it { is_expected.to be_falsey }
+ end
+
+ context 'not managed' do
+ let(:cluster) { create(:cluster, :provided_by_gcp, :instance, managed: false) }
- it { is_expected.to be_falsey }
+ it { is_expected.to be_truthy }
+ end
end
end