Skip to content

Commit 9aba2b6

Browse files
authored
hotfix/fix-ci-errors (#22)
Fixed files to work with latest CI updates. As of pyyaml 5.4 (the current version being installed is 6.0.2) a `Loader` param is required to pass into the `load` function. `safe_load` runs load with the `yaml.SafeLoader` param as the `Loader` https://stackoverflow.com/a/63916315
2 parents df56403 + 2142eca commit 9aba2b6

File tree

4 files changed

+72
-2
lines changed

4 files changed

+72
-2
lines changed

CHANGELOG.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,8 @@
11

2+
# 2.0.1
3+
4+
* Fixed CI errors
5+
26
# 2.0.0
37

48
* Drop Python 2.7 support

actions/lib/static_metagen.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -90,7 +90,7 @@ def generate_from_file(self, meta_file):
9090
if meta_file is None:
9191
return None
9292
with open(meta_file) as fh:
93-
actions = yaml.load(fh.read())
93+
actions = yaml.safe_load(fh.read())
9494
for manifest in self._merge_actions(actions):
9595
fh = open('{0}.yaml'.format(manifest['name']), 'w')
9696
fh.write('---\n')

pack.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ keywords:
66
- elasticsearch
77
- curator
88
- databases
9-
version: 2.0.0
9+
version: 2.0.1
1010
author : StackStorm, Inc.
1111
1212
python_versions:
Lines changed: 66 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,66 @@
1+
import unittest
2+
from unittest.mock import patch
3+
from curator_runner import CuratorRunner
4+
5+
6+
class TestCuratorRunner(unittest.TestCase):
7+
8+
@patch('curator_runner.CuratorAction.__init__', return_value=None)
9+
@patch('curator_runner.CuratorRunner.set_up_logging')
10+
@patch('curator_runner.CuratorRunner.do_command')
11+
def test_run_with_host_and_port(self, mock_do_command, mock_set_up_logging,
12+
mock_curator_action_init):
13+
# Arrange
14+
runner = CuratorRunner()
15+
runner.config = {'host': 'localhost', 'port': 9200}
16+
action = 'test_action'
17+
log_level = 'INFO'
18+
dry_run = True
19+
operation_timeout = 300
20+
mock_curator_action_init.return_value = None
21+
22+
# Act
23+
runner.run(action=action, log_level=log_level, dry_run=dry_run,
24+
operation_timeout=operation_timeout)
25+
26+
# Assert
27+
self.assertEqual(runner._action, action)
28+
self.assertEqual(runner.config['timeout'], operation_timeout)
29+
self.assertEqual(runner.config['log_level'], log_level)
30+
self.assertEqual(runner.config['dry_run'], dry_run)
31+
self.assertEqual(runner.config['host'], 'localhost')
32+
self.assertEqual(runner.config['port'], 9200)
33+
mock_set_up_logging.assert_called_once()
34+
mock_do_command.assert_called_once()
35+
36+
@patch('curator_runner.CuratorAction.__init__', return_value=None)
37+
@patch('curator_runner.CuratorRunner.set_up_logging')
38+
@patch('curator_runner.CuratorRunner.do_command')
39+
def test_run_without_host_and_port(self, mock_do_command, mock_set_up_logging,
40+
mock_curator_action_init):
41+
# Arrange
42+
runner = CuratorRunner()
43+
runner.config = {}
44+
action = 'test_action'
45+
log_level = 'INFO'
46+
dry_run = True
47+
operation_timeout = 300
48+
mock_curator_action_init.return_value = None
49+
50+
# Act
51+
runner.run(action=action, log_level=log_level, dry_run=dry_run,
52+
operation_timeout=operation_timeout)
53+
54+
# Assert
55+
self.assertEqual(runner._action, action)
56+
self.assertEqual(runner.config['timeout'], operation_timeout)
57+
self.assertEqual(runner.config['log_level'], log_level)
58+
self.assertEqual(runner.config['dry_run'], dry_run)
59+
self.assertNotIn('host', runner.config)
60+
self.assertNotIn('port', runner.config)
61+
mock_set_up_logging.assert_called_once()
62+
mock_do_command.assert_called_once()
63+
64+
65+
if __name__ == '__main__':
66+
unittest.main()

0 commit comments

Comments
 (0)