CHANGES
=======

1.4.2
-----

* Enhance Shaker to support the shell class execution after reboot agent instance
* Resolve job failures

1.4.1
-----

* update master/slave terms

1.4.0
-----

* Add psuedo lazy pirate stragey to agent, with socket timeouts
* Resolve code style issue reported by a new version of flake
* Resolve py27 and pep8 job failures
* Cap requirements for Python version below 3.6
* Update documentation
* Add a job to mirror the code from OpenDev to Github

1.3.4
-----

* cleanup per cfg when heat stack creation fails
* Update hung process/thread approach

1.3.3
-----

* Prevent hung process/threads when server\_endpoint is not reachable

1.3.2
-----

* Upgrade pip and setuptools in CentOS images
* Fix CentOS7 shaker image build failures

1.3.1
-----

* Sync version of hacking library with diskimage-builder
* Make environment to create\_stack have a default value
* Fix failures in pep8 job caused by flake8>=2.6.0

1.3.0
-----

* Update project links and package metadata
* Update cleanup cfg parameter to a more appropriate name
* Add support for heat stack related configurations
* Remove redundant lines in zuul config
* Pin version of Sphinx
* OpenDev Migration Patch
* Replace openstack.org git:// URLs with https://
* Replace py35 job with py36
* Run tests on Python 3.7

1.2.0
-----

* Add support for best-effort accommodations
* Adjust new config options to use dash instead of underscore
* Allow granular host selection
* Change openstack-dev to openstack-discuss
* Add Zuul job to build Docker image
* Make {{ unique }} available in env files
* Enhance Iperf executor to accept "unmapped" args
* Enhance Shaker to support custom user options
* Fix bug with interactive report and SLA failures
* Enhance Shaker to provide the ability to define support templates
* Do not list test scenarios in CLI help
* Enhance Shaker to support basic heat environment files
* Ignore errors from server console retrieval
* Revert "Report presence of any records with errors"
* Enhance Shaker to use flavor metadata matching with host aggregates
* Add zuul job with integration testing
* Report presence of any records with errors
* Add ability to override AZ and compute\_nodes via cfg or cli
* Add identity API v3 support for os-interface
* Don't quote {posargs} in tox.ini
* Add Zuul job to publish docs on RTD
* Import Zuul job settings from project-config
* Add documentation build job
* Update generated docs for CLI tools and config template
* Changing cross\_az image selection logic
* Add identity API v3 support

1.1.3
-----

* Fix CentOS7 dib image build issue
* Switch to stestr
* Use try-except block for parameters for heat stack
* Add lib dependency: libssl-dev & libffi-dev

1.1.2
-----

* Cap os-client-config to avoid impact on YAML parser
* Use libzmq3-dev instead of libzmq-dev
* Trivial: Update pypi url to new url
* Run yum update to include CVE fixes
* Fix the ineffective links in shaker
* Do not use “-y” for package install

1.1.1
-----

* Allow bandwidth parameter for both tcp and udp iperf cases
* Add osprofiler support
* Show proper error when there are not enough compute nodes
* Show proper error message if Heat is not present

1.1.0
-----

* Update URLs in documents according to document migration
* Enable some off-by-default checks
* Add support for CentOS7 through diskimage-builder
* Updating netperf-2.7.0.tar.gz tar URL for CentOS template
* Using fixtures instead of deprecated mockpatch module
* Fix the dead link
* Install necessary tools inside Docker image

1.0.0
-----

* Integrate diskimage-builder into shaker-image-builder
* Build image with disk-image-builder
* Clean some of six-inspired ugliness
* Deprecate pyshaker-agent package
* Install pyshaker into images and make Xenial a default
* Bump dependencies versions
* Allow more than 1 agent per host
* Use modern PBR and hacking packages
* Fix logging in shaker-all-in-one
* Remove unused logging import
* Update docs about spot scenarios
* Fix broken debian image link and upgrade to 8.6.0

0.0.17
------

* Fix Flent support
* Insecure mode enabled for all OS clients
* Included compatibility with older heat clients StackManager' object in old heat clients has no attribute 'output\_list'
* Document how to run Shaker on Kubernetes against FuelCCP OpenStack
* Fix docs gate and rtd build
* Add Ubuntu Xenial template for Shaker image builder

0.0.16
------

