Skip to content

Commit ef0da5e

Browse files
refactor(tools): refactored out commmon logic for finding node offsets for experiments on cloudlab
1 parent 5203ea0 commit ef0da5e

12 files changed

Lines changed: 91 additions & 181 deletions

asap-tools/experiments/experiment_only_ingest_path.py

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -119,9 +119,7 @@ def main(cfg: DictConfig):
119119
raise ValueError("Invalid exporter config: {}".format(rejection_reason))
120120

121121
# Initialize services
122-
system_exporters_service = SystemExportersService(
123-
provider, args.num_nodes, args.node_offset
124-
)
122+
system_exporters_service = SystemExportersService(provider, args)
125123
prometheus_service = create_prometheus_service(
126124
cfg, provider, args.num_nodes, args.node_offset
127125
)
@@ -130,9 +128,8 @@ def main(cfg: DictConfig):
130128
exporter_service = ExporterServiceFactory.create_exporter_service(
131129
args.fake_exporter_language,
132130
provider,
133-
num_nodes_in_experiment,
131+
args,
134132
use_container=args.use_container_fake_exporter,
135-
node_offset=args.node_offset,
136133
)
137134

138135
# Initialize V2-specific services (always initialize to allow cleanup from previous runs)

asap-tools/experiments/experiment_run_e2e.py

Lines changed: 4 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -140,9 +140,7 @@ def main(cfg: DictConfig):
140140
use_container=args.use_container_query_engine,
141141
node_offset=args.node_offset,
142142
)
143-
system_exporters_service = SystemExportersService(
144-
provider, args.num_nodes, args.node_offset
145-
)
143+
system_exporters_service = SystemExportersService(provider, args)
146144
prometheus_service = create_prometheus_service(
147145
cfg, provider, args.num_nodes, args.node_offset
148146
)
@@ -154,9 +152,7 @@ def main(cfg: DictConfig):
154152
use_container=args.use_container_arroyo,
155153
node_offset=args.node_offset,
156154
)
157-
deathstar_service = DeathstarService(
158-
provider, num_nodes_in_experiment, args.node_offset
159-
)
155+
deathstar_service = DeathstarService(provider, args)
160156
controller_service = ControllerService(
161157
provider,
162158
use_container=args.use_container_controller,
@@ -169,20 +165,14 @@ def main(cfg: DictConfig):
169165
node_offset=args.node_offset,
170166
)
171167
remote_monitor_service = RemoteMonitorService(provider, args.node_offset)
172-
avalanche_service = AvalancheExporterService(
173-
provider,
174-
num_nodes_in_experiment,
175-
use_container=False,
176-
node_offset=args.node_offset,
177-
)
168+
avalanche_service = AvalancheExporterService(provider, args, use_container=False)
178169

179170
# Initialize exporter service based on language
180171
exporter_service = ExporterServiceFactory.create_exporter_service(
181172
args.fake_exporter_language,
182173
provider,
183-
num_nodes_in_experiment,
174+
args,
184175
use_container=args.use_container_fake_exporter,
185-
node_offset=args.node_offset,
186176
)
187177

188178
# Initialize cluster data exporter service if configured

asap-tools/experiments/experiment_run_exporters_and_prometheus.py

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -76,9 +76,7 @@ def main(cfg: DictConfig):
7676
raise ValueError("Invalid exporter config: {}".format(rejection_reason))
7777

7878
# Initialize services
79-
system_exporters_service = SystemExportersService(
80-
provider, args.num_nodes, args.node_offset
81-
)
79+
system_exporters_service = SystemExportersService(provider, args)
8280
prometheus_service = create_prometheus_service(
8381
cfg, provider, args.num_nodes, args.node_offset
8482
)
@@ -87,9 +85,8 @@ def main(cfg: DictConfig):
8785
exporter_service = ExporterServiceFactory.create_exporter_service(
8886
args.fake_exporter_language,
8987
provider,
90-
num_nodes_in_experiment,
88+
args,
9189
use_container=args.use_container_fake_exporter,
92-
node_offset=args.node_offset,
9390
)
9491

9592
# Stop any existing services to ensure clean state

asap-tools/experiments/experiment_run_grafana_demo.py

