)]}'
{"doc/source/plugins/exporter_plugin.rst":[{"author":{"_account_id":6172,"name":"Boris Pavlovic","email":"boris@pavlovic.me","username":"boris-42"},"change_message_id":"01d5c3757ae0e94a2754c2c51bafeef5e77ad95e","unresolved":false,"context_lines":[{"line_number":16,"context_line":".. _plugins_context_plugin:"},{"line_number":17,"context_line":""},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"Exporter as a plugin"},{"line_number":20,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":21,"context_line":""},{"line_number":22,"context_line":"If you need to export rally task results or verification task results to you"}],"source_content_type":"text/x-rst","patch_set":4,"id":"bab6814e_6bdea56e","line":19,"updated":"2016-05-19 01:00:48.000000000","message":"Task results exporter plugin \n\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d","commit_id":"d826a66b0183697c846efedb89e987e2767de289"},{"author":{"_account_id":6172,"name":"Boris Pavlovic","email":"boris@pavlovic.me","username":"boris-42"},"change_message_id":"01d5c3757ae0e94a2754c2c51bafeef5e77ad95e","unresolved":false,"context_lines":[{"line_number":20,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":21,"context_line":""},{"line_number":22,"context_line":"If you need to export rally task results or verification task results to you"},{"line_number":23,"context_line":"custom system. This may be needed in case if you want to store rally task"},{"line_number":24,"context_line":"results outside of rally db itself. Lets look at the simple example of task"},{"line_number":25,"context_line":"exporting to the file."},{"line_number":26,"context_line":""}],"source_content_type":"text/x-rst","patch_set":4,"id":"bab6814e_0bec398e","line":23,"updated":"2016-05-19 01:00:48.000000000","message":"This two sentences doesn\u0027t sound well together. \n\n\nRally allows you to export task results to any other third party system using Rally Task Exporters plugins. \n\nIf there is no task exporter for you system it is not a big deal, you can write own plugin it\u0027s pretty simple and straightforward, above is sample of such plugin.","commit_id":"d826a66b0183697c846efedb89e987e2767de289"},{"author":{"_account_id":6172,"name":"Boris Pavlovic","email":"boris@pavlovic.me","username":"boris-42"},"change_message_id":"01d5c3757ae0e94a2754c2c51bafeef5e77ad95e","unresolved":false,"context_lines":[{"line_number":46,"context_line":"    from rally.task import exporter"},{"line_number":47,"context_line":""},{"line_number":48,"context_line":""},{"line_number":49,"context_line":"    def configure(name, namespace\u003d\"default\"):"},{"line_number":50,"context_line":"        return plugin.configure(name\u003dname, namespace\u003dnamespace)"},{"line_number":51,"context_line":""},{"line_number":52,"context_line":"    LOG \u003d logging.getLogger(__name__)"}],"source_content_type":"text/x-rst","patch_set":4,"id":"bab6814e_ab940de2","line":49,"updated":"2016-05-19 01:00:48.000000000","message":"Why you are copy pasting this method? You are doing this already second time...\nI already ask you not to copy paste it...\n\nI created patch https://review.openstack.org/#/c/318392/","commit_id":"d826a66b0183697c846efedb89e987e2767de289"},{"author":{"_account_id":6172,"name":"Boris Pavlovic","email":"boris@pavlovic.me","username":"boris-42"},"change_message_id":"01d5c3757ae0e94a2754c2c51bafeef5e77ad95e","unresolved":false,"context_lines":[{"line_number":52,"context_line":"    LOG \u003d logging.getLogger(__name__)"},{"line_number":53,"context_line":""},{"line_number":54,"context_line":""},{"line_number":55,"context_line":"    @configure(name\u003d\"file-exporter\")"},{"line_number":56,"context_line":"    class FileExporter(exporter.TaskExporter):"},{"line_number":57,"context_line":""},{"line_number":58,"context_line":"        def validate(self):"}],"source_content_type":"text/x-rst","patch_set":4,"id":"bab6814e_eb18d586","line":55,"updated":"2016-05-19 01:00:48.000000000","message":"I don\u0027t like approach of lazy copy pasting of code. \n\nI would rather see a simpler example of task exporter with explanation of what code should be doen in validate() and export() methods. \n\nFor validate it\u0027s important to explain how connectiong string is build (e.g. name_of_plugin://......) and why do you need to validate it. \n\nFor export I would prefer to see what you can do with task_uuid and what is the format of returned data, \n\n+ You can add link to the code of file-exporter for complete sample.","commit_id":"d826a66b0183697c846efedb89e987e2767de289"},{"author":{"_account_id":6172,"name":"Boris Pavlovic","email":"boris@pavlovic.me","username":"boris-42"},"change_message_id":"01d5c3757ae0e94a2754c2c51bafeef5e77ad95e","unresolved":false,"context_lines":[{"line_number":122,"context_line":"^^^^^"},{"line_number":123,"context_line":""},{"line_number":124,"context_line":"Now you may use your plugin through the cli as `rally task export --uuid \u003cuuid\u003e"},{"line_number":125,"context_line":"--connection \u003cconnection_string\u003e`. Instead of \u003cuuid\u003e you need to put rally"},{"line_number":126,"context_line":"task uuid. You may find it in the `rally task list`. Instead of"},{"line_number":127,"context_line":"\u003cconnection_string\u003e we need to put string used to connect to your system in"},{"line_number":128,"context_line":"the following format:"}],"source_content_type":"text/x-rst","patch_set":4,"id":"bab6814e_4e0f6f2e","line":125,"updated":"2016-05-19 01:00:48.000000000","message":"1) I would like to see the link to the description of placement of plugins \n2) I would like to see code snypet with usage and expected output in different cases, e.g. plugin not found, plugin has wrong connections stirng and so on.","commit_id":"d826a66b0183697c846efedb89e987e2767de289"}]}