* oslo.log is required for RTFD build
* Fix build on RTFD
* Fix a typo in tcp.yaml,etc
* Add iperf3 to CentOS Image Builder Template
* Add dependency for floating IP
* Replace assertEqual(None, \*) with assertIsNone in tests
* Add Python 3.5 classifier and venv for shaker
* Fix and CLeanup  CentOS Image Build
* Doc update
* Run multiple scenarios at once
* Agent is fixed to execute scripts under Py3
* Fix agent's polling interval configuration
* Separate doc requirements from test requirements
* Document config parameters
* Cleanup in option definition and the docs
* Pack Shaker into container
* Fix subunit generation in py35
* Switch from py34 to py35
* Fix shaker-cleanup

0.0.15
------

* Tell how to specify availability zones
* Saving output file with an empty output option
* Added section 'Time Info' to HTML report
* Added missing stats to the RST report
* Modify shaker.conf about some help message
* Modify 'agent timeout' help message
* Modify some words in shaker CLI help message
* Fix QoS scenario
* Enhance RST report with charts and stats table
* Make DNS nameserver configurable
* Make Shaker flavor parameters configurable
* Added QoS L2 scenario
* Retrieve heat stack outputs in an optimal way
* Deprecated LOG.warn
* Work with OpenStack python client in a modern manner
* Add ping scenario for shaker-spot

0.0.14
------

* Move scenarios from networking/ to openstack/
* Update scenario descriptions and list them in the docs
* Fixes netperf installation in centos template
* Add L3-North-South scenarios for external target host
* Collect jitter stats for iperf3 UDP tests
* Rename fields from 'mean' into 'avg'
* Hide DEBUG logs from pykwalify
* Calculate agent's chart data on client side
* Minor docs update

0.0.13
------

* Iterate flent output correctly
* Re-generate auto-docs
* Move the setting of the flag
* Bump pyzmq>=15.2.0
* Validate scenarios against schema

0.0.12
------

* Do not filter agents when density > 1
* Document non-admin use case
* Make accommodation handling order independent
* Improve messaging when image builder executed with non-admin user
* Run Shaker by non-admin user
* Update link to CLI Reference
* Convert svg images to png format for PDF generation
* Add report examples into the documentation
* Generate report in ReST format
* Handle deployment cleanup errors
* Update scenarios
* Allow to specify iperf bandwidth 0
* Fix filtering of empty values
* Use assertTrue/False instead of assertEqual(T/F)
* Add metadata to concurrencty chart
* Bug fix for 1511346
* Update scenarios and documentation
* Use target host when shaker is run in spot mode
* Fix flent pattern and normalize metric names
* iperf3 output may miss retransmit column
* Make SLA evaluation tolerant to errors
* Allow to override scenario parameters
* Refactor server.execute method
* Implement agent-less execution mode (aka spot)
* Move server\_endpoint param out of Deployment constructor
* Log SLA results
* Allow static host name in scenario
* Do not run iperf under sudo
* Add version information into docs
* Convert SVG images to PNG

0.0.11
------

* Deprecated tox -downloadcache option removed
* Added option disable validation via a certifying authority
* Select compute nodes randomly
* Add updated scenarios to cross\_az
* Refactor agent work and cover with tests
* Show scenario errors in the report
* Show slave agents together with master
* Make chart able to show 2 axes when needed

0.0.10
------

* Remove legacy netperf-wrapper support
* Add ability to run scenarios across availability zones

0.0.9
-----

* Update requirements and pin pyzmq
* Change repository from stackforge to openstack
* Update .gitreview for new namespace
* Pin version of shaker agent and pip

0.0.8.1
-------

* Fix how agent is installed inside the image
* Update from the global requirements
* Add iperf3 support
* Refactor stack creation code
* Allow to override instance IP via scenario
* Heat template for  CentOs7 image
* Include tests into the package
* Fix references to scenarios in examples doc
* Split out UDP tests

0.0.8
-----

* Added support for TLS/SSL Openstack APIs
* Refer to scenarios by alias name
* Make stack clean-up configurable in image builder
* Clean heat stack upon deployment failure
* Add tests for server.play\_scenario function
* Simplify selection of report template
* Simplify the choice of image builder template
* Unify spelling of measurement units
* Do not enforce MTU inside the image
* Improve iperf support
* Install flent into the image
* Update docs with scenario definition details
* Add support for flent tool
* Install netperf-wrapper with pip<7.0
* Handle exceptions in executor reply processors
* Rename 'size' parameter into 'progression'

0.0.7.4
-------

