File add-sleep-on-exception-handling-on-minion-connection.patch of Package salt

From bad9e783e1a6923d85bdb1477a2e9766887a511e Mon Sep 17 00:00:00 2001
From: Victor Zhestkov <35733135+vzhestkov@users.noreply.github.com>
Date: Thu, 18 Feb 2021 14:49:38 +0300
Subject: [PATCH] Add sleep on exception handling on minion connection
 attempt to the master (bsc#1174855) (#321)

* Async batch implementation fix

* Add sleep on exception handling on minion connection attempt to the master (bsc#1174855)
---
 salt/minion.py | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/salt/minion.py b/salt/minion.py
index 2f905e4a4f..c3b65f16c3 100644
--- a/salt/minion.py
+++ b/salt/minion.py
@@ -1123,6 +1123,9 @@ class MinionManager(MinionBase):
         last = 0  # never have we signed in
         auth_wait = minion.opts["acceptance_wait_time"]
         failed = False
+        retry_wait = 1
+        retry_wait_inc = 1
+        max_retry_wait = 20
         while True:
             try:
                 if minion.opts.get("beacons_before_connect", False):
@@ -1161,6 +1164,9 @@ class MinionManager(MinionBase):
                     minion.opts["master"],
                     exc_info=True,
                 )
+                yield salt.ext.tornado.gen.sleep(retry_wait)
+                if retry_wait < max_retry_wait:
+                    retry_wait += retry_wait_inc
 
     # Multi Master Tune In
     def tune_in(self):
-- 
2.39.2


openSUSE Build Service is sponsored by