stx-puppet: add re-tries to workaround docker login failure

Add re-tries to workaround the follwoing docker login failure:
Error: docker login registry.local:9001 -u admin -p St8rlingX* returned 1 instead of one of [0]
Error: /Stage[main]/Platform::Kubernetes::Master::Init/Exec[login local
       registry]/returns: change from notrun to 0 failed: docker login
       registry.local:9001 -u admin -p St8rlingX* returned 1 instead of one of [0]

Partial-Bug: 1905380

Change-Id: Idcad1b2c8e751d9a189a102f449f55489368a8f0
Signed-off-by: Jackie Huang <jackie.huang@windriver.com>
This commit is contained in:
Jackie Huang
2020-11-23 10:01:04 +08:00
parent e9ebc66268
commit 8f093ff6da
2 changed files with 44 additions and 0 deletions

View File

@@ -0,0 +1,43 @@
From 3d8cce4420f84bac979e9b10384fddb4d7c810d9 Mon Sep 17 00:00:00 2001
From: Jackie Huang <jackie.huang@windriver.com>
Date: Wed, 18 Nov 2020 09:45:54 +0800
Subject: [PATCH] kubernetes.pp: add re-tries for docker login
The docker login to local registry may sometimes fail:
Error: docker login registry.local:9001 -u admin -p St8rlingX* returned 1 instead of one of [0]
It's rare and the root cause is not found yet, but a re-try will always succeed,
so add re-tries and a try sleep between re-tries to workaround it for now.
Upstream-Status: Inappropriate [workaround]
Signed-off-by: Jackie Huang <jackie.huang@windriver.com>
---
puppet-manifests/src/modules/platform/manifests/kubernetes.pp | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/puppet-manifests/src/modules/platform/manifests/kubernetes.pp b/puppet-manifests/src/modules/platform/manifests/kubernetes.pp
index 3fa1c8a..af69373 100644
--- a/puppet-manifests/src/modules/platform/manifests/kubernetes.pp
+++ b/puppet-manifests/src/modules/platform/manifests/kubernetes.pp
@@ -269,6 +269,8 @@ class platform::kubernetes::master::init
-> exec { 'login local registry':
command => "docker login registry.local:9001 -u ${::platform::dockerdistribution::params::registry_username} -p ${::platform::dockerdistribution::params::registry_password}", # lint:ignore:140chars
logoutput => true,
+ tries => 3,
+ try_sleep => 1,
}
-> exec { 'kubeadm to pre pull images':
@@ -384,6 +386,8 @@ class platform::kubernetes::worker::init
exec { 'login local registry':
command => "docker login registry.local:9001 -u ${::platform::dockerdistribution::params::registry_username} -p ${::platform::dockerdistribution::params::registry_password}", # lint:ignore:140chars
logoutput => true,
+ tries => 3,
+ try_sleep => 1,
}
-> exec { 'load k8s pause image':
--
2.7.4

View File

@@ -38,6 +38,7 @@ SRC_URI = " \
file://${BPN}/0008-puppet-manifests-keystone-include-platform-client.patch \
file://${BPN}/0009-puppet-manifests-lvm-remove-lvmetad.patch \
file://${BPN}/0010-puppet-manifest-apply-workaround-to-ignore-known-err.patch \
file://${BPN}/0011-puppet-manifest-kubernetes.pp-add-re-tries-for-docker-login.patch \
file://${BPN}/get-boot-device-from-cmdline.patch \
file://${BPN}/poky-specific-apply-network-config-script.patch \
file://${BPN}/apply_network_config_poky.sh \