1
- use std:: time:: Duration ;
1
+ use std:: { path :: PathBuf , time:: Duration } ;
2
2
3
3
use clap:: Parser ;
4
4
use libp2p:: Multiaddr ;
5
- use mithril_common:: StdResult ;
5
+ use mithril_common:: { CardanoNetwork , StdResult } ;
6
6
use slog:: error;
7
7
8
8
use super :: CommandContext ;
@@ -22,6 +22,24 @@ pub struct SignerCommand {
22
22
#[ clap( long, env = "DIAL_TO" ) ]
23
23
dial_to : Option < Multiaddr > ,
24
24
25
+ /// Path to the DMQ socket file
26
+ #[ clap(
27
+ long,
28
+ env = "DMQ_NODE_SOCKET_PATH" ,
29
+ value_name = "PATH" ,
30
+ default_value = "./dmq.socket"
31
+ ) ]
32
+ dmq_node_socket_path : PathBuf ,
33
+
34
+ /// Cardano network
35
+ #[ clap( long, env = "NETWORK" ) ]
36
+ pub network : String ,
37
+
38
+ /// Cardano Network Magic number
39
+ /// useful for TestNet & DevNet
40
+ #[ clap( long, env = "NETWORK_MAGIC" ) ]
41
+ pub network_magic : Option < u64 > ,
42
+
25
43
/// Aggregator endpoint URL.
26
44
#[ clap( long, env = "AGGREGATOR_ENDPOINT" ) ]
27
45
aggregator_endpoint : String ,
@@ -50,10 +68,14 @@ impl SignerCommand {
50
68
let signature_registration_mode = & self . signature_registration_mode ;
51
69
let aggregator_endpoint = self . aggregator_endpoint . to_owned ( ) ;
52
70
let signer_repeater_delay = Duration :: from_millis ( self . signer_repeater_delay ) ;
71
+ let cardano_network =
72
+ CardanoNetwork :: from_code ( self . network . to_owned ( ) , self . network_magic ) ?;
53
73
54
74
let mut relay = SignerRelay :: start (
55
75
& addr,
56
76
& server_port,
77
+ & self . dmq_node_socket_path ,
78
+ & cardano_network,
57
79
signer_registration_mode,
58
80
signature_registration_mode,
59
81
& aggregator_endpoint,
0 commit comments