Skip to content

Commit e5d9b0a

Browse files
committed
better management of termination
Signed-off-by: Sylvain Hellegouarch <sh@defuze.org>
1 parent bcfb787 commit e5d9b0a

File tree

3 files changed

+17
-5
lines changed

3 files changed

+17
-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.2...HEAD
5+
[Unreleased]: https://github.com/chaostoolkit/chaostoolkit-addons/compare/0.8.3...HEAD
6+
7+
## [0.8.3][]
8+
9+
[0.8.3]: https://github.com/chaostoolkit/chaostoolkit-addons/compare/0.8.2...0.8.3
10+
11+
### Changed
12+
13+
- Better management of ending the experiment
614

715
## [0.8.2][]
816

chaosaddons/controls/safeguards.py

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -200,12 +200,16 @@ def interrupt_now(self, triggered_by: str) -> None:
200200
def _wait_interruption(self) -> None:
201201
self.wait_for_interruption.wait()
202202

203+
# cannot interrupt if already finished
204+
if experiment_finished.is_set():
205+
return None
206+
203207
if not self.triggered_by:
204208
return None
205209

206-
if not self.interrupted:
207-
self.interrupted = True
208-
if not experiment_finished.is_set():
210+
with self._lock:
211+
if not self._interrupted:
212+
self._interrupted = True
209213
logger.critical(
210214
"Safeguard '{}' triggered the end of the experiment".format(
211215
self.triggered_by))

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.1",
8+
version="0.8.3",
99
)

0 commit comments

Comments
 (0)