)]}'
{"doc/feature_request/README.rst":[{"author":{"_account_id":14475,"name":"Prabhjyot Singh Sodhi","email":"prabhjyotsingh95@gmail.com","username":"psd"},"change_message_id":"49d5f04b8720f0d7e55b67f1ad2d6b52404a239b","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"If you don\u0027t have time to contribute your feature request via gerrit, please contact Boris Pavlovic (boris@pavlovic.me)"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":".. _instruction:  http://rally.readthedocs.org/en/latest/contribute.html#how-to-contribute"}],"source_content_type":"text/x-rst","patch_set":39,"id":"3a961159_64d6bc28","line":9,"updated":"2015-01-18 13:46:38.000000000","message":"this link does not exist, \ndid you mean http://rally.readthedocs.org/en/latest/improve_rally.html#how-to-contribute ?\nTrying to help :)","commit_id":"e732cbde99c2c810a2a8e6972651223799ebb13c"},{"author":{"_account_id":8507,"name":"Mikhail Dubov","email":"mdubov@mirantis.com","username":"msdubov"},"change_message_id":"6895cf93e8deb7f299bb4b6090b45490dcb8729d","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"If you don\u0027t have time to contribute your feature request via gerrit, please contact Boris Pavlovic (boris@pavlovic.me)"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":".. _instruction:  http://rally.readthedocs.org/en/latest/contribute.html#how-to-contribute"}],"source_content_type":"text/x-rst","patch_set":39,"id":"3a961159_84e488a8","line":9,"in_reply_to":"3a961159_64d6bc28","updated":"2015-01-18 14:53:34.000000000","message":"It will exist after we publish the docs on readthedocs!","commit_id":"e732cbde99c2c810a2a8e6972651223799ebb13c"}],"doc/source/contribute.rst":[{"author":{"_account_id":9545,"name":"Andriy Kurilin","email":"andr.kurilin@gmail.com","username":"akurilin"},"change_message_id":"251701ca74b4e4ef0f1776635f61249ba08ba730","unresolved":false,"context_lines":[{"line_number":27,"context_line":""},{"line_number":28,"context_line":"In case you have questions or want to share your ideas, be sure to contact us at the ``#openstack-rally`` IRC channel on **irc.freenode.net**."},{"line_number":29,"context_line":""},{"line_number":30,"context_line":"If you are going to contirbute to Rally, you will probably need to grasp a better understanding of several main design concepts used throughout our project (such as **benchmark scenarios**, **contexts** etc.). To do so, please read :ref:`this article \u003cmain_concepts\u003e`."},{"line_number":31,"context_line":""},{"line_number":32,"context_line":""},{"line_number":33,"context_line":"How to contribute"}],"source_content_type":"text/x-rst","patch_set":40,"id":"3a961159_2fd1e556","line":30,"updated":"2015-01-19 10:26:59.000000000","message":"s/contirbute/contribute/","commit_id":"d5a41fadae9e90bcb7b8ca4c49c7314140c89d42"},{"author":{"_account_id":8507,"name":"Mikhail Dubov","email":"mdubov@mirantis.com","username":"msdubov"},"change_message_id":"bd396c36e8ceb9c5da9f36df6e0ffb24fb00ddab","unresolved":false,"context_lines":[{"line_number":27,"context_line":""},{"line_number":28,"context_line":"In case you have questions or want to share your ideas, be sure to contact us at the ``#openstack-rally`` IRC channel on **irc.freenode.net**."},{"line_number":29,"context_line":""},{"line_number":30,"context_line":"If you are going to contirbute to Rally, you will probably need to grasp a better understanding of several main design concepts used throughout our project (such as **benchmark scenarios**, **contexts** etc.). To do so, please read :ref:`this article \u003cmain_concepts\u003e`."},{"line_number":31,"context_line":""},{"line_number":32,"context_line":""},{"line_number":33,"context_line":"How to contribute"}],"source_content_type":"text/x-rst","patch_set":40,"id":"3a961159_15499666","line":30,"in_reply_to":"3a961159_2fd1e556","updated":"2015-01-19 21:28:30.000000000","message":"Done","commit_id":"d5a41fadae9e90bcb7b8ca4c49c7314140c89d42"},{"author":{"_account_id":9545,"name":"Andriy Kurilin","email":"andr.kurilin@gmail.com","username":"akurilin"},"change_message_id":"251701ca74b4e4ef0f1776635f61249ba08ba730","unresolved":false,"context_lines":[{"line_number":66,"context_line":""},{"line_number":67,"context_line":"7. Start coding"},{"line_number":68,"context_line":""},{"line_number":69,"context_line":"8. Run the test suite locally to make sure nothing broke, e.g.:"},{"line_number":70,"context_line":""},{"line_number":71,"context_line":".. code-block:: none"},{"line_number":72,"context_line":""}],"source_content_type":"text/x-rst","patch_set":40,"id":"3a961159_6f276d64","line":69,"updated":"2015-01-19 10:26:59.000000000","message":"maybe we should note which tests will be launched by tox(py26,py27,pep8) ?","commit_id":"d5a41fadae9e90bcb7b8ca4c49c7314140c89d42"},{"author":{"_account_id":8507,"name":"Mikhail Dubov","email":"mdubov@mirantis.com","username":"msdubov"},"change_message_id":"bd396c36e8ceb9c5da9f36df6e0ffb24fb00ddab","unresolved":false,"context_lines":[{"line_number":66,"context_line":""},{"line_number":67,"context_line":"7. Start coding"},{"line_number":68,"context_line":""},{"line_number":69,"context_line":"8. Run the test suite locally to make sure nothing broke, e.g.:"},{"line_number":70,"context_line":""},{"line_number":71,"context_line":".. code-block:: none"},{"line_number":72,"context_line":""}],"source_content_type":"text/x-rst","patch_set":40,"id":"3a961159_354e926f","line":69,"in_reply_to":"3a961159_6f276d64","updated":"2015-01-19 21:28:30.000000000","message":"Done","commit_id":"d5a41fadae9e90bcb7b8ca4c49c7314140c89d42"},{"author":{"_account_id":9545,"name":"Andriy Kurilin","email":"andr.kurilin@gmail.com","username":"akurilin"},"change_message_id":"251701ca74b4e4ef0f1776635f61249ba08ba730","unresolved":false,"context_lines":[{"line_number":168,"context_line":""},{"line_number":169,"context_line":"This directory contains scripts and files related to the Rally CI system."},{"line_number":170,"context_line":""},{"line_number":171,"context_line":"Rally Style Commandments"},{"line_number":172,"context_line":"^^^^^^^^^^^^^^^^^^^^^^^^"},{"line_number":173,"context_line":""},{"line_number":174,"context_line":"*File: /tests/hacking/checks.py*"}],"source_content_type":"text/x-rst","patch_set":40,"id":"3a961159_4fb0f1fd","line":171,"updated":"2015-01-19 10:26:59.000000000","message":"can you move readme[*] from tests/hacking to doc directory and link it here?\n\n[*] - https://github.com/stackforge/rally/blob/master/tests/hacking/README.rst","commit_id":"d5a41fadae9e90bcb7b8ca4c49c7314140c89d42"},{"author":{"_account_id":8507,"name":"Mikhail Dubov","email":"mdubov@mirantis.com","username":"msdubov"},"change_message_id":"bd396c36e8ceb9c5da9f36df6e0ffb24fb00ddab","unresolved":false,"context_lines":[{"line_number":168,"context_line":""},{"line_number":169,"context_line":"This directory contains scripts and files related to the Rally CI system."},{"line_number":170,"context_line":""},{"line_number":171,"context_line":"Rally Style Commandments"},{"line_number":172,"context_line":"^^^^^^^^^^^^^^^^^^^^^^^^"},{"line_number":173,"context_line":""},{"line_number":174,"context_line":"*File: /tests/hacking/checks.py*"}],"source_content_type":"text/x-rst","patch_set":40,"id":"3a961159_75de5a40","line":171,"in_reply_to":"3a961159_4fb0f1fd","updated":"2015-01-19 21:28:30.000000000","message":"Added a bit info from there","commit_id":"d5a41fadae9e90bcb7b8ca4c49c7314140c89d42"}],"doc/source/feature_requests.rst":[{"author":{"_account_id":9545,"name":"Andriy Kurilin","email":"andr.kurilin@gmail.com","username":"akurilin"},"change_message_id":"251701ca74b4e4ef0f1776635f61249ba08ba730","unresolved":false,"context_lines":[{"line_number":1,"context_line":".."},{"line_number":2,"context_line":"      Copyright 2015 Mirantis Inc. All Rights Reserved."},{"line_number":3,"context_line":""},{"line_number":4,"context_line":"      Licensed under the Apache License, Version 2.0 (the \"License\"); you may"}],"source_content_type":"text/x-rst","patch_set":40,"id":"3a961159_2f89e525","line":1,"updated":"2015-01-19 10:26:59.000000000","message":"we have two equal doc files(doc/feature_request/README.rst and this one). Does it normal?","commit_id":"d5a41fadae9e90bcb7b8ca4c49c7314140c89d42"},{"author":{"_account_id":8507,"name":"Mikhail Dubov","email":"mdubov@mirantis.com","username":"msdubov"},"change_message_id":"bd396c36e8ceb9c5da9f36df6e0ffb24fb00ddab","unresolved":false,"context_lines":[{"line_number":1,"context_line":".."},{"line_number":2,"context_line":"      Copyright 2015 Mirantis Inc. All Rights Reserved."},{"line_number":3,"context_line":""},{"line_number":4,"context_line":"      Licensed under the Apache License, Version 2.0 (the \"License\"); you may"}],"source_content_type":"text/x-rst","patch_set":40,"id":"3a961159_95c9067d","line":1,"in_reply_to":"3a961159_2f89e525","updated":"2015-01-19 21:28:30.000000000","message":"Well, here we use some Sphinx-specific syntax (e.g. :ref:), so that\u0027s the reason why I duplicated a bit of text from doc/feature_request/README.rst","commit_id":"d5a41fadae9e90bcb7b8ca4c49c7314140c89d42"}],"doc/source/gates.rst":[{"author":{"_account_id":9545,"name":"Andriy Kurilin","email":"andr.kurilin@gmail.com","username":"akurilin"},"change_message_id":"251701ca74b4e4ef0f1776635f61249ba08ba730","unresolved":false,"context_lines":[{"line_number":31,"context_line":""},{"line_number":32,"context_line":"To create a rally-gate job, you should create a **rally-jobs/** directory at the root of your project."},{"line_number":33,"context_line":""},{"line_number":34,"context_line":"Normally, this directory contains only **{projectname}.yaml**, but easily can be added more scenarios and jobs."},{"line_number":35,"context_line":""},{"line_number":36,"context_line":"To make {projectname}.yaml run in gates, you need to add \"rally-jobs\" to the \"jobs\" section of projects.yaml in openstack-infra/project-config."},{"line_number":37,"context_line":""}],"source_content_type":"text/x-rst","patch_set":40,"id":"3a961159_4ffab178","line":34,"updated":"2015-01-19 10:26:59.000000000","message":"It would be nice to have some information about \"templates\"( https://review.openstack.org/#/c/137716/ ) here.","commit_id":"d5a41fadae9e90bcb7b8ca4c49c7314140c89d42"},{"author":{"_account_id":8507,"name":"Mikhail Dubov","email":"mdubov@mirantis.com","username":"msdubov"},"change_message_id":"bd396c36e8ceb9c5da9f36df6e0ffb24fb00ddab","unresolved":false,"context_lines":[{"line_number":31,"context_line":""},{"line_number":32,"context_line":"To create a rally-gate job, you should create a **rally-jobs/** directory at the root of your project."},{"line_number":33,"context_line":""},{"line_number":34,"context_line":"Normally, this directory contains only **{projectname}.yaml**, but easily can be added more scenarios and jobs."},{"line_number":35,"context_line":""},{"line_number":36,"context_line":"To make {projectname}.yaml run in gates, you need to add \"rally-jobs\" to the \"jobs\" section of projects.yaml in openstack-infra/project-config."},{"line_number":37,"context_line":""}],"source_content_type":"text/x-rst","patch_set":40,"id":"3a961159_f81eafbb","line":34,"in_reply_to":"3a961159_4ffab178","updated":"2015-01-19 21:28:30.000000000","message":"Done","commit_id":"d5a41fadae9e90bcb7b8ca4c49c7314140c89d42"},{"author":{"_account_id":9545,"name":"Andriy Kurilin","email":"andr.kurilin@gmail.com","username":"akurilin"},"change_message_id":"251701ca74b4e4ef0f1776635f61249ba08ba730","unresolved":false,"context_lines":[{"line_number":99,"context_line":"       node: bare-precise"},{"line_number":100,"context_line":"       tarball-site: tarballs.openstack.org"},{"line_number":101,"context_line":"       doc-publisher-site: docs.openstack.org"},{"line_number":102,"context_line":"   "},{"line_number":103,"context_line":"       jobs:"},{"line_number":104,"context_line":"         - python-jobs"},{"line_number":105,"context_line":"         - python-havana-bitrot-jobs"}],"source_content_type":"text/x-rst","patch_set":40,"id":"3a961159_8ff3b99f","line":102,"updated":"2015-01-19 10:26:59.000000000","message":"whitespaces:)","commit_id":"d5a41fadae9e90bcb7b8ca4c49c7314140c89d42"},{"author":{"_account_id":8507,"name":"Mikhail Dubov","email":"mdubov@mirantis.com","username":"msdubov"},"change_message_id":"bd396c36e8ceb9c5da9f36df6e0ffb24fb00ddab","unresolved":false,"context_lines":[{"line_number":99,"context_line":"       node: bare-precise"},{"line_number":100,"context_line":"       tarball-site: tarballs.openstack.org"},{"line_number":101,"context_line":"       doc-publisher-site: docs.openstack.org"},{"line_number":102,"context_line":"   "},{"line_number":103,"context_line":"       jobs:"},{"line_number":104,"context_line":"         - python-jobs"},{"line_number":105,"context_line":"         - python-havana-bitrot-jobs"}],"source_content_type":"text/x-rst","patch_set":40,"id":"3a961159_d5d62ef2","line":102,"in_reply_to":"3a961159_8ff3b99f","updated":"2015-01-19 21:28:30.000000000","message":"Done","commit_id":"d5a41fadae9e90bcb7b8ca4c49c7314140c89d42"}],"doc/source/index.rst":[{"author":{"_account_id":9545,"name":"Andriy Kurilin","email":"andr.kurilin@gmail.com","username":"akurilin"},"change_message_id":"251701ca74b4e4ef0f1776635f61249ba08ba730","unresolved":false,"context_lines":[{"line_number":16,"context_line":"What is Rally?"},{"line_number":17,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"**OpenStack** is, undoubtedly, a really *huge* ecosystem of cooperative services. **Rally** is a **benchmarking tool** that answers the question: **\"How does OpenStack work at scale?\"**. To make this possible, Rally **automates** and **unifies** multi-node OpenStack deployment, cloud verification, benchmarking \u0026 profiling. Rally does it in a **generic** way, making it possible to check whether OpenStack is going to work well on, say, a 1k-servers installation under high load. Thus it can be used as a basic tool for an *OpenStack CI/CD system* that would continuously improve its SLA, performance and stability."},{"line_number":20,"context_line":""},{"line_number":21,"context_line":".. image:: ./images/Rally-Actions.png"},{"line_number":22,"context_line":"   :width: 100%"}],"source_content_type":"text/x-rst","patch_set":40,"id":"3a961159_2f2c8501","line":19,"updated":"2015-01-19 10:26:59.000000000","message":"\u003eRally **automates** and **unifies** multi-node OpenStack deployment, cloud verification, benchmarking \u0026 profiling. \n\nDo we do profiling now?:)","commit_id":"d5a41fadae9e90bcb7b8ca4c49c7314140c89d42"},{"author":{"_account_id":8507,"name":"Mikhail Dubov","email":"mdubov@mirantis.com","username":"msdubov"},"change_message_id":"bd396c36e8ceb9c5da9f36df6e0ffb24fb00ddab","unresolved":false,"context_lines":[{"line_number":16,"context_line":"What is Rally?"},{"line_number":17,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"**OpenStack** is, undoubtedly, a really *huge* ecosystem of cooperative services. **Rally** is a **benchmarking tool** that answers the question: **\"How does OpenStack work at scale?\"**. To make this possible, Rally **automates** and **unifies** multi-node OpenStack deployment, cloud verification, benchmarking \u0026 profiling. Rally does it in a **generic** way, making it possible to check whether OpenStack is going to work well on, say, a 1k-servers installation under high load. Thus it can be used as a basic tool for an *OpenStack CI/CD system* that would continuously improve its SLA, performance and stability."},{"line_number":20,"context_line":""},{"line_number":21,"context_line":".. image:: ./images/Rally-Actions.png"},{"line_number":22,"context_line":"   :width: 100%"}],"source_content_type":"text/x-rst","patch_set":40,"id":"3a961159_06440e46","line":19,"in_reply_to":"3a961159_2f2c8501","updated":"2015-01-19 21:28:30.000000000","message":"So, as discussed, we will keep it because this is going to be true soon :)","commit_id":"d5a41fadae9e90bcb7b8ca4c49c7314140c89d42"}],"doc/source/tutorial/step_0_installation.rst":[{"author":{"_account_id":6172,"name":"Boris Pavlovic","email":"boris@pavlovic.me","username":"boris-42"},"change_message_id":"ebefb1c6d87e98ce2caa9efdabe6f868116fed49","unresolved":false,"context_lines":[{"line_number":19,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"Installation"},{"line_number":22,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"Installing Rally is very simple. Just execute the following commands:"},{"line_number":25,"context_line":""}],"source_content_type":"text/x-rst","patch_set":39,"id":"3a961159_996dd1cd","line":22,"updated":"2015-01-18 10:12:29.000000000","message":"You can\u0027t use top header. It create mess.","commit_id":"e732cbde99c2c810a2a8e6972651223799ebb13c"},{"author":{"_account_id":8507,"name":"Mikhail Dubov","email":"mdubov@mirantis.com","username":"msdubov"},"change_message_id":"6895cf93e8deb7f299bb4b6090b45490dcb8729d","unresolved":false,"context_lines":[{"line_number":19,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"Installation"},{"line_number":22,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"Installing Rally is very simple. Just execute the following commands:"},{"line_number":25,"context_line":""}],"source_content_type":"text/x-rst","patch_set":39,"id":"3a961159_1963a1ab","line":22,"in_reply_to":"3a961159_996dd1cd","updated":"2015-01-18 14:53:34.000000000","message":"Done","commit_id":"e732cbde99c2c810a2a8e6972651223799ebb13c"}],"doc/source/tutorial/step_1_setting_up_env_and_running_benchmark_from_samples.rst":[{"author":{"_account_id":6172,"name":"Boris Pavlovic","email":"boris@pavlovic.me","username":"boris-42"},"change_message_id":"ebefb1c6d87e98ce2caa9efdabe6f868116fed49","unresolved":false,"context_lines":[{"line_number":27,"context_line":""},{"line_number":28,"context_line":""},{"line_number":29,"context_line":"1. Deployment initialization"},{"line_number":30,"context_line":"^^^^^^^^^^^^^^^^^^^^^^^^^^^^"},{"line_number":31,"context_line":""},{"line_number":32,"context_line":"First, you have to provide Rally with an Openstack deployment it is going to benchmark. This should be done through deployment `configuration files \u003chttps://github.com/stackforge/rally/tree/master/samples/deployments\u003e`_. The actual deployment can be either created by Rally or, as in our example, be an already existing one. The configuration file (let\u0027s call it *existing.json*) should specify the deployment strategy (*\"ExistingCloud\"* in our case, since the deployment is ready to use) and some specific parameters (here, an endpoint with administrator permissions):"},{"line_number":33,"context_line":""}],"source_content_type":"text/x-rst","patch_set":39,"id":"3a961159_f95df516","line":30,"updated":"2015-01-18 10:12:29.000000000","message":"People DON\u0027T KNOW RALLY terminology. \n\nReading this phrase they will think about: \n\n  \"What they need to set in their cloud\"\n\nand not\n\n  \"Registration or Adding OpenStack deployment/cloud to Rally\"","commit_id":"e732cbde99c2c810a2a8e6972651223799ebb13c"},{"author":{"_account_id":8507,"name":"Mikhail Dubov","email":"mdubov@mirantis.com","username":"msdubov"},"change_message_id":"6895cf93e8deb7f299bb4b6090b45490dcb8729d","unresolved":false,"context_lines":[{"line_number":27,"context_line":""},{"line_number":28,"context_line":""},{"line_number":29,"context_line":"1. Deployment initialization"},{"line_number":30,"context_line":"^^^^^^^^^^^^^^^^^^^^^^^^^^^^"},{"line_number":31,"context_line":""},{"line_number":32,"context_line":"First, you have to provide Rally with an Openstack deployment it is going to benchmark. This should be done through deployment `configuration files \u003chttps://github.com/stackforge/rally/tree/master/samples/deployments\u003e`_. The actual deployment can be either created by Rally or, as in our example, be an already existing one. The configuration file (let\u0027s call it *existing.json*) should specify the deployment strategy (*\"ExistingCloud\"* in our case, since the deployment is ready to use) and some specific parameters (here, an endpoint with administrator permissions):"},{"line_number":33,"context_line":""}],"source_content_type":"text/x-rst","patch_set":39,"id":"3a961159_3905bdc1","line":30,"in_reply_to":"3a961159_f95df516","updated":"2015-01-18 14:53:34.000000000","message":"Done","commit_id":"e732cbde99c2c810a2a8e6972651223799ebb13c"},{"author":{"_account_id":6172,"name":"Boris Pavlovic","email":"boris@pavlovic.me","username":"boris-42"},"change_message_id":"ebefb1c6d87e98ce2caa9efdabe6f868116fed49","unresolved":false,"context_lines":[{"line_number":43,"context_line":"            \"username\": \u003cADMIN_USER_NAME\u003e,"},{"line_number":44,"context_line":"            \"password\": \u003cADMIN_PASSWORD\u003e,"},{"line_number":45,"context_line":"            \"tenant_name\": \u003cADMIN_TENANT\u003e"},{"line_number":46,"context_line":"        }"},{"line_number":47,"context_line":"    }"},{"line_number":48,"context_line":""},{"line_number":49,"context_line":""}],"source_content_type":"text/x-rst","patch_set":39,"id":"3a961159_1959e128","line":46,"updated":"2015-01-18 10:12:29.000000000","message":"The simpler way.\n\nAnd much more user firendly is\n\n   . opernc admin admin\n   rally deployment create --fromenv --name your_cloud \n\nAfter that you can add link with name: \n\n  \"What to do if you don\u0027t have openrc\" and describe this case with making JSON file with cloud credentials and endpoints.","commit_id":"e732cbde99c2c810a2a8e6972651223799ebb13c"},{"author":{"_account_id":8507,"name":"Mikhail Dubov","email":"mdubov@mirantis.com","username":"msdubov"},"change_message_id":"6895cf93e8deb7f299bb4b6090b45490dcb8729d","unresolved":false,"context_lines":[{"line_number":43,"context_line":"            \"username\": \u003cADMIN_USER_NAME\u003e,"},{"line_number":44,"context_line":"            \"password\": \u003cADMIN_PASSWORD\u003e,"},{"line_number":45,"context_line":"            \"tenant_name\": \u003cADMIN_TENANT\u003e"},{"line_number":46,"context_line":"        }"},{"line_number":47,"context_line":"    }"},{"line_number":48,"context_line":""},{"line_number":49,"context_line":""}],"source_content_type":"text/x-rst","patch_set":39,"id":"3a961159_44d38037","line":46,"in_reply_to":"3a961159_1959e128","updated":"2015-01-18 14:53:34.000000000","message":"Done","commit_id":"e732cbde99c2c810a2a8e6972651223799ebb13c"},{"author":{"_account_id":6172,"name":"Boris Pavlovic","email":"boris@pavlovic.me","username":"boris-42"},"change_message_id":"ebefb1c6d87e98ce2caa9efdabe6f868116fed49","unresolved":false,"context_lines":[{"line_number":88,"context_line":"2. Benchmarking"},{"line_number":89,"context_line":"^^^^^^^^^^^^^^^"},{"line_number":90,"context_line":""},{"line_number":91,"context_line":"Now that we have a working and registered deployment, we can start benchmarking it. The sequence of benchmark scenarios to be launched by Rally should be specified in a *benchmark task configuration file* (either in *JSON* or in *YAML* format). Let\u0027s try one of the sample benchmark tasks available in `samples/tasks/scenarios \u003chttps://github.com/stackforge/rally/tree/master/samples/tasks/scenarios\u003e`_, say, the one that boots and deletes multiple servers (*samples/tasks/scenarios/nova/boot-and-delete.json*):"},{"line_number":92,"context_line":""},{"line_number":93,"context_line":""},{"line_number":94,"context_line":".. code-block:: none"}],"source_content_type":"text/x-rst","patch_set":39,"id":"3a961159_19b0013f","line":91,"updated":"2015-01-18 10:12:29.000000000","message":"It\u0027s not a \"sequence of benchmark scenarios\". It\u0027s sequence of benchmarks. \n\n\"Scenario\" is just a part of each benchmark configration","commit_id":"e732cbde99c2c810a2a8e6972651223799ebb13c"},{"author":{"_account_id":8507,"name":"Mikhail Dubov","email":"mdubov@mirantis.com","username":"msdubov"},"change_message_id":"6895cf93e8deb7f299bb4b6090b45490dcb8729d","unresolved":false,"context_lines":[{"line_number":88,"context_line":"2. Benchmarking"},{"line_number":89,"context_line":"^^^^^^^^^^^^^^^"},{"line_number":90,"context_line":""},{"line_number":91,"context_line":"Now that we have a working and registered deployment, we can start benchmarking it. The sequence of benchmark scenarios to be launched by Rally should be specified in a *benchmark task configuration file* (either in *JSON* or in *YAML* format). Let\u0027s try one of the sample benchmark tasks available in `samples/tasks/scenarios \u003chttps://github.com/stackforge/rally/tree/master/samples/tasks/scenarios\u003e`_, say, the one that boots and deletes multiple servers (*samples/tasks/scenarios/nova/boot-and-delete.json*):"},{"line_number":92,"context_line":""},{"line_number":93,"context_line":""},{"line_number":94,"context_line":".. code-block:: none"}],"source_content_type":"text/x-rst","patch_set":39,"id":"3a961159_790bc5d4","line":91,"in_reply_to":"3a961159_19b0013f","updated":"2015-01-18 14:53:34.000000000","message":"Done","commit_id":"e732cbde99c2c810a2a8e6972651223799ebb13c"},{"author":{"_account_id":6172,"name":"Boris Pavlovic","email":"boris@pavlovic.me","username":"boris-42"},"change_message_id":"ebefb1c6d87e98ce2caa9efdabe6f868116fed49","unresolved":false,"context_lines":[{"line_number":182,"context_line":"    Using task: 6fd9a19f-5cf8-4f76-ab72-2e34bb1d4996"},{"line_number":183,"context_line":""},{"line_number":184,"context_line":""},{"line_number":185,"context_line":"Note that the benchmark task configuration file above uses *regular expressions* to specify the image and flavor name to be used for server creation, since concrete names might differ from installation to installation. If this benchmark task fails, then the reason for that might a non-existing image/flavor specified in the task configuration file. To check what images/flavors are available in the deployment you are currently benchmarking, you might use the *rally show* command:"},{"line_number":186,"context_line":""},{"line_number":187,"context_line":".. code-block:: none"},{"line_number":188,"context_line":""}],"source_content_type":"text/x-rst","patch_set":39,"id":"3a961159_59852957","line":185,"updated":"2015-01-18 10:12:29.000000000","message":"Don\u0027t call it \"benchmark task configration file\"\n\nCall it \"Rally input task\"","commit_id":"e732cbde99c2c810a2a8e6972651223799ebb13c"},{"author":{"_account_id":8507,"name":"Mikhail Dubov","email":"mdubov@mirantis.com","username":"msdubov"},"change_message_id":"6895cf93e8deb7f299bb4b6090b45490dcb8729d","unresolved":false,"context_lines":[{"line_number":182,"context_line":"    Using task: 6fd9a19f-5cf8-4f76-ab72-2e34bb1d4996"},{"line_number":183,"context_line":""},{"line_number":184,"context_line":""},{"line_number":185,"context_line":"Note that the benchmark task configuration file above uses *regular expressions* to specify the image and flavor name to be used for server creation, since concrete names might differ from installation to installation. If this benchmark task fails, then the reason for that might a non-existing image/flavor specified in the task configuration file. To check what images/flavors are available in the deployment you are currently benchmarking, you might use the *rally show* command:"},{"line_number":186,"context_line":""},{"line_number":187,"context_line":".. code-block:: none"},{"line_number":188,"context_line":""}],"source_content_type":"text/x-rst","patch_set":39,"id":"3a961159_b9f8cdc4","line":185,"in_reply_to":"3a961159_59852957","updated":"2015-01-18 14:53:34.000000000","message":"Done","commit_id":"e732cbde99c2c810a2a8e6972651223799ebb13c"}],"doc/source/tutorial/step_2_multiple_scenarios.rst":[{"author":{"_account_id":6172,"name":"Boris Pavlovic","email":"boris@pavlovic.me","username":"boris-42"},"change_message_id":"507abd89da10c9aa23a14fef524857a0400276f2","unresolved":false,"context_lines":[{"line_number":18,"context_line":"Step 2. Multiple scenarios in one task"},{"line_number":19,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"1. Discovering more benchmark scenarios in Rally"},{"line_number":22,"context_line":"^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^"},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"Rally currently comes with a great collection of benchmark scenarios that use the API of different OpenStack projects like **Keystone**, **Nova**, **Cinder**, **Glance** and so on. The good news is that you can combine multiple benchmark scenarios in one task to benchmark your cloud in a comprehensive way."}],"source_content_type":"text/x-rst","patch_set":37,"id":"3a961159_e8db9a7a","line":21,"updated":"2015-01-15 20:13:33.000000000","message":"This should be absolute separated step","commit_id":"8ed9bcc810c799614b6bb496dc9100e579925f97"},{"author":{"_account_id":8507,"name":"Mikhail Dubov","email":"mdubov@mirantis.com","username":"msdubov"},"change_message_id":"d2a197de50697c46bd61cbe137b66948a90be46c","unresolved":false,"context_lines":[{"line_number":18,"context_line":"Step 2. Multiple scenarios in one task"},{"line_number":19,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"1. Discovering more benchmark scenarios in Rally"},{"line_number":22,"context_line":"^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^"},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"Rally currently comes with a great collection of benchmark scenarios that use the API of different OpenStack projects like **Keystone**, **Nova**, **Cinder**, **Glance** and so on. The good news is that you can combine multiple benchmark scenarios in one task to benchmark your cloud in a comprehensive way."}],"source_content_type":"text/x-rst","patch_set":37,"id":"3a961159_d5e49ca9","line":21,"in_reply_to":"3a961159_e8db9a7a","updated":"2015-01-18 02:20:05.000000000","message":"Done","commit_id":"8ed9bcc810c799614b6bb496dc9100e579925f97"},{"author":{"_account_id":6172,"name":"Boris Pavlovic","email":"boris@pavlovic.me","username":"boris-42"},"change_message_id":"507abd89da10c9aa23a14fef524857a0400276f2","unresolved":false,"context_lines":[{"line_number":109,"context_line":""},{"line_number":110,"context_line":""},{"line_number":111,"context_line":"2. Different benchmark scenarios in one task"},{"line_number":112,"context_line":"^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^"},{"line_number":113,"context_line":""},{"line_number":114,"context_line":"Now when you can find benchmark scenarios in Rally you need to test your cloud, let\u0027s edit our configuration file from :ref:`step 1 \u003ctutorial_step_1_rally_basics\u003e` so that it prescribes Rally to launch not only the **NovaServers.boot_and_delete_server** scenario, but also the **CeilometerStats.create_meter_and_get_stats** scenario. All we have to do is to append the configuration of the second scenario as yet another top-level key of our json file:"},{"line_number":115,"context_line":""}],"source_content_type":"text/x-rst","patch_set":37,"id":"3a961159_08d9c682","line":112,"updated":"2015-01-15 20:13:33.000000000","message":"Multiple benchmarks in single task","commit_id":"8ed9bcc810c799614b6bb496dc9100e579925f97"},{"author":{"_account_id":8507,"name":"Mikhail Dubov","email":"mdubov@mirantis.com","username":"msdubov"},"change_message_id":"d2a197de50697c46bd61cbe137b66948a90be46c","unresolved":false,"context_lines":[{"line_number":109,"context_line":""},{"line_number":110,"context_line":""},{"line_number":111,"context_line":"2. Different benchmark scenarios in one task"},{"line_number":112,"context_line":"^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^"},{"line_number":113,"context_line":""},{"line_number":114,"context_line":"Now when you can find benchmark scenarios in Rally you need to test your cloud, let\u0027s edit our configuration file from :ref:`step 1 \u003ctutorial_step_1_rally_basics\u003e` so that it prescribes Rally to launch not only the **NovaServers.boot_and_delete_server** scenario, but also the **CeilometerStats.create_meter_and_get_stats** scenario. All we have to do is to append the configuration of the second scenario as yet another top-level key of our json file:"},{"line_number":115,"context_line":""}],"source_content_type":"text/x-rst","patch_set":37,"id":"3a961159_f5e7d8a8","line":112,"in_reply_to":"3a961159_08d9c682","updated":"2015-01-18 02:20:05.000000000","message":"Done","commit_id":"8ed9bcc810c799614b6bb496dc9100e579925f97"},{"author":{"_account_id":6172,"name":"Boris Pavlovic","email":"boris@pavlovic.me","username":"boris-42"},"change_message_id":"507abd89da10c9aa23a14fef524857a0400276f2","unresolved":false,"context_lines":[{"line_number":115,"context_line":""},{"line_number":116,"context_line":".. code-block:: none"},{"line_number":117,"context_line":""},{"line_number":118,"context_line":"    {"},{"line_number":119,"context_line":"        \"NovaServers.boot_and_delete_server\": ["},{"line_number":120,"context_line":"            {"},{"line_number":121,"context_line":"                \"args\": {"}],"source_content_type":"text/x-rst","patch_set":37,"id":"3a961159_0847061e","line":118,"updated":"2015-01-15 20:13:33.000000000","message":"This is bad sample. Show grammar instead of it \n\n\n    {\n      \"\u003cScenarioName1\u003e\": [\u003cbenchmark_config\u003e, \u003cbenchmark_config2\u003e, ...] \n      \"\u003cScnearioName2\u003e\": [\u003cbenchmark_config\u003e, ...] \n     }\n\n  \u003cbenchmark_confg\u003e is dict: \n    {\n      \"args\": { specific for scneario arguments }, \n      \"runner\": {\"type\": ..., }\n      ...\n     ...\n    }","commit_id":"8ed9bcc810c799614b6bb496dc9100e579925f97"},{"author":{"_account_id":8507,"name":"Mikhail Dubov","email":"mdubov@mirantis.com","username":"msdubov"},"change_message_id":"d2a197de50697c46bd61cbe137b66948a90be46c","unresolved":false,"context_lines":[{"line_number":115,"context_line":""},{"line_number":116,"context_line":".. code-block:: none"},{"line_number":117,"context_line":""},{"line_number":118,"context_line":"    {"},{"line_number":119,"context_line":"        \"NovaServers.boot_and_delete_server\": ["},{"line_number":120,"context_line":"            {"},{"line_number":121,"context_line":"                \"args\": {"}],"source_content_type":"text/x-rst","patch_set":37,"id":"3a961159_757848c1","line":118,"in_reply_to":"3a961159_0847061e","updated":"2015-01-18 02:20:05.000000000","message":"Done","commit_id":"8ed9bcc810c799614b6bb496dc9100e579925f97"},{"author":{"_account_id":6172,"name":"Boris Pavlovic","email":"boris@pavlovic.me","username":"boris-42"},"change_message_id":"507abd89da10c9aa23a14fef524857a0400276f2","unresolved":false,"context_lines":[{"line_number":116,"context_line":".. code-block:: none"},{"line_number":117,"context_line":""},{"line_number":118,"context_line":"    {"},{"line_number":119,"context_line":"        \"NovaServers.boot_and_delete_server\": ["},{"line_number":120,"context_line":"            {"},{"line_number":121,"context_line":"                \"args\": {"},{"line_number":122,"context_line":"                    \"flavor\": {"}],"source_content_type":"text/x-rst","patch_set":37,"id":"3a961159_a85352dc","line":119,"updated":"2015-01-15 20:13:33.000000000","message":"Then you can add real sample and run it to show that it works","commit_id":"8ed9bcc810c799614b6bb496dc9100e579925f97"},{"author":{"_account_id":8507,"name":"Mikhail Dubov","email":"mdubov@mirantis.com","username":"msdubov"},"change_message_id":"d2a197de50697c46bd61cbe137b66948a90be46c","unresolved":false,"context_lines":[{"line_number":116,"context_line":".. code-block:: none"},{"line_number":117,"context_line":""},{"line_number":118,"context_line":"    {"},{"line_number":119,"context_line":"        \"NovaServers.boot_and_delete_server\": ["},{"line_number":120,"context_line":"            {"},{"line_number":121,"context_line":"                \"args\": {"},{"line_number":122,"context_line":"                    \"flavor\": {"}],"source_content_type":"text/x-rst","patch_set":37,"id":"3a961159_954a1481","line":119,"in_reply_to":"3a961159_a85352dc","updated":"2015-01-18 02:20:05.000000000","message":"Done","commit_id":"8ed9bcc810c799614b6bb496dc9100e579925f97"},{"author":{"_account_id":6172,"name":"Boris Pavlovic","email":"boris@pavlovic.me","username":"boris-42"},"change_message_id":"507abd89da10c9aa23a14fef524857a0400276f2","unresolved":false,"context_lines":[{"line_number":168,"context_line":""},{"line_number":169,"context_line":".. code-block:: none"},{"line_number":170,"context_line":""},{"line_number":171,"context_line":"   $ rally task start my-task.json"},{"line_number":172,"context_line":"   ..."},{"line_number":173,"context_line":""},{"line_number":174,"context_line":""}],"source_content_type":"text/x-rst","patch_set":37,"id":"3a961159_08f546ca","line":171,"updated":"2015-01-15 20:13:33.000000000","message":"Please provide here \n\n  1) Output of results \n  2) HTML page image with few benchmarks (how different scenarios looks and how looks when we have few benchmarks of single scenario)","commit_id":"8ed9bcc810c799614b6bb496dc9100e579925f97"},{"author":{"_account_id":8507,"name":"Mikhail Dubov","email":"mdubov@mirantis.com","username":"msdubov"},"change_message_id":"d2a197de50697c46bd61cbe137b66948a90be46c","unresolved":false,"context_lines":[{"line_number":168,"context_line":""},{"line_number":169,"context_line":".. code-block:: none"},{"line_number":170,"context_line":""},{"line_number":171,"context_line":"   $ rally task start my-task.json"},{"line_number":172,"context_line":"   ..."},{"line_number":173,"context_line":""},{"line_number":174,"context_line":""}],"source_content_type":"text/x-rst","patch_set":37,"id":"3a961159_5388a821","line":171,"in_reply_to":"3a961159_08f546ca","updated":"2015-01-18 02:20:05.000000000","message":"Done","commit_id":"8ed9bcc810c799614b6bb496dc9100e579925f97"}],"doc/source/tutorial/step_2_running_multple_benchmarks_in_a_single_task.rst":[{"author":{"_account_id":6172,"name":"Boris Pavlovic","email":"boris@pavlovic.me","username":"boris-42"},"change_message_id":"ebefb1c6d87e98ce2caa9efdabe6f868116fed49","unresolved":false,"context_lines":[{"line_number":18,"context_line":"Step 2. Running multiple benchmarks in a single task"},{"line_number":19,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"1. Rally task configuration file syntax"},{"line_number":22,"context_line":"^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^"},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"Rally comes with a really great collection of :ref:`benchmark scenarios \u003ctutorial_step_5_discovering_more_benchmark_scenarios\u003e` and in most real-world scenarios you will use multiple scenarios to benchmark your OpenStack cloud. Rally makes it very easy to run **different benchmarks defined in a single benchmark task**. To do so, use the following syntax:"}],"source_content_type":"text/x-rst","patch_set":39,"id":"3a961159_b9952d89","line":21,"updated":"2015-01-18 10:12:29.000000000","message":"Rally input task syntax","commit_id":"e732cbde99c2c810a2a8e6972651223799ebb13c"},{"author":{"_account_id":8507,"name":"Mikhail Dubov","email":"mdubov@mirantis.com","username":"msdubov"},"change_message_id":"6895cf93e8deb7f299bb4b6090b45490dcb8729d","unresolved":false,"context_lines":[{"line_number":18,"context_line":"Step 2. Running multiple benchmarks in a single task"},{"line_number":19,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"1. Rally task configuration file syntax"},{"line_number":22,"context_line":"^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^"},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"Rally comes with a really great collection of :ref:`benchmark scenarios \u003ctutorial_step_5_discovering_more_benchmark_scenarios\u003e` and in most real-world scenarios you will use multiple scenarios to benchmark your OpenStack cloud. Rally makes it very easy to run **different benchmarks defined in a single benchmark task**. To do so, use the following syntax:"}],"source_content_type":"text/x-rst","patch_set":39,"id":"3a961159_f9fed5ad","line":21,"in_reply_to":"3a961159_b9952d89","updated":"2015-01-18 14:53:34.000000000","message":"Done","commit_id":"e732cbde99c2c810a2a8e6972651223799ebb13c"},{"author":{"_account_id":6172,"name":"Boris Pavlovic","email":"boris@pavlovic.me","username":"boris-42"},"change_message_id":"ebefb1c6d87e98ce2caa9efdabe6f868116fed49","unresolved":false,"context_lines":[{"line_number":21,"context_line":"1. Rally task configuration file syntax"},{"line_number":22,"context_line":"^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^"},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"Rally comes with a really great collection of :ref:`benchmark scenarios \u003ctutorial_step_5_discovering_more_benchmark_scenarios\u003e` and in most real-world scenarios you will use multiple scenarios to benchmark your OpenStack cloud. Rally makes it very easy to run **different benchmarks defined in a single benchmark task**. To do so, use the following syntax:"},{"line_number":25,"context_line":""},{"line_number":26,"context_line":".. code-block:: none"},{"line_number":27,"context_line":""}],"source_content_type":"text/x-rst","patch_set":39,"id":"3a961159_1987215c","line":24,"updated":"2015-01-18 10:12:29.000000000","message":"to benchmark your OpenStack cloud/To test your OpenStack cloud","commit_id":"e732cbde99c2c810a2a8e6972651223799ebb13c"},{"author":{"_account_id":8507,"name":"Mikhail Dubov","email":"mdubov@mirantis.com","username":"msdubov"},"change_message_id":"6895cf93e8deb7f299bb4b6090b45490dcb8729d","unresolved":false,"context_lines":[{"line_number":21,"context_line":"1. Rally task configuration file syntax"},{"line_number":22,"context_line":"^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^"},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"Rally comes with a really great collection of :ref:`benchmark scenarios \u003ctutorial_step_5_discovering_more_benchmark_scenarios\u003e` and in most real-world scenarios you will use multiple scenarios to benchmark your OpenStack cloud. Rally makes it very easy to run **different benchmarks defined in a single benchmark task**. To do so, use the following syntax:"},{"line_number":25,"context_line":""},{"line_number":26,"context_line":".. code-block:: none"},{"line_number":27,"context_line":""}],"source_content_type":"text/x-rst","patch_set":39,"id":"3a961159_d9f3d9e4","line":24,"in_reply_to":"3a961159_1987215c","updated":"2015-01-18 14:53:34.000000000","message":"Done","commit_id":"e732cbde99c2c810a2a8e6972651223799ebb13c"}],"doc/source/tutorial/step_3_adding_success_criteria_for_benchmarks.rst":[{"author":{"_account_id":6172,"name":"Boris Pavlovic","email":"boris@pavlovic.me","username":"boris-42"},"change_message_id":"ebefb1c6d87e98ce2caa9efdabe6f868116fed49","unresolved":false,"context_lines":[{"line_number":18,"context_line":"Step 3. Adding success criteria (SLA) for benchmarks"},{"line_number":19,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"1. SLA - Service-Level Agreement"},{"line_number":22,"context_line":"^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^"},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"Rally allows you to set success criteria (also called *SLA - Service-Level Agreement*) for every benchmark. Rally will automatically check them for you."}],"source_content_type":"text/x-rst","patch_set":39,"id":"3a961159_b9dc4d75","line":21,"updated":"2015-01-18 10:12:29.000000000","message":"SLA - Service-Level Agreement or just Success Criteria","commit_id":"e732cbde99c2c810a2a8e6972651223799ebb13c"},{"author":{"_account_id":8507,"name":"Mikhail Dubov","email":"mdubov@mirantis.com","username":"msdubov"},"change_message_id":"6895cf93e8deb7f299bb4b6090b45490dcb8729d","unresolved":false,"context_lines":[{"line_number":18,"context_line":"Step 3. Adding success criteria (SLA) for benchmarks"},{"line_number":19,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"1. SLA - Service-Level Agreement"},{"line_number":22,"context_line":"^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^"},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"Rally allows you to set success criteria (also called *SLA - Service-Level Agreement*) for every benchmark. Rally will automatically check them for you."}],"source_content_type":"text/x-rst","patch_set":39,"id":"3a961159_19fac1b9","line":21,"in_reply_to":"3a961159_b9dc4d75","updated":"2015-01-18 14:53:34.000000000","message":"Done","commit_id":"e732cbde99c2c810a2a8e6972651223799ebb13c"}],"doc/source/tutorial/step_3_sla.rst":[{"author":{"_account_id":6172,"name":"Boris Pavlovic","email":"boris@pavlovic.me","username":"boris-42"},"change_message_id":"507abd89da10c9aa23a14fef524857a0400276f2","unresolved":false,"context_lines":[{"line_number":21,"context_line":"1. SLA - Service-Level Agreement"},{"line_number":22,"context_line":"^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^"},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"One very nice feature of Rally is that it not only allows you to measure the performance of your cloud on a continuous scale (the duration of different benchmark scenario launched against it) but also that it can automatically decide whether your cloud is \"good enough\" in terms of some success criteria. These success criteria (also called *SLA - Service-Level Agreement*) can fix the maximum allowed failure rate, the longest possible duration for some benchmark scenario and so on."},{"line_number":25,"context_line":""},{"line_number":26,"context_line":"To configure the SLA for any of the benchmark scenarios you have in your task, add the *\"sla\"* section into its configuration:"},{"line_number":27,"context_line":""}],"source_content_type":"text/x-rst","patch_set":37,"id":"3a961159_e81e3a0c","line":24,"updated":"2015-01-15 20:13:33.000000000","message":"your cloud on a continuous scale ? seems like bullshit.","commit_id":"8ed9bcc810c799614b6bb496dc9100e579925f97"},{"author":{"_account_id":6172,"name":"Boris Pavlovic","email":"boris@pavlovic.me","username":"boris-42"},"change_message_id":"507abd89da10c9aa23a14fef524857a0400276f2","unresolved":false,"context_lines":[{"line_number":22,"context_line":"^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^"},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"One very nice feature of Rally is that it not only allows you to measure the performance of your cloud on a continuous scale (the duration of different benchmark scenario launched against it) but also that it can automatically decide whether your cloud is \"good enough\" in terms of some success criteria. These success criteria (also called *SLA - Service-Level Agreement*) can fix the maximum allowed failure rate, the longest possible duration for some benchmark scenario and so on."},{"line_number":25,"context_line":""},{"line_number":26,"context_line":"To configure the SLA for any of the benchmark scenarios you have in your task, add the *\"sla\"* section into its configuration:"},{"line_number":27,"context_line":""},{"line_number":28,"context_line":".. code-block:: none"}],"source_content_type":"text/x-rst","patch_set":37,"id":"3a961159_e8939a59","line":25,"updated":"2015-01-15 20:13:33.000000000","message":"You should remember one simple rule: \n\n  NOBODY LIKES TO READ \n\nYou are forcing people to read bullshit. \n\nWhy not just saying in one sentece. \n\n\n  Rally allows you to set success criteria for every benchmark and check them for you. \n\n To do that you should put in benchmark configruation one more section \"sla\" Like this \"failure_rate\": min: x max: y  that means blabalbalba\n\nYou can combine any of existing sla criterias. To find out of box supporting run rally info balbalbal \n\nThen you can put ass well image with HTML report with success critera (that passed and that failed) (Overivew page of 2 benchmarks)","commit_id":"8ed9bcc810c799614b6bb496dc9100e579925f97"},{"author":{"_account_id":8507,"name":"Mikhail Dubov","email":"mdubov@mirantis.com","username":"msdubov"},"change_message_id":"d2a197de50697c46bd61cbe137b66948a90be46c","unresolved":false,"context_lines":[{"line_number":22,"context_line":"^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^"},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"One very nice feature of Rally is that it not only allows you to measure the performance of your cloud on a continuous scale (the duration of different benchmark scenario launched against it) but also that it can automatically decide whether your cloud is \"good enough\" in terms of some success criteria. These success criteria (also called *SLA - Service-Level Agreement*) can fix the maximum allowed failure rate, the longest possible duration for some benchmark scenario and so on."},{"line_number":25,"context_line":""},{"line_number":26,"context_line":"To configure the SLA for any of the benchmark scenarios you have in your task, add the *\"sla\"* section into its configuration:"},{"line_number":27,"context_line":""},{"line_number":28,"context_line":".. code-block:: none"}],"source_content_type":"text/x-rst","patch_set":37,"id":"3a961159_13e38034","line":25,"in_reply_to":"3a961159_e8939a59","updated":"2015-01-18 02:20:05.000000000","message":"Done","commit_id":"8ed9bcc810c799614b6bb496dc9100e579925f97"},{"author":{"_account_id":6172,"name":"Boris Pavlovic","email":"boris@pavlovic.me","username":"boris-42"},"change_message_id":"507abd89da10c9aa23a14fef524857a0400276f2","unresolved":false,"context_lines":[{"line_number":47,"context_line":"        ]"},{"line_number":48,"context_line":"    }"},{"line_number":49,"context_line":""},{"line_number":50,"context_line":"Such configuration will mark the **NovaServers.boot_and_delete_server** benchmark scenario in this task as not successful if either some iteration took more than 10 seconds or more than 25% iterations failed."},{"line_number":51,"context_line":""},{"line_number":52,"context_line":""},{"line_number":53,"context_line":"2. SLA in task report"}],"source_content_type":"text/x-rst","patch_set":37,"id":"3a961159_28a84277","line":50,"updated":"2015-01-15 20:13:33.000000000","message":"What about rally task sla_check command?","commit_id":"8ed9bcc810c799614b6bb496dc9100e579925f97"},{"author":{"_account_id":8507,"name":"Mikhail Dubov","email":"mdubov@mirantis.com","username":"msdubov"},"change_message_id":"d2a197de50697c46bd61cbe137b66948a90be46c","unresolved":false,"context_lines":[{"line_number":47,"context_line":"        ]"},{"line_number":48,"context_line":"    }"},{"line_number":49,"context_line":""},{"line_number":50,"context_line":"Such configuration will mark the **NovaServers.boot_and_delete_server** benchmark scenario in this task as not successful if either some iteration took more than 10 seconds or more than 25% iterations failed."},{"line_number":51,"context_line":""},{"line_number":52,"context_line":""},{"line_number":53,"context_line":"2. SLA in task report"}],"source_content_type":"text/x-rst","patch_set":37,"id":"3a961159_33debc6a","line":50,"in_reply_to":"3a961159_28a84277","updated":"2015-01-18 02:20:05.000000000","message":"Done","commit_id":"8ed9bcc810c799614b6bb496dc9100e579925f97"}],"doc/source/tutorial/step_4_multiple_deployments.rst":[{"author":{"_account_id":6172,"name":"Boris Pavlovic","email":"boris@pavlovic.me","username":"boris-42"},"change_message_id":"507abd89da10c9aa23a14fef524857a0400276f2","unresolved":false,"context_lines":[{"line_number":18,"context_line":"Step 4. Rally instance for many clouds"},{"line_number":19,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"1. Deploying OpenStack with Rally"},{"line_number":22,"context_line":"^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^"},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"Along with supporting already existing OpenStack deployments, Rally itself can **deploy OpenStack automatically** by using one of its *deployment engines*. Recall the deployment configuration file we :ref:`used previously \u003ctutorial_step_1_rally_basics\u003e` to register an existing cloud in Rally:"}],"source_content_type":"text/x-rst","patch_set":37,"id":"3a961159_68edea8d","line":21,"updated":"2015-01-15 20:13:33.000000000","message":"You are talking here about Using exisitng OpenStack deployment. Not deploying.\n\nSo Start in normal way: \n\n\nWe already know how to work with single cloud with Rally from [1]. \n\nBut Rally is awsome tool that allows you to work with multiple. \n\n\nLet\u0027s register 2 OpenStack clouds. One that works another that doesn\u0027t work (wrong credentials) \n\n\nThen show output of command: \n\n  rally deployment list \n\nExplain what means active column and that all commands will get UUIDs of activate cloud (if we are not using explicit way) \n\nSo you can make a sample here (with 2 deployments) One that works another that doesn\u0027t work. \n\nThen try to run without \u003cUUID\u003e \n\n  rally deployment check # with cloud that work \n\nthen change default cloud with \n\n  rally use command \n\nthen run one more time \n\n  rally deployment check # with bad credentials \n\nthen run with explicit UUID\n\n  rally deployment check UUID \n\nswitch to wokring UUID \n\nand expalin about where UUID is actually stored (I mean ~/.rally/ directory) \n\nand now switch to task  and explain that \n\n  task list # shows results from active cloud only (and if you would like to display all of them you need to add special atribute)","commit_id":"8ed9bcc810c799614b6bb496dc9100e579925f97"},{"author":{"_account_id":8507,"name":"Mikhail Dubov","email":"mdubov@mirantis.com","username":"msdubov"},"change_message_id":"d2a197de50697c46bd61cbe137b66948a90be46c","unresolved":false,"context_lines":[{"line_number":18,"context_line":"Step 4. Rally instance for many clouds"},{"line_number":19,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"1. Deploying OpenStack with Rally"},{"line_number":22,"context_line":"^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^"},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"Along with supporting already existing OpenStack deployments, Rally itself can **deploy OpenStack automatically** by using one of its *deployment engines*. Recall the deployment configuration file we :ref:`used previously \u003ctutorial_step_1_rally_basics\u003e` to register an existing cloud in Rally:"}],"source_content_type":"text/x-rst","patch_set":37,"id":"3a961159_53d34837","line":21,"in_reply_to":"3a961159_68edea8d","updated":"2015-01-18 02:20:05.000000000","message":"Done","commit_id":"8ed9bcc810c799614b6bb496dc9100e579925f97"}],"doc/source/tutorial/step_4_working_with_multple_openstack_clouds.rst":[{"author":{"_account_id":6172,"name":"Boris Pavlovic","email":"boris@pavlovic.me","username":"boris-42"},"change_message_id":"ebefb1c6d87e98ce2caa9efdabe6f868116fed49","unresolved":false,"context_lines":[{"line_number":46,"context_line":""},{"line_number":47,"context_line":"    {"},{"line_number":48,"context_line":"        \"type\": \"ExistingCloud\","},{"line_number":49,"context_line":"        \"auth_url\": \u003cKEYSTONE_AUTH_URL\u003e,"},{"line_number":50,"context_line":"        \"region_name\": \"RegionOne\","},{"line_number":51,"context_line":"        \"endpoint_type\": \"public\","},{"line_number":52,"context_line":"        \"admin_port\": 35357,"}],"source_content_type":"text/x-rst","patch_set":39,"id":"3a961159_f9e2552e","line":49,"updated":"2015-01-18 10:12:29.000000000","message":"Use 2 times here openrc file instead of this file","commit_id":"e732cbde99c2c810a2a8e6972651223799ebb13c"},{"author":{"_account_id":8507,"name":"Mikhail Dubov","email":"mdubov@mirantis.com","username":"msdubov"},"change_message_id":"6895cf93e8deb7f299bb4b6090b45490dcb8729d","unresolved":false,"context_lines":[{"line_number":46,"context_line":""},{"line_number":47,"context_line":"    {"},{"line_number":48,"context_line":"        \"type\": \"ExistingCloud\","},{"line_number":49,"context_line":"        \"auth_url\": \u003cKEYSTONE_AUTH_URL\u003e,"},{"line_number":50,"context_line":"        \"region_name\": \"RegionOne\","},{"line_number":51,"context_line":"        \"endpoint_type\": \"public\","},{"line_number":52,"context_line":"        \"admin_port\": 35357,"}],"source_content_type":"text/x-rst","patch_set":39,"id":"3a961159_24dcb4e0","line":49,"in_reply_to":"3a961159_f9e2552e","updated":"2015-01-18 14:53:34.000000000","message":"Done","commit_id":"e732cbde99c2c810a2a8e6972651223799ebb13c"}],"doc/source/tutorial/step_5_discovering_more_benchmark_scenarios.rst":[{"author":{"_account_id":6172,"name":"Boris Pavlovic","email":"boris@pavlovic.me","username":"boris-42"},"change_message_id":"ebefb1c6d87e98ce2caa9efdabe6f868116fed49","unresolved":false,"context_lines":[{"line_number":33,"context_line":""},{"line_number":34,"context_line":".. code-block:: none"},{"line_number":35,"context_line":""},{"line_number":36,"context_line":"    $ rally info find BenchmarkScenarios"},{"line_number":37,"context_line":"    --------------------------------------------------------------------------------"},{"line_number":38,"context_line":"     Rally - Benchmark scenarios"},{"line_number":39,"context_line":"    --------------------------------------------------------------------------------"}],"source_content_type":"text/x-rst","patch_set":39,"id":"3a961159_39d05d52","line":36,"updated":"2015-01-18 10:12:29.000000000","message":"I will prefer to start from \"rally info\" command","commit_id":"e732cbde99c2c810a2a8e6972651223799ebb13c"},{"author":{"_account_id":8507,"name":"Mikhail Dubov","email":"mdubov@mirantis.com","username":"msdubov"},"change_message_id":"6895cf93e8deb7f299bb4b6090b45490dcb8729d","unresolved":false,"context_lines":[{"line_number":33,"context_line":""},{"line_number":34,"context_line":".. code-block:: none"},{"line_number":35,"context_line":""},{"line_number":36,"context_line":"    $ rally info find BenchmarkScenarios"},{"line_number":37,"context_line":"    --------------------------------------------------------------------------------"},{"line_number":38,"context_line":"     Rally - Benchmark scenarios"},{"line_number":39,"context_line":"    --------------------------------------------------------------------------------"}],"source_content_type":"text/x-rst","patch_set":39,"id":"3a961159_64f15c69","line":36,"in_reply_to":"3a961159_39d05d52","updated":"2015-01-18 14:53:34.000000000","message":"Done","commit_id":"e732cbde99c2c810a2a8e6972651223799ebb13c"}],"test-requirements.txt":[{"author":{"_account_id":6172,"name":"Boris Pavlovic","email":"boris@pavlovic.me","username":"boris-42"},"change_message_id":"4c36e573d61f51ed0f6f4e3d476322f080b3ec07","unresolved":false,"context_lines":[{"line_number":12,"context_line":"oslosphinx\u003e\u003d2.2.0  # Apache-2.0"},{"line_number":13,"context_line":"oslotest\u003e\u003d1.2.0  # Apache-2.0"},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"sphinx_rtd_theme"}],"source_content_type":"text/plain","patch_set":9,"id":"3a961159_75875361","line":15,"updated":"2014-12-23 22:36:30.000000000","message":"You can\u0027t add this here. Cause it is not in global requirements.","commit_id":"a28cbb7e4ec5f7651a310c94bb3d838cd556e24a"},{"author":{"_account_id":8507,"name":"Mikhail Dubov","email":"mdubov@mirantis.com","username":"msdubov"},"change_message_id":"630f2c46efded36c330de5157f9275b3a1bfd465","unresolved":false,"context_lines":[{"line_number":12,"context_line":"oslosphinx\u003e\u003d2.2.0  # Apache-2.0"},{"line_number":13,"context_line":"oslotest\u003e\u003d1.2.0  # Apache-2.0"},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"sphinx_rtd_theme"}],"source_content_type":"text/plain","patch_set":9,"id":"3a961159_44b8e0c7","line":15,"in_reply_to":"3a961159_75875361","updated":"2014-12-24 10:42:14.000000000","message":"Okay but you\u0027ve said that it perhaps would make sense to add sphinx_rtd_theme to global requirements. Let me keep this for now, to be able to navigate through docs in the correct template","commit_id":"a28cbb7e4ec5f7651a310c94bb3d838cd556e24a"}]}