* Replace 'const' keyword with 'var' in javascript code
* Minor docs improvements
* Add documentation
* Add bunch of networking scenarios
* Install the agent from pypi instead of git master
* Change style of docs to standard RTFD
* Handle SIGINT while agents are joining the quorum
* Shutdown server gracefully
* Fix build for pyshaker-agent
* Add separate setup config for building pyshaker-agent
* Reduce instance RAM requirements to 512 Mb
* Terminate if accommodation is not satisfied
* Add time information into records
* Simplify usage of Shaker as lib
* Fill selectors options based on current record set
* Adopt shaker.lib to recent result model changes
* Graceful SIGINT handling
* Move quorum creation to the corresponding package
* Validate server-endpoint parameter via oslo.config
* Introduce record id and reference from sla-record
* Use MAC as default agent id
* New grammar for SLA specification
* Cleanup report generation
* Change output format and proceed with new report
* The base for new template is added
* Fix verification of connection to OpenStack
* Set default executor timeout to 60 sec
* Add parameter to skip report generation for failed scenarios
* Add scenario sample that retrieves instances' metadata
* Move scenario processing code into separate method
* Add heartbeat to help with detecting hanging agents
* Move Quorum into a separate file
* Refactor Quorum to dedup common code in wait\_join and run
* Detect lost agents
* Fix agent extending
* Improve error handling in image builder
* Revert "Detect lost agents"
* Detect lost agents
* Log errors that could happen in Heat stack creation
* Improve error-handling in report generation
* Make failures of image-builder more human-friendly
* Gracefully terminate server when SIGINT is caught

0.0.1
-----

* Add bandwidth support for iperf command
* Update readme file
* Remove legacy scripts from bin/ folder
* Ignore messages from unexpected agents
* Fix density processing
* Implement SLA support and subunit output
* Refactor server and extract lib entry-point
* Renamed: program instead of method for shell-executer
* Added script support to shell-executer
* Allow to specify how many compute nodes need to be used
* VM density feature
* Added netperf-wrapper test suite and aggregate report
* Generate docs for console tools
* Make polling interval configurable
* Use arrays instead of tuples in samples data
* Minor cleanup in the report
* Added aggregator for traffic stats post-processing
* Move executors to separate package
* Split out report entry-point
* Refactoring of traffic stats processing
* Allow to store and read execution results in JSON format
* Move static agents sample scenario
* Use relative paths in scenario files
* Refactor agents processing and add unit tests
* Make all params configurable via system env
* Fix config processing for oslo.log
* Use oslo.log lib instead of incunator code
* Move resources into separate folder
* Push agent\_id from the deployment engine
* Fix the script in image installer
* Refactor executors build command lines
* Cleanup in topology templates
* Use keystone session for modern clients
* Enable iperf auto-run in the image
* Avoid Keystone token expiration att. #2
* Avoid Keystone token expiration
* Configure smaller MTU in the image (for Neutron GRE case) att. #2
* Configure smaller MTU in the image (for Neutron GRE case)
* Fix reference in L2 scenario
* Cleanup iperf graph reporting
* Added iperf executor with chart feature
* Added network scenario with VMs in different nets
* Added network scenario with 2 routers topology
* Structured HTML report based on bootstrap template
* Implement image builder in Python
* Move OpenStack clients to separate package
* Add external\_net config option
* Make os-region-name configurable
* Auto-detect public network
* Add iperf executor
* Implemented agent selection
* Add more options into netperf executor
* Show agent list in the report
* Refactor agent processing and filter alive
* Remove key\_name param from same\_net scenario
* Apply bootstrap styles to the report template
* Implemented draft report generation
* Schedule VMs on active compute nodes only
* Added result processing
* Remove unused code
* Deployment refactring
* Remove key\_name parameter from the template
* Introduce pure netperf executor
* Refactor templating and add more samples
* Do not install numpy on agent machines
* Install numpy, change the way agent starts
* Introduce executors that convert test definition into commands
* Do not reload cloud image if it already exists in Glance
* Update readme regarding NETWORK\_NAME param
* Install requirements by pip then run setup.py
* Update prepare script and demo template
* Change oslo imports to namespaceless ones
* Updates in prepare script
* Add sample conf file and generator tox target
* Correct calculation of agent ids
* End-to-end topology deployment and test launching
* Extract deployment code and merge main and server
* Base server-agent communication protocol is implemented
* Draft of client-server communication
* Install pbr into the image
* Install shaker into the image
* Make instance-id as external parameter
* Cleanup image prepare script
* Agent executes commands
* Base agent code
* Added ZMQ communication wireframe
* Add security group for VM access
* Base deployment via Heat template
* Add nova client and compute nodes retrieval
* Sync requirements with global list
* Wireframe for Heat usage
* Initial commit
