On FreeBSD, upgraded to 3007.0, it complained it needs Tornado. I Installed Tornado 6.3.3, the master started, but then any command results in this:
root@freebsd:/usr/local/etc/salt # salt '*' test.ping
[WARNING ] TCP Publish Client encountered an exception while connecting to /var/run/salt/master/master_event_pub.ipc: StreamClosedError('Stream is closed'), will reconnect in 1 seconds - File "/usr/local/bin/salt", line 33, in <module>
sys.exit(load_entry_point('salt==3007.0', 'console_scripts', 'salt')())
File "/usr/local/lib/python3.9/site-packages/salt/scripts.py", line 532, in salt_main
client.run()
File "/usr/local/lib/python3.9/site-packages/salt/cli/salt.py", line 192, in run
for full_ret in cmd_func(**kwargs):
File "/usr/local/lib/python3.9/site-packages/salt/client/__init__.py", line 816, in cmd_cli
self.pub_data = self.run_job(
File "/usr/local/lib/python3.9/site-packages/salt/client/__init__.py", line 388, in run_job
pub_data = self.pub(
File "/usr/local/lib/python3.9/site-packages/salt/client/__init__.py", line 1905, in pub
if listen and not self.event.connect_pub(timeout=timeout):
File "/usr/local/lib/python3.9/site-packages/salt/utils/event.py", line 323, in connect_pub
self.subscriber = salt.utils.asynchronous.SyncWrapper(
File "/usr/local/lib/python3.9/site-packages/salt/utils/asynchronous.py", line 77, in __init__
self.obj = cls(*args, **kwargs)
File "/usr/local/lib/python3.9/site-packages/salt/transport/base.py", line 210, in ipc_publish_client
return publish_client(opts, io_loop, **kwargs)
File "/usr/local/lib/python3.9/site-packages/salt/transport/base.py", line 152, in publish_client
return salt.transport.tcp.PublishClient(
File "/usr/local/lib/python3.9/site-packages/salt/transport/tcp.py", line 219, in __init__
super().__init__(opts, io_loop, **kwargs)
File "/usr/local/lib/python3.9/site-packages/salt/transport/base.py", line 398, in __init__
super().__init__()
[ERROR ] An un-handled exception was caught by Salt's global exception handler:
TypeError: argument must be an int, or have a fileno() method.
Traceback (most recent call last):
File "/usr/local/bin/salt", line 33, in <module>
sys.exit(load_entry_point('salt==3007.0', 'console_scripts', 'salt')())
File "/usr/local/lib/python3.9/site-packages/salt/scripts.py", line 532, in salt_main
client.run()
File "/usr/local/lib/python3.9/site-packages/salt/cli/salt.py", line 192, in run
for full_ret in cmd_func(**kwargs):
File "/usr/local/lib/python3.9/site-packages/salt/client/__init__.py", line 831, in cmd_cli
for fn_ret in self.get_cli_event_returns(
File "/usr/local/lib/python3.9/site-packages/salt/client/__init__.py", line 1654, in get_cli_event_returns
for ret in self.get_iter_returns(
File "/usr/local/lib/python3.9/site-packages/salt/client/__init__.py", line 1188, in get_iter_returns
for raw in ret_iter:
File "/usr/local/lib/python3.9/site-packages/salt/client/__init__.py", line 1105, in get_returns_no_block
raw = self.event.get_event(
File "/usr/local/lib/python3.9/site-packages/salt/utils/event.py", line 651, in get_event
ret = self._get_event(wait, tag, match_func, no_block)
File "/usr/local/lib/python3.9/site-packages/salt/utils/event.py", line 553, in _get_event
raw = self.subscriber.recv(timeout=wait)
File "/usr/local/lib/python3.9/site-packages/salt/utils/asynchronous.py", line 139, in wrap
raise exc_info[1].with_traceback(exc_info[2])
File "/usr/local/lib/python3.9/site-packages/salt/utils/asynchronous.py", line 147, in _target
result = io_loop.run_sync(lambda: getattr(self.obj, key)(*args, **kwargs))
File "/usr/local/lib/python3.9/site-packages/tornado/ioloop.py", line 527, in run_sync
return future_cell[0].result()
File "/usr/local/lib/python3.9/site-packages/salt/transport/tcp.py", line 374, in recv
events, _, _ = select.select([self._stream.socket], [], [], 0)
TypeError: argument must be an int, or have a fileno() method.
Traceback (most recent call last):
File "/usr/local/bin/salt", line 33, in <module>
sys.exit(load_entry_point('salt==3007.0', 'console_scripts', 'salt')())
File "/usr/local/lib/python3.9/site-packages/salt/scripts.py", line 532, in salt_main
client.run()
File "/usr/local/lib/python3.9/site-packages/salt/cli/salt.py", line 192, in run
for full_ret in cmd_func(**kwargs):
File "/usr/local/lib/python3.9/site-packages/salt/client/__init__.py", line 831, in cmd_cli
for fn_ret in self.get_cli_event_returns(
File "/usr/local/lib/python3.9/site-packages/salt/client/__init__.py", line 1654, in get_cli_event_returns
for ret in self.get_iter_returns(
File "/usr/local/lib/python3.9/site-packages/salt/client/__init__.py", line 1188, in get_iter_returns
for raw in ret_iter:
File "/usr/local/lib/python3.9/site-packages/salt/client/__init__.py", line 1105, in get_returns_no_block
raw = self.event.get_event(
File "/usr/local/lib/python3.9/site-packages/salt/utils/event.py", line 651, in get_event
ret = self._get_event(wait, tag, match_func, no_block)
File "/usr/local/lib/python3.9/site-packages/salt/utils/event.py", line 553, in _get_event
raw = self.subscriber.recv(timeout=wait)
File "/usr/local/lib/python3.9/site-packages/salt/utils/asynchronous.py", line 139, in wrap
raise exc_info[1].with_traceback(exc_info[2])
File "/usr/local/lib/python3.9/site-packages/salt/utils/asynchronous.py", line 147, in _target
result = io_loop.run_sync(lambda: getattr(self.obj, key)(*args, **kwargs))
File "/usr/local/lib/python3.9/site-packages/tornado/ioloop.py", line 527, in run_sync
return future_cell[0].result()
File "/usr/local/lib/python3.9/site-packages/salt/transport/tcp.py", line 374, in recv
events, _, _ = select.select([self._stream.socket], [], [], 0)
TypeError: argument must be an int, or have a fileno() method.
I also installed Salt on a new machine and it behaves the same way.
FreeBSD running on AWS. No jails.
Description
Issue in SaltStack master 3007.0.
On FreeBSD, upgraded to 3007.0, it complained it needs Tornado. I Installed Tornado 6.3.3, the master started, but then any command results in this:
Also see this bug report on FreeBSD Bugzilla: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=278149
I also installed Salt on a new machine and it behaves the same way.
Setup
FreeBSD running on AWS. No jails.
Steps to Reproduce the behavior
Install py39-salt on a fresh FreeBSD 14, install py39-tornado, start salt-master, then try to run any command.
Expected behavior
Run the command, don't error out
Screenshots
N/A, trace above
Versions Report
I killed the machine, sorry, but it's 3007.0.