10
10
11
11
from .bitcoin import _rpc
12
12
from .k8s import (
13
+ apply_kubernetes_yaml_obj ,
13
14
create_kubernetes_object ,
14
15
delete_namespace ,
15
16
get_edges ,
@@ -32,10 +33,29 @@ def network():
32
33
"""Network commands"""
33
34
34
35
35
- def create_edges_map (graph ):
36
+ class Edge :
37
+ def __init__ (self , src : str , dst : str , data : Dict [str , Any ]):
38
+ self .src = src
39
+ self .dst = dst
40
+ self .data = data
41
+
42
+ def to_dict (self ):
43
+ return {"src" : self .src , "dst" : self .dst , "data" : self .data }
44
+
45
+
46
+ def edges_from_network_file (network_file : Dict [str , Any ]) -> List [Edge ]:
47
+ edges = []
48
+ for node in network_file ["nodes" ]:
49
+ if "connect" in node :
50
+ for connection in node ["connect" ]:
51
+ edges .append (Edge (node ["name" ], connection , "" ))
52
+ return edges
53
+
54
+
55
+ def create_edges_map (network_file : Dict [str , Any ]):
36
56
edges = []
37
- for src , dst , data in graph . edges ( data = True ):
38
- edges .append ({ "src" : src , "dst" : dst , "data" : data } )
57
+ for edge in edges_from_network_file ( network_file ):
58
+ edges .append (edge . to_dict () )
39
59
config_map = create_kubernetes_object (
40
60
kind = "ConfigMap" ,
41
61
metadata = {
@@ -44,7 +64,7 @@ def create_edges_map(graph):
44
64
},
45
65
)
46
66
config_map ["data" ] = {"data" : json .dumps (edges )}
47
- return config_map
67
+ apply_kubernetes_yaml_obj ( config_map )
48
68
49
69
50
70
def setup_logging_helm () -> bool :
@@ -107,6 +127,8 @@ def start(network_name: str, logging: bool, network: str):
107
127
if temp_override_file_path :
108
128
Path (temp_override_file_path ).unlink ()
109
129
130
+ create_edges_map (network_file )
131
+
110
132
111
133
@network .command ()
112
134
def down ():
0 commit comments