Lines changed: 4 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -125,9 +125,7 @@ def main(cfg: DictConfig):
125125
use_container=args.use_container_query_engine,
126126
node_offset=args.node_offset,
127127
)
128-
system_exporters_service = SystemExportersService(
129-
provider, args.num_nodes, args.node_offset
130-
)
128+
system_exporters_service = SystemExportersService(provider, args)
131129
prometheus_service = create_prometheus_service(
132130
cfg, provider, args.num_nodes, args.node_offset
133131
)
@@ -136,9 +134,7 @@ def main(cfg: DictConfig):
136134
use_container=args.use_container_arroyo,
137135
node_offset=args.node_offset,
138136
)
139-
deathstar_service = DeathstarService(
140-
provider, num_nodes_in_experiment, args.node_offset
141-
)
137+
deathstar_service = DeathstarService(provider, args)
142138
controller_service = ControllerService(
143139
provider,
144140
use_container=args.use_container_controller,
@@ -154,20 +150,14 @@ def main(cfg: DictConfig):
154150
grafana_service = GrafanaService(
155151
provider, num_nodes_in_experiment, args.node_offset
156152
)
157-
avalanche_service = AvalancheExporterService(
158-
provider,
159-
num_nodes_in_experiment,
160-
use_container=False,
161-
node_offset=args.node_offset,
162-
)
153+
avalanche_service = AvalancheExporterService(provider, args, use_container=False)
163154

164155
# Initialize exporter service based on language
165156
exporter_service = ExporterServiceFactory.create_exporter_service(
166157
args.fake_exporter_language,
167158
provider,
168-
num_nodes_in_experiment,
159+
args,
169160
use_container=args.use_container_fake_exporter,
170-
node_offset=args.node_offset,
171161
)
172162

173163
sync.copy_experiment_config(cfg.experiment_params, local_experiment_root_dir)

asap-tools/experiments/experiment_teardown_everything.py

Lines changed: 7 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -79,9 +79,7 @@ def main(cfg: DictConfig):
7979
provider, use_container=False, node_offset=args.node_offset
8080
)
8181

82-
system_exporters_service = SystemExportersService(
83-
provider, num_nodes_in_experiment, args.node_offset
84-
)
82+
system_exporters_service = SystemExportersService(provider, args)
8583
prometheus_service = create_prometheus_service(
8684
cfg, provider, num_nodes_in_experiment, args.node_offset
8785
)
@@ -96,9 +94,7 @@ def main(cfg: DictConfig):
9694
provider, use_container=False, node_offset=args.node_offset
9795
)
9896

99-
deathstar_service = DeathstarService(
100-
provider, num_nodes_in_experiment, args.node_offset
101-
)
97+
deathstar_service = DeathstarService(provider, args)
10298

10399
controller_service_container = ControllerService(
104100
provider, use_container=True, node_offset=args.node_offset
@@ -122,42 +118,21 @@ def main(cfg: DictConfig):
122118
provider, num_nodes_in_experiment, args.node_offset
123119
)
124120

125-
avalanche_service = AvalancheExporterService(
126-
provider,
127-
num_nodes_in_experiment,
128-
use_container=False,
129-
node_offset=args.node_offset,
130-
)
121+
avalanche_service = AvalancheExporterService(provider, args, use_container=False)
131122

132123
# Initialize both exporter languages
133124
fake_exporter_service_rust = ExporterServiceFactory.create_exporter_service(
134-
"rust",
135-
provider,
136-
num_nodes_in_experiment,
137-
use_container=True,
138-
node_offset=args.node_offset,
125+
"rust", provider, args, use_container=True
139126
)
140127
fake_exporter_service_python = ExporterServiceFactory.create_exporter_service(
141-
"python",
142-
provider,
143-
num_nodes_in_experiment,
144-
use_container=True,
145-
node_offset=args.node_offset,
128+
"python", provider, args, use_container=True
146129
)
147130
fake_exporter_service_rust_native = ExporterServiceFactory.create_exporter_service(
148-
"rust",
149-
provider,
150-
num_nodes_in_experiment,
151-
use_container=False,
152-
node_offset=args.node_offset,
131+
"rust", provider, args, use_container=False
153132
)
154133
fake_exporter_service_python_native = (
155134
ExporterServiceFactory.create_exporter_service(
156-
"python",
157-
provider,
158-
num_nodes_in_experiment,
159-
use_container=False,
160-
node_offset=args.node_offset,
135+
"python", provider, args, use_container=False
161136
)
162137
)
163138

0 commit comments

Comments
 (0)