)]}'
{"rally/plugins/openstack/context/gnocchi/metrics.py":[{"author":{"_account_id":9545,"name":"Andriy Kurilin","email":"andr.kurilin@gmail.com","username":"akurilin"},"change_message_id":"7b2c87fb9b8e6f6b531fde38abce8024ea6a4b09","unresolved":false,"context_lines":[{"line_number":32,"context_line":"        \"additionalProperties\": False,"},{"line_number":33,"context_line":"        \"properties\": {"},{"line_number":34,"context_line":"            \"all\": {"},{"line_number":35,"context_line":"                \"type\": \"boolean\","},{"line_number":36,"context_line":"            }"},{"line_number":37,"context_line":"        }"},{"line_number":38,"context_line":"    }"}],"source_content_type":"text/x-python","patch_set":6,"id":"bff0334d_3de18fd1","line":35,"range":{"start_line":35,"start_character":15,"end_line":35,"end_character":34},"updated":"2017-04-07 12:40:46.000000000","message":"Now we support \"description\" field in jsonschema which allows print a nice plugin reference page. For example http://rally.readthedocs.io/en/latest/plugins/plugin_reference.html#servers-context\n\nPlease extend the paramater with a small description.","commit_id":"432ade252f8e242760ca7e139682cb4ec81319bc"},{"author":{"_account_id":21143,"name":"Alex Krzos","email":"akrzos@redhat.com","username":"akrzos"},"change_message_id":"09c55f02f632ea6ad55bb5461e356ff5ccec45af","unresolved":false,"context_lines":[{"line_number":32,"context_line":"        \"additionalProperties\": False,"},{"line_number":33,"context_line":"        \"properties\": {"},{"line_number":34,"context_line":"            \"all\": {"},{"line_number":35,"context_line":"                \"type\": \"boolean\","},{"line_number":36,"context_line":"            }"},{"line_number":37,"context_line":"        }"},{"line_number":38,"context_line":"    }"}],"source_content_type":"text/x-python","patch_set":6,"id":"bff0334d_0318ac7e","line":35,"range":{"start_line":35,"start_character":15,"end_line":35,"end_character":34},"in_reply_to":"bff0334d_3de18fd1","updated":"2017-04-07 13:49:28.000000000","message":"Will do.","commit_id":"432ade252f8e242760ca7e139682cb4ec81319bc"},{"author":{"_account_id":9545,"name":"Andriy Kurilin","email":"andr.kurilin@gmail.com","username":"akurilin"},"change_message_id":"7b2c87fb9b8e6f6b531fde38abce8024ea6a4b09","unresolved":false,"context_lines":[{"line_number":40,"context_line":"    @logging.log_task_wrapper(LOG.info,"},{"line_number":41,"context_line":"                              _(\"Enter context: `gnocchi_metric_list`\"))"},{"line_number":42,"context_line":"    def setup(self):"},{"line_number":43,"context_line":"        gnocchi_client \u003d \\"},{"line_number":44,"context_line":"            osclients.Clients(self.context[\"admin\"][\"credential\"]).gnocchi()"},{"line_number":45,"context_line":"        if self.config.get(\"all\"):"},{"line_number":46,"context_line":"            metric_list \u003d gnocchi_client.metric.list()"},{"line_number":47,"context_line":"            self.context[\"metric_ids\"] \u003d [x[\"id\"] for x in metric_list]"},{"line_number":48,"context_line":"            while len(metric_list) \u003e\u003d 1000:"},{"line_number":49,"context_line":"                metric_list \u003d gnocchi_client.metric.list("},{"line_number":50,"context_line":"                    marker\u003dmetric_list[-1][\"id\"])"},{"line_number":51,"context_line":"                self.context[\"metric_ids\"].extend("},{"line_number":52,"context_line":"                    [x[\"id\"] for x in metric_list])"},{"line_number":53,"context_line":"        else:"},{"line_number":54,"context_line":"            self.context[\"metric_ids\"] \u003d \\"},{"line_number":55,"context_line":"                [x[\"id\"] for x in gnocchi_client.metric.list()]"},{"line_number":56,"context_line":"        LOG.debug(\"Total metric_ids: {}\".format("},{"line_number":57,"context_line":"            len(self.context[\"metric_ids\"])))"},{"line_number":58,"context_line":""},{"line_number":59,"context_line":"    @logging.log_task_wrapper(LOG.info,"},{"line_number":60,"context_line":"                              _(\"Exit context: `gnocchi_metric_list`\"))"}],"source_content_type":"text/x-python","patch_set":6,"id":"bff0334d_9df41b88","line":57,"range":{"start_line":43,"start_character":8,"end_line":57,"end_character":45},"updated":"2017-04-07 12:40:46.000000000","message":"should we support \"all\" option by default without other options?!","commit_id":"432ade252f8e242760ca7e139682cb4ec81319bc"},{"author":{"_account_id":21143,"name":"Alex Krzos","email":"akrzos@redhat.com","username":"akrzos"},"change_message_id":"09c55f02f632ea6ad55bb5461e356ff5ccec45af","unresolved":false,"context_lines":[{"line_number":40,"context_line":"    @logging.log_task_wrapper(LOG.info,"},{"line_number":41,"context_line":"                              _(\"Enter context: `gnocchi_metric_list`\"))"},{"line_number":42,"context_line":"    def setup(self):"},{"line_number":43,"context_line":"        gnocchi_client \u003d \\"},{"line_number":44,"context_line":"            osclients.Clients(self.context[\"admin\"][\"credential\"]).gnocchi()"},{"line_number":45,"context_line":"        if self.config.get(\"all\"):"},{"line_number":46,"context_line":"            metric_list \u003d gnocchi_client.metric.list()"},{"line_number":47,"context_line":"            self.context[\"metric_ids\"] \u003d [x[\"id\"] for x in metric_list]"},{"line_number":48,"context_line":"            while len(metric_list) \u003e\u003d 1000:"},{"line_number":49,"context_line":"                metric_list \u003d gnocchi_client.metric.list("},{"line_number":50,"context_line":"                    marker\u003dmetric_list[-1][\"id\"])"},{"line_number":51,"context_line":"                self.context[\"metric_ids\"].extend("},{"line_number":52,"context_line":"                    [x[\"id\"] for x in metric_list])"},{"line_number":53,"context_line":"        else:"},{"line_number":54,"context_line":"            self.context[\"metric_ids\"] \u003d \\"},{"line_number":55,"context_line":"                [x[\"id\"] for x in gnocchi_client.metric.list()]"},{"line_number":56,"context_line":"        LOG.debug(\"Total metric_ids: {}\".format("},{"line_number":57,"context_line":"            len(self.context[\"metric_ids\"])))"},{"line_number":58,"context_line":""},{"line_number":59,"context_line":"    @logging.log_task_wrapper(LOG.info,"},{"line_number":60,"context_line":"                              _(\"Exit context: `gnocchi_metric_list`\"))"}],"source_content_type":"text/x-python","patch_set":6,"id":"bff0334d_431eb470","line":57,"range":{"start_line":43,"start_character":8,"end_line":57,"end_character":45},"in_reply_to":"bff0334d_9df41b88","updated":"2017-04-07 13:49:28.000000000","message":"I agree that \"all\" by default is probably a smarter default.  (Without all by default your limited to whatever paging setting is shipped with your cloud, which is usually a 1000)  \n\nThat means if you run a benchmark without setting to all, you will loop over the first 1000 metrics and only run measures/aggregation over those if you run those scenarios.  Running with all allows the benchmark to go outside the first 1k metric ids and benchmark more metrics. (A more realistic scenario)","commit_id":"432ade252f8e242760ca7e139682cb4ec81319bc"}],"rally/plugins/openstack/scenarios/gnocchi/archive_policy.py":[{"author":{"_account_id":9545,"name":"Andriy Kurilin","email":"andr.kurilin@gmail.com","username":"akurilin"},"change_message_id":"7b2c87fb9b8e6f6b531fde38abce8024ea6a4b09","unresolved":false,"context_lines":[{"line_number":32,"context_line":""},{"line_number":33,"context_line":"@validation.add(\"required_platform\", platform\u003d\"openstack\", admin\u003dTrue)"},{"line_number":34,"context_line":"@validation.required_services(consts.Service.GNOCCHI)"},{"line_number":35,"context_line":"@scenario.configure(name\u003d\"Gnocchi.archive_policy_create\")"},{"line_number":36,"context_line":"class ArchivePolicyCreate(gnocchiutils.GnocchiScenario):"},{"line_number":37,"context_line":""},{"line_number":38,"context_line":"    def run(self):"}],"source_content_type":"text/x-python","patch_set":6,"id":"bff0334d_dd0e233a","line":35,"range":{"start_line":35,"start_character":0,"end_line":35,"end_character":57},"updated":"2017-04-07 12:40:46.000000000","message":"We are on the way to add the feature of postponing cleanup + disaster cleanup for the particular task (there is only one preparation patch left). Please, extend cleanup mechanism[1][2] with gnocchi resources and specify cleanup in `configure` decorator of scenarios\n\n[1] - https://github.com/openstack/rally/blob/master/rally/plugins/openstack/cleanup/resources.py \u003c- resource managers which are used in cleanup\n[2] - https://github.com/openstack/rally/blob/master/tests/ci/osresources.py \u003c- the thing which helps us to check that no resources are left in our jobs","commit_id":"432ade252f8e242760ca7e139682cb4ec81319bc"},{"author":{"_account_id":9545,"name":"Andriy Kurilin","email":"andr.kurilin@gmail.com","username":"akurilin"},"change_message_id":"7b2c87fb9b8e6f6b531fde38abce8024ea6a4b09","unresolved":false,"context_lines":[{"line_number":39,"context_line":"        \"\"\"Create archive policy from Gnocchi client.\"\"\""},{"line_number":40,"context_line":""},{"line_number":41,"context_line":"        name \u003d self.generate_random_name()"},{"line_number":42,"context_line":"        definition \u003d [{\"granularity\": \"0:00:01\", \"timespan\": \"1:00:00\"}]"},{"line_number":43,"context_line":"        aggregation_methods \u003d ["},{"line_number":44,"context_line":"            \"std\", \"count\", \"95pct\", \"min\", \"max\", \"sum\", \"median\", \"mean\"]"},{"line_number":45,"context_line":"        self._archive_policy_create(name, definition, aggregation_methods)"},{"line_number":46,"context_line":""},{"line_number":47,"context_line":""}],"source_content_type":"text/x-python","patch_set":6,"id":"bff0334d_7663bbb2","line":44,"range":{"start_line":42,"start_character":8,"end_line":44,"end_character":75},"updated":"2017-04-07 12:40:46.000000000","message":"should it be configurable?","commit_id":"432ade252f8e242760ca7e139682cb4ec81319bc"},{"author":{"_account_id":21143,"name":"Alex Krzos","email":"akrzos@redhat.com","username":"akrzos"},"change_message_id":"09c55f02f632ea6ad55bb5461e356ff5ccec45af","unresolved":false,"context_lines":[{"line_number":39,"context_line":"        \"\"\"Create archive policy from Gnocchi client.\"\"\""},{"line_number":40,"context_line":""},{"line_number":41,"context_line":"        name \u003d self.generate_random_name()"},{"line_number":42,"context_line":"        definition \u003d [{\"granularity\": \"0:00:01\", \"timespan\": \"1:00:00\"}]"},{"line_number":43,"context_line":"        aggregation_methods \u003d ["},{"line_number":44,"context_line":"            \"std\", \"count\", \"95pct\", \"min\", \"max\", \"sum\", \"median\", \"mean\"]"},{"line_number":45,"context_line":"        self._archive_policy_create(name, definition, aggregation_methods)"},{"line_number":46,"context_line":""},{"line_number":47,"context_line":""}],"source_content_type":"text/x-python","patch_set":6,"id":"bff0334d_8e3183ef","line":44,"range":{"start_line":42,"start_character":8,"end_line":44,"end_character":75},"in_reply_to":"bff0334d_7663bbb2","updated":"2017-04-07 13:49:28.000000000","message":"Yes this should, I was a bit lazy here and will add those options, just anxious to see some of these benchmarks get in. :)","commit_id":"432ade252f8e242760ca7e139682cb4ec81319bc"}],"rally/plugins/openstack/scenarios/gnocchi/utils.py":[{"author":{"_account_id":9545,"name":"Andriy Kurilin","email":"andr.kurilin@gmail.com","username":"akurilin"},"change_message_id":"7b2c87fb9b8e6f6b531fde38abce8024ea6a4b09","unresolved":false,"context_lines":[{"line_number":17,"context_line":"import uuid"},{"line_number":18,"context_line":""},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"class GnocchiScenario(scenario.OpenStackScenario):"},{"line_number":21,"context_line":"    \"\"\"Base class for Gnocchi scenarios with basic atomic actions.\"\"\""},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"    @atomic.action_timer(\"gnocchi.archive_policy_create\")"}],"source_content_type":"text/x-python","patch_set":6,"id":"bff0334d_9d93fbfa","line":20,"updated":"2017-04-07 12:40:46.000000000","message":"I wonder if all gnocchi APIs require admin user. Do they?","commit_id":"432ade252f8e242760ca7e139682cb4ec81319bc"}]}
