This change has been requested by Dmitrii Kabanov dkabanov@mirantis.com.
Now if roles is a string, it does not have to have spaces after commas.
Change-Id: I8b7bae1e1f2a4955dda9440b629393f18edc6fac
- Fix crash when hitting logger.warning in exec_pair
- Fix SPT bugs:
- iperf sometimes not installed for HW to HW test
- iperf_server_stop broken in several ways
- glance download script has wrong filename
- SPT_parser traces on empty glance output
- Print to stdout on non-0 exit to tell about unclean exit to user
- Reorder SPT copy-paste line once more
Change-Id: I7a37b5fce5bc620cc9e2db8d232180c215cd3782
- Only convert outputs/errors to unicode if printing required,
use 'replace' error handling to avoid errors. Write original
byte str to output files to avoid double conversion.
- Fix spec broken with 1.26.6.
- Add simplified-performance-testing config & rq files, scripts.
Can be used after deployment to get a few benchmark values.
SPT_parser.sh can be used to parse results.
Change-Id: I2aacfdbd9574ff737a6b88a29d87ae56abd03e46
Avoid dangerous file parsing and object serialization libraries.
yaml.load is the obvious function to use but it is dangerous[1]
Because yaml.load return Python object may be dangerous if you
receive a YAML document from an untrusted source such as the Internet.
The function yaml.safe_load limits this ability to simple Python
objects like integers or lists.
In addition, Bandit flags yaml.load() as security risk so replace
all occurrences with yaml.safe_load(). Thus I replace yaml.load()
with yaml.safe_load()
[1] https://security.openstack.org/guidelines/dg_avoid-dangerous-input-parsing-libraries.html
Change-Id: I4b554fa20c2391a0f7a11fd5d6f5f944f0de2d03
- Add max_pairs parameter to limit concurrency for
scripts_all_pairs run
- Move maxthreads and logs_maxthreads into configuration
- Rework some of the configuration comments
Change-Id: I74c308c9a7aa5177eba8d6c9afb69c79bc1f809a
modules should be put into timmy/analyze_modules directory
subdirectories are also supported
__example__.py explains the internals and can be used as a template
Change-Id: I4d32f2467dfe1885e71340bd24e8e587aed667c1
change mapscr structure
add function generate_mapscr
add property scripts_ddir
add conf parameter 'offline'
add cli argument 'offline'
call generate_mapscr from analyze when mapscr empty
add fuel-node-json script
add fuel-node-json to default.yaml
+ fix analyze parse_df_* fail with longer dev names in df output
how to analyze old results:
1. extact results archive into /tmp/timmy/info
2. run timmy with the following arguments:
--no-clean
--analyze
--offline
--nodes-json /tmp/timmy/info/scripts/fuel/fuel-node-json
Change-Id: I4eeb314e9cd00a1c43096e2bfeb583da958ec439
We now attempt to collect the dump disregarding the release
For both postgres in docker and in main system.
Two files will always be present in collected results:
fuel-docker-postgres-backup and fuel-postgres-backup
One of them will be empty, the other will contain the backup.
Which one is empty depends on whether postgres is in docker or not.
Change-Id: I9627fb00595ae8ce21188727b8d3de71b64fbcf1
Timmy can get stuck on proc.join() if queue has not been collected
and the queue does not fit into the system pipe buffer.
This fix adds a loop in which we try to get data from the queue and
then join the process but with a 1 second timeout, so we don't block
forever.
Closes-Bug: https://github.com/adobdin/timmy/issues/66
Change-Id: I0d96a7c8aa6823bc5c22c4b6b74e4897d52d4332