Skip to content

Commit 3402e97

Browse files
committed
make run available
Signed-off-by: Sylvain Hellegouarch <[email protected]>
1 parent b3c9631 commit 3402e97

File tree

3 files changed

+18
-5
lines changed

3 files changed

+18
-5
lines changed

CHANGELOG.md

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,15 @@
22

33
## [Unreleased][]
44

5-
[Unreleased]: https://github.com/chaostoolkit/chaostoolkit-addons/compare/0.8.4...HEAD
5+
[Unreleased]: https://github.com/chaostoolkit/chaostoolkit-addons/compare/0.8.5...HEAD
6+
7+
## [0.8.5][]
8+
9+
[0.8.5]: https://github.com/chaostoolkit/chaostoolkit-addons/compare/0.8.4...0.8.5
10+
11+
### Changed
12+
13+
* Make safeguard probe that got triggered available to review
614

715
## [0.8.4][]
816

chaosaddons/controls/safeguards.py

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -80,6 +80,7 @@
8080
calls for too long.
8181
"""
8282
from concurrent.futures import Future, ThreadPoolExecutor
83+
from copy import deepcopy
8384
from datetime import datetime
8485
from functools import partial
8586
import sys
@@ -113,6 +114,8 @@ def __init__(self) -> None:
113114
self._interrupted = False
114115
self._setup = False
115116
self.triggered_by = None
117+
self.triggered_by_run = None
118+
self.was_triggered = False
116119

117120
@property
118121
def interrupted(self) -> bool:
@@ -192,9 +195,11 @@ def run(self, experiment: Experiment, probes: List[Probe],
192195
# this allows the experiment to block until these are passed
193196
self.now_all_done.wait()
194197

195-
def interrupt_now(self, triggered_by: str) -> None:
198+
def interrupt_now(self, triggered_by: str, run: Run) -> None:
196199
with self._lock:
197200
self.triggered_by = triggered_by
201+
self.triggered_by_run = deepcopy(run)
202+
self.was_triggered = True
198203

199204
self.wait_for_interruption.set()
200205

@@ -205,7 +210,7 @@ def _wait_interruption(self) -> None:
205210
if experiment_finished.is_set():
206211
return None
207212

208-
if not self.triggered_by:
213+
if not self.was_triggered:
209214
return None
210215

211216
with self._lock:
@@ -335,7 +340,7 @@ def interrupt_experiment_on_unhealthy_probe(guard: Guardian, probe: Probe,
335340
tolerance, run["output"], configuration=configuration,
336341
secrets=secrets)
337342
if not checked:
338-
guard.interrupt_now(probe["name"])
343+
guard.interrupt_now(probe["name"], run)
339344

340345

341346
def execute_activity(experiment: Experiment, probe: Probe,

setup.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,5 +5,5 @@
55
setup(
66
use_scm_version=True,
77
name="chaostoolkit-addons",
8-
version="0.8.4",
8+
version="0.8.5",
99
)

0 commit comments

Comments
 (0)