Less intrusive bugfix

I am totally on board with making tune_in asynchronous but we'll have to
address it in syndic and proxy minions too. As well as the corresponding
managers. This change is a bit less intrusive but achieves the same
end result.
This commit is contained in:
Daniel A. Wozniak 2025-02-20 18:59:34 -07:00 committed by Daniel Wozniak
parent 1920e80a52
commit 788b42db6f

View file

@ -1152,7 +1152,7 @@ class MinionManager(MinionBase):
minion.setup_scheduler(before_connect=True)
if minion.opts.get("master_type", "str") != "disable":
yield minion.connect_master(failed=failed)
yield minion.tune_in(start=False)
minion.tune_in(start=False)
self.minions.append(minion)
break
except SaltClientError as exc:
@ -2481,7 +2481,7 @@ class Minion(MinionBase):
log.trace("ret_val = %s", ret_val) # pylint: disable=no-member
return ret_val
async def _state_run(self):
def _state_run(self):
"""
Execute a state run based on information set in the minion config file
"""
@ -2506,7 +2506,7 @@ class Minion(MinionBase):
else:
data["fun"] = "state.highstate"
data["arg"] = []
await self._handle_decoded_payload(data)
self.io_loop.add_callback(self._handle_decoded_payload, data)
def _refresh_grains_watcher(self, refresh_interval_in_minutes):
"""
@ -3209,7 +3209,7 @@ class Minion(MinionBase):
return True
# Main Minion Tune In
async def tune_in(self, start=True):
def tune_in(self, start=True):
"""
Lock onto the publisher. This is the main event loop for the minion
:rtype : None
@ -3236,7 +3236,7 @@ class Minion(MinionBase):
salt.utils.win_functions.enable_ctrl_logoff_handler()
# On first startup execute a state run if configured to do so
await self._state_run()
self._state_run()
self.setup_beacons()
self.setup_scheduler()