@@ -64,6 +64,41 @@ def print_collators(self, args: list = None):
6464 table .append ([b642hex (c ['adnl_id' ]).upper (), f"{ c ['shard' ]['workchain' ]} :{ signed_int_to_hex64 (int (c ['shard' ]['shard' ]))} " ])
6565 print_table (table )
6666
67+ def add_validator_to_collation_wl (self , args : list ):
68+ if len (args ) < 1 :
69+ color_print ("{red}Bad args. Usage:{endc} add_validator_to_collation_wl <adnl> [adnl2] [adnl3] ..." )
70+ return
71+ self .ton .validatorConsole .Run (f"collator-whitelist-enable 1" )
72+ self .local .add_log ("Collation whitelist enabled" )
73+ for adnl_addr in args :
74+ result = self .ton .validatorConsole .Run (f"collator-whitelist-add { adnl_addr } " )
75+ if 'success' not in result :
76+ raise Exception (f'Failed to add validator to collation whitelist: { result } ' )
77+ color_print ("add_validator_to_collation_wl - {green}OK{endc}" )
78+
79+ def delete_validator_from_collation_wl (self , args : list ):
80+ if len (args ) < 1 :
81+ color_print ("{red}Bad args. Usage:{endc} delete_validator_from_collation_wl <adnl> [adnl2] [adnl3] ..." )
82+ return
83+ for adnl_addr in args :
84+ result = self .ton .validatorConsole .Run (f"collator-whitelist-del { adnl_addr } " )
85+ if 'success' not in result :
86+ raise Exception (f'Failed to delete validator from collation whitelist: { result } ' )
87+ color_print ("delete_validator_from_collation_wl - {green}OK{endc}" )
88+
89+ def disable_collation_validator_vl (self , args : list ):
90+ if len (args ) != 0 :
91+ color_print ("{red}Bad args. Usage:{endc} disable_collation_validator_vl" )
92+ return
93+ result = self .ton .validatorConsole .Run (f"collator-whitelist-enable 0" )
94+ if 'success' not in result :
95+ raise Exception (f'Failed to disable collation validator whitelist: { result } ' )
96+ color_print ("disable_collation_validator_vl - {green}OK{endc}" )
97+
98+ def print_collation_validators_whitelist (self , args : list = None ):
99+ result = self .ton .validatorConsole .Run ('collator-whitelist-show' )
100+ result = result .split ('conn ready' )[1 ].strip ()
101+ print (result )
67102
68103 @classmethod
69104 def check_enable (cls , ton : "MyTonCore" ):
@@ -81,5 +116,9 @@ def check_disable(self):
81116 return
82117
83118 def add_console_commands (self , console ):
84- console .AddItem ("setup_collator" , self .setup_collator , self .local .translate ("setup_collator" ))
85- console .AddItem ("print_local_collators" , self .print_collators , self .local .translate ("print_local_collators" ))
119+ console .AddItem ("setup_collator" , self .setup_collator , self .local .translate ("setup_collator_cmd" ))
120+ console .AddItem ("print_local_collators" , self .print_collators , self .local .translate ("print_local_collators_cmd" ))
121+ console .AddItem ("add_validator_to_collation_wl" , self .add_validator_to_collation_wl , self .local .translate ("add_validator_to_collation_wl_cmd" ))
122+ console .AddItem ("delete_validator_from_collation_wl" , self .delete_validator_from_collation_wl , self .local .translate ("delete_validator_from_collation_wl_cmd" ))
123+ console .AddItem ("disable_collation_validator_vl" , self .disable_collation_validator_vl , self .local .translate ("disable_collation_validator_vl_cmd" ))
124+ console .AddItem ("print_collation_validators_whitelist" , self .print_collation_validators_whitelist , self .local .translate ("print_collation_validators_whitelist_cmd" ))
0 commit comments