@@ -36,19 +36,13 @@ def namespace(cls, search=None,
36
36
cls .put (path ,namespace )
37
37
if search != None :
38
38
namespace = {k :v for k ,v in namespace .items () if search in k }
39
-
40
- namespace = cls .clean_namespace (namespace )
41
-
42
- return namespace
43
-
44
- @classmethod
45
- def clean_namespace (cls , namespace ):
46
39
namespace = {k :':' .join (v .split (':' )[:- 1 ]) + ':' + str (v .split (':' )[- 1 ]) for k ,v in namespace .items ()}
47
40
namespace = dict (sorted (namespace .items (), key = lambda x : x [0 ]))
48
41
ip = c .ip ()
49
42
namespace = {k : v .replace (ip , '0.0.0.0' ) for k ,v in namespace .items () }
50
43
namespace = { k .replace ('"' , '' ): v for k ,v in namespace .items () }
51
44
return namespace
45
+
52
46
@classmethod
53
47
def update_namespace (cls , network , netuid = None , timeout = 1 , search = None , verbose = False ):
54
48
c .print (f'UPDATING --> NETWORK(network={ network } netuid={ netuid } )' , color = 'blue' )
@@ -152,11 +146,6 @@ def modules(cls, network:List=network) -> List[str]:
152
146
def addresses (cls , network :str = network , ** kwargs ) -> List [str ]:
153
147
return list (cls .namespace (network = network , ** kwargs ).values ())
154
148
155
- @classmethod
156
- def module_exists (cls , module :str , network :str = network ) -> bool :
157
- namespace = cls .namespace (network = network )
158
- return bool (module in namespace )
159
-
160
149
@classmethod
161
150
def check_servers (self , * args , ** kwargs ):
162
151
servers = c .pm2ls ()
@@ -191,44 +180,6 @@ def add_server(cls, address:str, name=None, network:str = 'local',timeout:int=4,
191
180
192
181
return {'success' : True , 'msg' : f'Added { address } to { network } modules' , 'remote_modules' : cls .servers (network = network ), 'network' : network }
193
182
194
- @classmethod
195
- def remote_servers (cls , network :str = 'remote' , ** kwargs ):
196
- return cls .namespace (network = network )
197
-
198
- @classmethod
199
- def infos (cls , search = None , network = network , servers = None , features = ['key' , 'address' , 'name' ], update :str = True , batch_size = 10 , timeout = 20 , hardware = True , namespace = True , schema = True ) -> List [str ]:
200
- path = f'infos/{ network } '
201
- if not update :
202
- infos = cls .get (path , [])
203
- if update or len (infos ) == 0 :
204
- infos = []
205
- servers = cls .servers (search = search , network = network ) if servers == None else servers
206
- futures = []
207
- infos = []
208
- for s in servers :
209
- kwargs = {'module' :s , 'fn' :'info' , 'network' : network , 'hardware' : hardware , 'namespace' : namespace , 'schema' : schema }
210
- future = c .submit (c .call , kwargs = kwargs , return_future = True , timeout = timeout )
211
- futures .append (future )
212
- if len (futures ) >= batch_size :
213
- for f in c .as_completed (futures ):
214
-
215
- result = f .result ()
216
- futures .remove (f )
217
-
218
- if isinstance (result , dict ) and 'error' not in result :
219
- infos .append (result )
220
-
221
- break
222
- infos += c .wait (futures , timeout = timeout )
223
- cls .put (path , infos )
224
- infos = [s for s in infos if s != None ]
225
- if search != None :
226
- infos = [s for s in infos if 'name' in s and search in s ['name' ]]
227
-
228
- if features != None :
229
- infos = [{k :v for k ,v in s .items () if k in features } for s in infos ]
230
- return infos
231
-
232
183
@classmethod
233
184
def rm_server (cls , name , network :str = 'local' , ** kwargs ):
234
185
namespace = cls .namespace (network = network )
@@ -237,7 +188,6 @@ def rm_server(cls, name, network:str = 'local', **kwargs):
237
188
if v == name :
238
189
name = k
239
190
break
240
-
241
191
if name in namespace :
242
192
# reregister
243
193
address = cls .get_address (name , network = network )
@@ -253,13 +203,6 @@ def servers(cls, search=None, network:str = 'local', **kwargs):
253
203
namespace = cls .namespace (search = search , network = network , ** kwargs )
254
204
return list (namespace .keys ())
255
205
256
- @classmethod
257
- def refresh_namespace (cls , network :str ):
258
- return cls .put_namespace (network , {})
259
- @classmethod
260
- def network2namespace (self ):
261
- return {network : self .namespace (network = network ) for network in self .networks ()}
262
- all = network2namespace
263
206
@classmethod
264
207
def server_exists (cls , name :str , network :str = None , prefix_match :bool = False , ** kwargs ) -> bool :
265
208
servers = cls .servers (network = network , ** kwargs )
@@ -299,22 +242,7 @@ def server_exists(cls, name:str, network:str = None, prefix_match:bool=False, *
299
242
else :
300
243
server_exists = bool (name in servers )
301
244
302
- return server_exists
303
-
304
- @classmethod
305
- def clean (cls , network = 'local' ):
306
- namespace = cls .namespace (network = network )
307
- address2name = {}
308
-
309
- for name , address in address2name .items ():
310
- if address in address2name .values ():
311
- if len (address2name [address ]) < len (name ):
312
- namespace [address ] = name
313
- else :
314
- address2name [address ] = name
315
-
316
- namespace = {v :k for k ,v in address2name .items ()}
317
- return namespace
245
+ return server_exists
318
246
319
247
Namespace .run (__name__ )
320
248
0 commit comments