Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThong Kuah <tkuah@gitlab.com>2019-06-18 01:28:36 +0300
committerThong Kuah <tkuah@gitlab.com>2019-06-18 01:28:36 +0300
commit12d262c23f5a783106c08cd385ecb86ccb4b899c (patch)
tree5c454f40babbd137d16119bd914ac7052451e2c1
parent2dea03bf103a05d98366d6a8e9e906e890147bdc (diff)
parentee28255b21b712bf3d92db548915fee43658a430 (diff)
Merge branch '55362-refresh-blank-service-account-token' into 'master'
Refresh service_account_token for kubernetes_namespaces See merge request gitlab-org/gitlab-ce!29657
-rw-r--r--changelogs/unreleased/55362-refresh-blank-service-account-token.yml5
-rw-r--r--lib/gitlab/ci/build/prerequisite/kubernetes_namespace.rb2
-rw-r--r--spec/factories/clusters/kubernetes_namespaces.rb4
-rw-r--r--spec/lib/gitlab/ci/build/prerequisite/kubernetes_namespace_spec.rb8
4 files changed, 17 insertions, 2 deletions
diff --git a/changelogs/unreleased/55362-refresh-blank-service-account-token.yml b/changelogs/unreleased/55362-refresh-blank-service-account-token.yml
new file mode 100644
index 00000000000..3189de97e8b
--- /dev/null
+++ b/changelogs/unreleased/55362-refresh-blank-service-account-token.yml
@@ -0,0 +1,5 @@
+---
+title: Refresh service_account_token for kubernetes_namespaces
+merge_request: 29657
+author:
+type: fixed
diff --git a/lib/gitlab/ci/build/prerequisite/kubernetes_namespace.rb b/lib/gitlab/ci/build/prerequisite/kubernetes_namespace.rb
index dbdc59505ac..531c9ce4256 100644
--- a/lib/gitlab/ci/build/prerequisite/kubernetes_namespace.rb
+++ b/lib/gitlab/ci/build/prerequisite/kubernetes_namespace.rb
@@ -9,7 +9,7 @@ module Gitlab
deployment_cluster.present? &&
deployment_cluster.managed? &&
!deployment_cluster.project_type? &&
- kubernetes_namespace.new_record?
+ (kubernetes_namespace.new_record? || kubernetes_namespace.service_account_token.blank?)
end
def complete!
diff --git a/spec/factories/clusters/kubernetes_namespaces.rb b/spec/factories/clusters/kubernetes_namespaces.rb
index 3b50a57433f..042be7b4c4a 100644
--- a/spec/factories/clusters/kubernetes_namespaces.rb
+++ b/spec/factories/clusters/kubernetes_namespaces.rb
@@ -16,5 +16,9 @@ FactoryBot.define do
trait :with_token do
service_account_token { FFaker::Lorem.characters(10) }
end
+
+ trait :without_token do
+ service_account_token nil
+ end
end
end
diff --git a/spec/lib/gitlab/ci/build/prerequisite/kubernetes_namespace_spec.rb b/spec/lib/gitlab/ci/build/prerequisite/kubernetes_namespace_spec.rb
index 5387863bd07..5ac5122e800 100644
--- a/spec/lib/gitlab/ci/build/prerequisite/kubernetes_namespace_spec.rb
+++ b/spec/lib/gitlab/ci/build/prerequisite/kubernetes_namespace_spec.rb
@@ -35,9 +35,15 @@ describe Gitlab::Ci::Build::Prerequisite::KubernetesNamespace do
end
context 'and a namespace is already created for this project' do
- let!(:kubernetes_namespace) { create(:cluster_kubernetes_namespace, cluster: cluster, project: build.project) }
+ let!(:kubernetes_namespace) { create(:cluster_kubernetes_namespace, :with_token, cluster: cluster, project: build.project) }
it { is_expected.to be_falsey }
+
+ context 'and the service_account_token is blank' do
+ let!(:kubernetes_namespace) { create(:cluster_kubernetes_namespace, :without_token, cluster: cluster, project: build.project) }
+
+ it { is_expected.to be_truthy }
+ end
end
context 'and cluster is project type' do