From 275c54e81051ff73a0b5556717b38d5677f2b0b9 Mon Sep 17 00:00:00 2001
From: Kenichi Omichi <ken1ohmichi@gmail.com>
Date: Sat, 19 Dec 2020 04:54:24 -0800
Subject: [PATCH] Wait for available API token in a new namespace (#7045)

Just after creating a namespace, the corresponding token could not be
created and sometimes the pod creation might be failed.
This adds check of the token in the new namespace to make this test
case stable.
---
 tests/testcases/030_check-network.yml | 10 ++++++++++
 1 file changed, 10 insertions(+)

diff --git a/tests/testcases/030_check-network.yml b/tests/testcases/030_check-network.yml
index ce152be0b..d2ab583db 100644
--- a/tests/testcases/030_check-network.yml
+++ b/tests/testcases/030_check-network.yml
@@ -43,6 +43,16 @@
     command: "{{ bin_dir }}/kubectl create namespace test"
     changed_when: false
 
+  - name: Wait for API token of test namespace
+    shell: "set -o pipefail && {{ bin_dir }}/kubectl describe serviceaccounts default --namespace test | grep Tokens | awk '{print $2}'"
+    args:
+      executable: /bin/bash
+    changed_when: false
+    register: default_token
+    until: default_token.stdout.find('<none>') == -1
+    retries: 5
+    delay: 5
+
   - name: Run 2 busybox pods in test ns
     command: "{{ bin_dir }}/kubectl run {{ item }} --image={{ test_image_repo }}:{{ test_image_tag }} --namespace test --command -- tail -f /dev/null"
     changed_when: false
-- 
GitLab