)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":27900,"name":"Artem Goncharov","email":"artem.goncharov@gmail.com","username":"gtema"},"change_message_id":"138fd6834fc54bfd32ae348c83417db2ea6f009c","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"1f02bc06_3a145d57","updated":"2022-07-15 16:28:11.000000000","message":"Documentation should be also added (https://opendev.org/openstack/openstacksdk/raw/branch/master/doc/source/user/proxies/workflow.rst and https://opendev.org/openstack/openstacksdk/src/branch/master/doc/source/user/resources/workflow/v2)","commit_id":"7940acc883ccf50fc2ab80c57e77387147739b19"},{"author":{"_account_id":27900,"name":"Artem Goncharov","email":"artem.goncharov@gmail.com","username":"gtema"},"change_message_id":"ee49062d1bfe126f5c2942cc965edbe402912eec","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":5,"id":"4f251034_b4801523","updated":"2022-09-09 12:09:34.000000000","message":"few remaining nits","commit_id":"8febd59ddfe211062baa1fb12420c03b9768f085"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"78ac622d53a79fd6a139ecbb6e7a7be9e45447d9","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":6,"id":"234b2ed6_0ce17b35","updated":"2022-10-19 10:44:53.000000000","message":"Two small nits but this looks pretty good. Can you add a release note?","commit_id":"41a9c84adeffd81c342e3ec15bc390deda2f4ac2"}],"openstack/tests/unit/workflow/test_cron_trigger.py":[{"author":{"_account_id":27900,"name":"Artem Goncharov","email":"artem.goncharov@gmail.com","username":"gtema"},"change_message_id":"ee49062d1bfe126f5c2942cc965edbe402912eec","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":5,"id":"31a01227_edd0b4c3","line":67,"updated":"2022-09-09 12:09:34.000000000","message":"you added real lot query parameters. Please add corresponding verification (i.e. like in https://opendev.org/openstack/openstacksdk/src/branch/master/openstack/tests/unit/compute/v2/test_hypervisor.py#L94)","commit_id":"8febd59ddfe211062baa1fb12420c03b9768f085"},{"author":{"_account_id":34653,"name":"Danila Balagansky","email":"dbalagansky@me.com","username":"dbalagansky"},"change_message_id":"7d1294cdf9945a610a26442103eece9582ad9c16","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":5,"id":"209582d2_a9800515","line":67,"in_reply_to":"31a01227_edd0b4c3","updated":"2022-10-06 12:18:08.000000000","message":"Ack","commit_id":"8febd59ddfe211062baa1fb12420c03b9768f085"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"78ac622d53a79fd6a139ecbb6e7a7be9e45447d9","unresolved":true,"context_lines":[{"line_number":37,"context_line":""},{"line_number":38,"context_line":"class TestCronTrigger(base.TestCase):"},{"line_number":39,"context_line":""},{"line_number":40,"context_line":"    def setUp(self):"},{"line_number":41,"context_line":"        super(TestCronTrigger, self).setUp()"},{"line_number":42,"context_line":""},{"line_number":43,"context_line":"    def test_basic(self):"},{"line_number":44,"context_line":"        sot \u003d cron_trigger.CronTrigger()"}],"source_content_type":"text/x-python","patch_set":6,"id":"9985c53d_5447d689","line":41,"range":{"start_line":40,"start_character":0,"end_line":41,"end_character":44},"updated":"2022-10-19 10:44:53.000000000","message":"This isn\u0027t necessary: you\u0027re simply calling the parent (the default behavior)","commit_id":"41a9c84adeffd81c342e3ec15bc390deda2f4ac2"},{"author":{"_account_id":34653,"name":"Danila Balagansky","email":"dbalagansky@me.com","username":"dbalagansky"},"change_message_id":"98146724207211b5f3ea0c44e5a2b0b32db31014","unresolved":false,"context_lines":[{"line_number":37,"context_line":""},{"line_number":38,"context_line":"class TestCronTrigger(base.TestCase):"},{"line_number":39,"context_line":""},{"line_number":40,"context_line":"    def setUp(self):"},{"line_number":41,"context_line":"        super(TestCronTrigger, self).setUp()"},{"line_number":42,"context_line":""},{"line_number":43,"context_line":"    def test_basic(self):"},{"line_number":44,"context_line":"        sot \u003d cron_trigger.CronTrigger()"}],"source_content_type":"text/x-python","patch_set":6,"id":"750ff938_b7744407","line":41,"range":{"start_line":40,"start_character":0,"end_line":41,"end_character":44},"in_reply_to":"9985c53d_5447d689","updated":"2022-10-19 18:26:12.000000000","message":"Ack","commit_id":"41a9c84adeffd81c342e3ec15bc390deda2f4ac2"}],"openstack/tests/unit/workflow/v2/test_proxy.py":[{"author":{"_account_id":27900,"name":"Artem Goncharov","email":"artem.goncharov@gmail.com","username":"gtema"},"change_message_id":"ee49062d1bfe126f5c2942cc965edbe402912eec","unresolved":true,"context_lines":[{"line_number":30,"context_line":"        self.verify_list(self.proxy.executions,"},{"line_number":31,"context_line":"                         execution.Execution)"},{"line_number":32,"context_line":""},{"line_number":33,"context_line":"    def test_cron_triggers(self):"},{"line_number":34,"context_line":"        self.verify_list(self.proxy.cron_triggers,"},{"line_number":35,"context_line":"                         cron_trigger.CronTrigger)"},{"line_number":36,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"a87dab59_28887d0c","line":33,"updated":"2022-09-09 12:09:34.000000000","message":"Please create a new test class with new test functions (like in https://opendev.org/openstack/openstacksdk/src/branch/master/openstack/tests/unit/block_storage/v3/test_proxy.py#L150) - this is where we are heading towards","commit_id":"8febd59ddfe211062baa1fb12420c03b9768f085"},{"author":{"_account_id":34653,"name":"Danila Balagansky","email":"dbalagansky@me.com","username":"dbalagansky"},"change_message_id":"7d1294cdf9945a610a26442103eece9582ad9c16","unresolved":false,"context_lines":[{"line_number":30,"context_line":"        self.verify_list(self.proxy.executions,"},{"line_number":31,"context_line":"                         execution.Execution)"},{"line_number":32,"context_line":""},{"line_number":33,"context_line":"    def test_cron_triggers(self):"},{"line_number":34,"context_line":"        self.verify_list(self.proxy.cron_triggers,"},{"line_number":35,"context_line":"                         cron_trigger.CronTrigger)"},{"line_number":36,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"da7eacba_74237db6","line":33,"in_reply_to":"a87dab59_28887d0c","updated":"2022-10-06 12:18:08.000000000","message":"Ack","commit_id":"8febd59ddfe211062baa1fb12420c03b9768f085"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"78ac622d53a79fd6a139ecbb6e7a7be9e45447d9","unresolved":false,"context_lines":[{"line_number":65,"context_line":""},{"line_number":66,"context_line":"class TestCronTriggerProxy(test_proxy_base.TestProxyBase):"},{"line_number":67,"context_line":"    def setUp(self):"},{"line_number":68,"context_line":"        super(TestCronTriggerProxy, self).setUp()"},{"line_number":69,"context_line":"        self.proxy \u003d _proxy.Proxy(self.session)"},{"line_number":70,"context_line":""},{"line_number":71,"context_line":"    def test_cron_triggers(self):"}],"source_content_type":"text/x-python","patch_set":6,"id":"6cfd8740_ad7f3885","line":68,"range":{"start_line":68,"start_character":14,"end_line":68,"end_character":40},"updated":"2022-10-19 10:44:53.000000000","message":"nit: not needed in Python 3","commit_id":"41a9c84adeffd81c342e3ec15bc390deda2f4ac2"}],"openstack/workflow/v2/_proxy.py":[{"author":{"_account_id":27900,"name":"Artem Goncharov","email":"artem.goncharov@gmail.com","username":"gtema"},"change_message_id":"ee49062d1bfe126f5c2942cc965edbe402912eec","unresolved":true,"context_lines":[{"line_number":183,"context_line":"    def get_cron_trigger(self, *attrs):"},{"line_number":184,"context_line":"        \"\"\"Get a cron trigger"},{"line_number":185,"context_line":""},{"line_number":186,"context_line":"        :param cron_trigger: The value can be the name of a cron_trigger or"},{"line_number":187,"context_line":"            :class:`~openstack.workflow.v2.cron_trigger.CronTrigger` instance."},{"line_number":188,"context_line":""},{"line_number":189,"context_line":"        :returns: One :class:`~openstack.workflow.v2.cron_trigger.CronTrigger`"}],"source_content_type":"text/x-python","patch_set":5,"id":"41ffbe77_1329d659","line":186,"updated":"2022-09-09 12:09:34.000000000","message":"method signature does not match docstrings","commit_id":"8febd59ddfe211062baa1fb12420c03b9768f085"},{"author":{"_account_id":34653,"name":"Danila Balagansky","email":"dbalagansky@me.com","username":"dbalagansky"},"change_message_id":"7d1294cdf9945a610a26442103eece9582ad9c16","unresolved":false,"context_lines":[{"line_number":183,"context_line":"    def get_cron_trigger(self, *attrs):"},{"line_number":184,"context_line":"        \"\"\"Get a cron trigger"},{"line_number":185,"context_line":""},{"line_number":186,"context_line":"        :param cron_trigger: The value can be the name of a cron_trigger or"},{"line_number":187,"context_line":"            :class:`~openstack.workflow.v2.cron_trigger.CronTrigger` instance."},{"line_number":188,"context_line":""},{"line_number":189,"context_line":"        :returns: One :class:`~openstack.workflow.v2.cron_trigger.CronTrigger`"}],"source_content_type":"text/x-python","patch_set":5,"id":"26f2b3ec_ed281ba2","line":186,"in_reply_to":"41ffbe77_1329d659","updated":"2022-10-06 12:18:08.000000000","message":"Ack","commit_id":"8febd59ddfe211062baa1fb12420c03b9768f085"},{"author":{"_account_id":27900,"name":"Artem Goncharov","email":"artem.goncharov@gmail.com","username":"gtema"},"change_message_id":"ee49062d1bfe126f5c2942cc965edbe402912eec","unresolved":true,"context_lines":[{"line_number":188,"context_line":""},{"line_number":189,"context_line":"        :returns: One :class:`~openstack.workflow.v2.cron_trigger.CronTrigger`"},{"line_number":190,"context_line":"        :raises: :class:`~openstack.exceptions.ResourceNotFound` when no"},{"line_number":191,"context_line":"            execution matching the criteria could be found."},{"line_number":192,"context_line":"        \"\"\""},{"line_number":193,"context_line":"        return self._get(_cron_trigger.CronTrigger, *attrs)"},{"line_number":194,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"60bb0837_dd01b496","line":191,"updated":"2022-09-09 12:09:34.000000000","message":"execution?","commit_id":"8febd59ddfe211062baa1fb12420c03b9768f085"},{"author":{"_account_id":34653,"name":"Danila Balagansky","email":"dbalagansky@me.com","username":"dbalagansky"},"change_message_id":"7d1294cdf9945a610a26442103eece9582ad9c16","unresolved":false,"context_lines":[{"line_number":188,"context_line":""},{"line_number":189,"context_line":"        :returns: One :class:`~openstack.workflow.v2.cron_trigger.CronTrigger`"},{"line_number":190,"context_line":"        :raises: :class:`~openstack.exceptions.ResourceNotFound` when no"},{"line_number":191,"context_line":"            execution matching the criteria could be found."},{"line_number":192,"context_line":"        \"\"\""},{"line_number":193,"context_line":"        return self._get(_cron_trigger.CronTrigger, *attrs)"},{"line_number":194,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"29ad5b26_d27a5f3d","line":191,"in_reply_to":"60bb0837_dd01b496","updated":"2022-10-06 12:18:08.000000000","message":"Ack","commit_id":"8febd59ddfe211062baa1fb12420c03b9768f085"},{"author":{"_account_id":27900,"name":"Artem Goncharov","email":"artem.goncharov@gmail.com","username":"gtema"},"change_message_id":"ee49062d1bfe126f5c2942cc965edbe402912eec","unresolved":true,"context_lines":[{"line_number":220,"context_line":"            :class:`~openstack.exceptions.ResourceNotFound` will be"},{"line_number":221,"context_line":"            raised when the execution does not exist."},{"line_number":222,"context_line":"            When set to ``True``, no exception will be set when"},{"line_number":223,"context_line":"            attempting to delete a nonexistent execution."},{"line_number":224,"context_line":""},{"line_number":225,"context_line":"        :returns: ``None``"},{"line_number":226,"context_line":"        \"\"\""}],"source_content_type":"text/x-python","patch_set":5,"id":"24f1caae_0b0a48cf","line":223,"updated":"2022-09-09 12:09:34.000000000","message":"again execution? Do I get wrong what it is?","commit_id":"8febd59ddfe211062baa1fb12420c03b9768f085"},{"author":{"_account_id":34653,"name":"Danila Balagansky","email":"dbalagansky@me.com","username":"dbalagansky"},"change_message_id":"7d1294cdf9945a610a26442103eece9582ad9c16","unresolved":false,"context_lines":[{"line_number":220,"context_line":"            :class:`~openstack.exceptions.ResourceNotFound` will be"},{"line_number":221,"context_line":"            raised when the execution does not exist."},{"line_number":222,"context_line":"            When set to ``True``, no exception will be set when"},{"line_number":223,"context_line":"            attempting to delete a nonexistent execution."},{"line_number":224,"context_line":""},{"line_number":225,"context_line":"        :returns: ``None``"},{"line_number":226,"context_line":"        \"\"\""}],"source_content_type":"text/x-python","patch_set":5,"id":"23323cfe_b1278369","line":223,"in_reply_to":"24f1caae_0b0a48cf","updated":"2022-10-06 12:18:08.000000000","message":"Ack. Sorry, I was \"referencing\" execution proxy :)","commit_id":"8febd59ddfe211062baa1fb12420c03b9768f085"}],"openstack/workflow/v2/cron_trigger.py":[{"author":{"_account_id":27900,"name":"Artem Goncharov","email":"artem.goncharov@gmail.com","username":"gtema"},"change_message_id":"138fd6834fc54bfd32ae348c83417db2ea6f009c","unresolved":true,"context_lines":[{"line_number":60,"context_line":"    #: The time at which the workflow was created"},{"line_number":61,"context_line":"    updated_at \u003d resource.Body(\"updated_at\")"},{"line_number":62,"context_line":""},{"line_number":63,"context_line":"    def create(self, session, prepend_key\u003dTrue, base_path\u003dNone):"},{"line_number":64,"context_line":"        request \u003d self._prepare_request(requires_id\u003dFalse,"},{"line_number":65,"context_line":"                                        prepend_key\u003dprepend_key,"},{"line_number":66,"context_line":"                                        base_path\u003dbase_path)"}],"source_content_type":"text/x-python","patch_set":3,"id":"a8e2e443_607e5cca","line":63,"updated":"2022-07-15 16:28:11.000000000","message":"why do you need to overload the function? If I read it correctly only to drop root \"cron_trigger\" tag in the body that we send. Is it like that? \nFrom mistral docs I see it should be there https://docs.openstack.org/mistral/latest/user/rest_api_v2.html#post--v2-cron_triggers but even if that is a doc bug you can override func setting prepend_key\u003dFalse as default and calling \"super\" (similar to https://opendev.org/openstack/openstacksdk/src/branch/master/openstack/accelerator/v2/device_profile.py#L46)","commit_id":"7940acc883ccf50fc2ab80c57e77387147739b19"},{"author":{"_account_id":34653,"name":"Danila Balagansky","email":"dbalagansky@me.com","username":"dbalagansky"},"change_message_id":"55bad34cef5b2073201e5efd6e95b0fd92441335","unresolved":false,"context_lines":[{"line_number":60,"context_line":"    #: The time at which the workflow was created"},{"line_number":61,"context_line":"    updated_at \u003d resource.Body(\"updated_at\")"},{"line_number":62,"context_line":""},{"line_number":63,"context_line":"    def create(self, session, prepend_key\u003dTrue, base_path\u003dNone):"},{"line_number":64,"context_line":"        request \u003d self._prepare_request(requires_id\u003dFalse,"},{"line_number":65,"context_line":"                                        prepend_key\u003dprepend_key,"},{"line_number":66,"context_line":"                                        base_path\u003dbase_path)"}],"source_content_type":"text/x-python","patch_set":3,"id":"3f3fb762_fd2c5f5d","line":63,"in_reply_to":"8b7a01af_8d75d067","updated":"2022-08-02 09:28:18.000000000","message":"Ack","commit_id":"7940acc883ccf50fc2ab80c57e77387147739b19"},{"author":{"_account_id":34653,"name":"Danila Balagansky","email":"dbalagansky@me.com","username":"dbalagansky"},"change_message_id":"28f30cb24b6ac8e097a799289b2aaa6fc74637c1","unresolved":true,"context_lines":[{"line_number":60,"context_line":"    #: The time at which the workflow was created"},{"line_number":61,"context_line":"    updated_at \u003d resource.Body(\"updated_at\")"},{"line_number":62,"context_line":""},{"line_number":63,"context_line":"    def create(self, session, prepend_key\u003dTrue, base_path\u003dNone):"},{"line_number":64,"context_line":"        request \u003d self._prepare_request(requires_id\u003dFalse,"},{"line_number":65,"context_line":"                                        prepend_key\u003dprepend_key,"},{"line_number":66,"context_line":"                                        base_path\u003dbase_path)"}],"source_content_type":"text/x-python","patch_set":3,"id":"8b7a01af_8d75d067","line":63,"in_reply_to":"a8e2e443_607e5cca","updated":"2022-07-18 11:51:55.000000000","message":"I\u0027ve changed it to look like accelerator.\n\nIt doesn\u0027t work without setting prepend_key to False (that is, not overriding this method at all): I\u0027m getting client error \"Invalid input for field/attribute cron_trigger.\".\n\nAs I can see, it\u0027s the same thing for Execution (which I\u0027ve used for reference): docs say it should accept parameter: https://docs.openstack.org/mistral/latest/user/rest_api_v2.html#post--v2-executions, but code is identical to what I\u0027ve submitted in the first place: https://opendev.org/openstack/openstacksdk/src/branch/master/openstack/workflow/v2/execution.py#L55-L66","commit_id":"7940acc883ccf50fc2ab80c57e77387147739b19"}]}
