From 73e8175e12f302a3e86a2f8d54f1465d30bd519b Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Tue, 8 Aug 2023 16:48:32 -0700 Subject: [PATCH] Add ws transport to factories --- salt/transport/base.py | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/salt/transport/base.py b/salt/transport/base.py index 08103cb28c4..5f213d1ad93 100644 --- a/salt/transport/base.py +++ b/salt/transport/base.py @@ -8,6 +8,7 @@ import salt.utils.stringutils TRANSPORTS = ( "zeromq", "tcp", + "ws", ) @@ -29,6 +30,10 @@ def request_server(opts, **kwargs): import salt.transport.tcp return salt.transport.tcp.TCPReqServer(opts) + elif ttype == "ws": + import salt.transport.ws + + return salt.transport.ws.RequestServer(opts) elif ttype == "local": import salt.transport.local @@ -52,6 +57,10 @@ def request_client(opts, io_loop): resolver = salt.transport.tcp.Resolver() return salt.transport.tcp.TCPReqClient(opts, resolver=resolver, io_loop=io_loop) + elif ttype == "ws": + import salt.transport.ws + + return salt.transport.ws.RequestClient(opts, io_loop=io_loop) else: raise Exception("Channels are only defined for tcp, zeromq") @@ -88,6 +97,10 @@ def publish_server(opts, **kwargs): import salt.transport.tcp return salt.transport.tcp.TCPPublishServer(opts, **kwargs) + elif ttype == "ws": + import salt.transport.ws + + return salt.transport.ws.PublishServer(opts, **kwargs) elif ttype == "local": # TODO: import salt.transport.local @@ -119,6 +132,12 @@ def publish_client(opts, io_loop, host=None, port=None, path=None, transport=Non return salt.transport.tcp.TCPPubClient( opts, io_loop, host=host, port=port, path=path ) + elif ttype == "tcp": + import salt.transport.ws + + return salt.transport.ws.PublishClient( + opts, io_loop, host=host, port=port, path=path + ) raise Exception(f"Transport type not found: {ttype}")