Skip to content

Commit b2672d4

Browse files
authored
Merge pull request #4 from copartit/dev
1.2.0 update
2 parents aaca5fe + 1ab6178 commit b2672d4

File tree

8 files changed

+55
-19
lines changed

8 files changed

+55
-19
lines changed

CHANGES.md

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

33
## 1.2.0
44

5-
- Added `st2.executions.pause` and `st2.executions.resume` actions.
5+
- Added `st2.executions.pause`, `st2.executions.resume`, `st2.executions.cancel` actions.
66

77
## 1.1.0
88

README.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -71,6 +71,8 @@ sensors and more.
7171
action execution.
7272
* ``!st2 executions re-run <execution id>`` - Re-run a particular action
7373
execution.
74+
* ``!st2 executions cancel <execution id>`` - Pause a particular action
75+
execution.
7476
* ``!st2 executions pause <execution id>`` - Pause a particular action
7577
execution.
7678
* ``!st2 executions resume <execution id>`` - Resume a particular action

actions/executions_cancel.py

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
from lib.action import St2BaseAction
2+
3+
__all__ = [
4+
'St2ExecutionsCancel'
5+
]
6+
7+
8+
class St2ExecutionsCancel(St2BaseAction):
9+
def run(self, ids):
10+
result = {}
11+
success = True
12+
for i in ids:
13+
try:
14+
res = self.client.executions.delete_by_id(instance_id=i)
15+
except Exception as exc:
16+
result[i] = str(exc)
17+
success = False
18+
else:
19+
result[i] = res
20+
return success, result

actions/executions_cancel.yaml

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
---
2+
name: "executions.cancel"
3+
enabled: true
4+
description: "Cancel action executions."
5+
runner_type: python-script
6+
entry_point: executions_cancel.py
7+
parameters:
8+
ids:
9+
type: "array"
10+
description: "IDs of action executions to resume."
11+
required: true

actions/executions_pause.py

Lines changed: 5 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,25 +1,21 @@
11
from lib.action import St2BaseAction
2+
from lib.formatters import format_result
23

34
__all__ = [
45
'St2ExecutionsPause'
56
]
67

78

8-
def format_result(item):
9-
if not item:
10-
return None
11-
12-
return item.to_dict()
13-
14-
159
class St2ExecutionsPause(St2BaseAction):
1610
def run(self, ids):
1711
result = {}
12+
success = True
1813
for i in ids:
1914
try:
2015
res = self.client.liveactions.pause(execution_id=i)
2116
except Exception as exc:
22-
result[i] = '{}'.format(exc)
17+
result[i] = str(exc)
18+
success = False
2319
else:
2420
result[i] = format_result(item=res)
25-
return result
21+
return success, result

actions/executions_resume.py

Lines changed: 5 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,25 +1,21 @@
11
from lib.action import St2BaseAction
2+
from lib.formatters import format_result
23

34
__all__ = [
45
'St2ExecutionsResume'
56
]
67

78

8-
def format_result(item):
9-
if not item:
10-
return None
11-
12-
return item.to_dict()
13-
14-
159
class St2ExecutionsResume(St2BaseAction):
1610
def run(self, ids):
1711
result = {}
12+
success = True
1813
for i in ids:
1914
try:
2015
res = self.client.liveactions.resume(execution_id=i)
2116
except Exception as exc:
22-
result[i] = '{}'.format(exc)
17+
result[i] = str(exc)
18+
success = False
2319
else:
2420
result[i] = format_result(item=res)
25-
return result
21+
return success, result

actions/lib/formatters.py

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,3 +14,7 @@ def format_client_list_result(result, exclude_attributes=None):
1414
formatted.append(value)
1515

1616
return formatted
17+
18+
19+
def format_result(item):
20+
return item.to_dict() if item else None

aliases/executions_cancel.yaml

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
---
2+
name: "st2_executions_cancel"
3+
action_ref: "st2.executions.cancel"
4+
description: "Cancel action executions."
5+
formats:
6+
- "st2 cancel execution {{ ids }}"
7+
- "st2 executions cancel {{ ids }}"

0 commit comments

Comments
 (0)