1818from chia .server .resolve_peer_info import get_unresolved_peer_infos
1919from chia .server .signal_handlers import SignalHandlers
2020from chia .server .start_service import RpcInfo , Service , async_run
21+ from chia .types .peer_info import UnresolvedPeerInfo
2122from chia .util .chia_logging import initialize_service_logging
2223from chia .util .config import load_config , load_config_cli
2324from chia .util .default_root import resolve_root_path
@@ -37,6 +38,7 @@ def create_farmer_service(
3738 consensus_constants : ConsensusConstants ,
3839 keychain : Optional [Keychain ] = None ,
3940 connect_to_daemon : bool = True ,
41+ solver_peer : Optional [UnresolvedPeerInfo ] = None ,
4042) -> FarmerService :
4143 service_config = config [SERVICE_NAME ]
4244
@@ -54,6 +56,10 @@ def create_farmer_service(
5456 if service_config .get ("start_rpc_server" , True ):
5557 rpc_info = (FarmerRpcApi , service_config ["rpc_port" ])
5658
59+ connect_peers = get_unresolved_peer_infos (service_config , NodeType .FULL_NODE )
60+ if solver_peer is not None :
61+ connect_peers .add (solver_peer )
62+
5763 return Service (
5864 root_path = root_path ,
5965 config = config ,
@@ -62,8 +68,7 @@ def create_farmer_service(
6268 node_type = NodeType .FARMER ,
6369 advertised_port = service_config ["port" ],
6470 service_name = SERVICE_NAME ,
65- connect_peers = get_unresolved_peer_infos (service_config , NodeType .FULL_NODE )
66- | get_unresolved_peer_infos (service_config , NodeType .SOLVER ),
71+ connect_peers = connect_peers ,
6772 on_connect_callback = node .on_connect ,
6873 network_id = network_id ,
6974 rpc_info = rpc_info ,
0 commit comments