)]}'
{".zuul.yaml":[{"author":{"_account_id":28609,"name":"Arkady Shtempler","email":"ashtempl@redhat.com","username":"ashtempl"},"change_message_id":"d3e576ac164ad7d913d61b307983121b3f601fdb","unresolved":true,"context_lines":[{"line_number":25,"context_line":"        test-config:"},{"line_number":26,"context_line":"          \"$TEMPEST_CONFIG\":"},{"line_number":27,"context_line":"            dns_feature_enabled:"},{"line_number":28,"context_line":"              test_multipool_delete: True"},{"line_number":29,"context_line":"      tempest_test_regex: ^designate_tempest_plugin.tests.scenario.v2.test_designate_multipool"},{"line_number":30,"context_line":""},{"line_number":31,"context_line":"- project:"}],"source_content_type":"text/x-yaml","patch_set":41,"id":"33b74f5a_93c57f16","line":28,"range":{"start_line":28,"start_character":14,"end_line":28,"end_character":35},"updated":"2025-03-06 15:30:14.000000000","message":"Can we change \"test_multipool_delete\" to something else?\nIt has a form of test name. When I saw it in https://review.opendev.org/c/openstack/designate-tempest-plugin/+/920653/41/designate_tempest_plugin/config.py#101 my first impression was that it\u0027s used to skip some specific test named \"test_multipool_delete\".","commit_id":"360989ef4aa9c3bdd32a1660476fcb632c9db9ea"}],"/PATCHSET_LEVEL":[{"author":{"_account_id":31664,"name":"Omer Schwartz","email":"oschwart@redhat.com","username":"oschwart"},"change_message_id":"1543246d347245ea771969fb84b7ac9b5d049028","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":5,"id":"7ec9b1e1_b69afbc1","updated":"2024-05-29 17:27:22.000000000","message":"The u/s jobs didn\u0027t fail because the tests were skipped:\n{3} setUpClass (designate_tempest_plugin.tests.scenario.v2.test_designate_manage.DesignateManagePoolTest) ... SKIPPED: designate-manage path was not found. Skipping this test class","commit_id":"7b959d884661eb0e227464056b46d15af760eef5"},{"author":{"_account_id":13252,"name":"Dr. Jens Harbott","display_name":"Jens Harbott (frickler)","email":"frickler@offenerstapel.de","username":"jrosenboom"},"change_message_id":"4f4ad6a1d05380bb4400572b131d6ccef30fa829","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":6,"id":"a7aacd7e_d4c26fac","updated":"2024-06-05 10:05:19.000000000","message":"recheck holding a node for debugging","commit_id":"efc33cd84b5d8180aab0cc9af1a9bb068cbf5786"},{"author":{"_account_id":31664,"name":"Omer Schwartz","email":"oschwart@redhat.com","username":"oschwart"},"change_message_id":"7e7b5a0a043fab80852319794beb2e2775702159","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":21,"id":"040ca39e_cf706cd7","updated":"2024-06-18 15:33:51.000000000","message":"I think those designate-manage tests could be moved to their own directory/something else, as they are not really scenario tests, but also there is no API calling there. Also, maybe we can provide a scheduler filter in that specific new zuul job and start populating those with zones, and then query them. That\u0027s how we could add (at least some) scheduler filters scenario testing.\nIt would be great to receive some feedback and opinions :)","commit_id":"72b824cf5a95eda30c5a157171f36f26f89204ba"},{"author":{"_account_id":31664,"name":"Omer Schwartz","email":"oschwart@redhat.com","username":"oschwart"},"change_message_id":"d529c43269fe76603c3e776318204b068b727f4c","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":27,"id":"c92843ed_b1bfa5c8","updated":"2024-09-25 08:25:51.000000000","message":"recheck designate-bind9-stable-antelope not sure if the failure is related to the patch","commit_id":"bdeff6a5bfb84ede4f7c2554d13fe9f4db60fc8a"},{"author":{"_account_id":11628,"name":"Michael Johnson","email":"johnsomor@gmail.com","username":"johnsom"},"change_message_id":"0493fc886ac5590de8bd88d94f7728d3a9519c5f","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":28,"id":"a345e207_0ba5b40b","updated":"2024-11-26 00:52:54.000000000","message":"I want to discuss this more with you","commit_id":"f3978292c49b24f8e0d2cde055adbd471309fd1b"},{"author":{"_account_id":11628,"name":"Michael Johnson","email":"johnsomor@gmail.com","username":"johnsom"},"change_message_id":"3fbbdeb6d0b1f7e4451315ff68cd6ca16f4a3c78","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":40,"id":"939f99b8_e4ce98c4","updated":"2025-02-27 22:53:41.000000000","message":"Just one comment about dumping the pools file to the devstack logs","commit_id":"976854f1df69e14c050ee270ddca544e7005df89"},{"author":{"_account_id":11628,"name":"Michael Johnson","email":"johnsomor@gmail.com","username":"johnsom"},"change_message_id":"87d7d33ca4071bfe52a680a40dc0c106eae2e291","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":40,"id":"ad391028_746a380f","updated":"2025-02-27 22:44:20.000000000","message":"recheck\nfor logs","commit_id":"976854f1df69e14c050ee270ddca544e7005df89"},{"author":{"_account_id":28609,"name":"Arkady Shtempler","email":"ashtempl@redhat.com","username":"ashtempl"},"change_message_id":"6f4323b03f1f0d35bb25f5068b2f57f90716e61f","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":41,"id":"67587632_588f8a9f","updated":"2025-03-09 16:31:18.000000000","message":"Hi Omer!\n\nThis patch is a great starting point for Multi Pool feature coverage, but I have a few points (see my comments) that aren\u0027t clear to me, that\u0027s why \"-1\" from me :-( \n\nThanks!","commit_id":"360989ef4aa9c3bdd32a1660476fcb632c9db9ea"},{"author":{"_account_id":11628,"name":"Michael Johnson","email":"johnsomor@gmail.com","username":"johnsom"},"change_message_id":"18a8eeb0d5373c938352213ef76da7306a899839","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":41,"id":"a019a720_e107ecb0","updated":"2025-02-28 22:35:23.000000000","message":"LGTM","commit_id":"360989ef4aa9c3bdd32a1660476fcb632c9db9ea"},{"author":{"_account_id":31664,"name":"Omer Schwartz","email":"oschwart@redhat.com","username":"oschwart"},"change_message_id":"c0a47aa4f1a6a044a62520d723b6cc9fdb885bac","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":41,"id":"6d7cef0e_c1d8cfe9","updated":"2025-03-12 15:51:31.000000000","message":"Thanks for reviewing the patch Arkady","commit_id":"360989ef4aa9c3bdd32a1660476fcb632c9db9ea"},{"author":{"_account_id":28609,"name":"Arkady Shtempler","email":"ashtempl@redhat.com","username":"ashtempl"},"change_message_id":"47a788089ecc6d2efce4b1612ca184c540150120","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":44,"id":"012dd9af_50b690ed","updated":"2025-03-16 12:13:43.000000000","message":"I cannot find Tempest test result for \"test_create_zones\". \nThe \"designate-multipool\" gate includes 5 reported tests (6 tests exists):\nhttps://e7eb6024fdea56d333c7-a0ccf3ff1f4fe14d04ade3386dad0d17.ssl.cf5.rackcdn.com/920653/44/check/designate-multipool/028031b/testr_results.html\n\nAlso, test name used in this patch is duplicated, since we already have a test with the same name here: https://github.com/openstack/designate-tempest-plugin/blob/master/designate_tempest_plugin/tests/api/v2/test_zones.py#L71","commit_id":"c1f894bbff258fc37b60439bd2cb9620d66b8d7a"},{"author":{"_account_id":11628,"name":"Michael Johnson","email":"johnsomor@gmail.com","username":"johnsom"},"change_message_id":"1e107ebc7b7c1997b28b461ddaf695d99173a922","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":44,"id":"2a92e86e_e2b80332","updated":"2025-03-14 04:57:50.000000000","message":"Workflow-ing as this has been up for review for a while and is passing tests.","commit_id":"c1f894bbff258fc37b60439bd2cb9620d66b8d7a"},{"author":{"_account_id":11628,"name":"Michael Johnson","email":"johnsomor@gmail.com","username":"johnsom"},"change_message_id":"8e136e53f076356375c86842894127ce99a8fddc","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":44,"id":"8c16044d_ae63699a","updated":"2025-03-13 21:41:35.000000000","message":"recheck\nfip/ptr issue","commit_id":"c1f894bbff258fc37b60439bd2cb9620d66b8d7a"},{"author":{"_account_id":28609,"name":"Arkady Shtempler","email":"ashtempl@redhat.com","username":"ashtempl"},"change_message_id":"c0beb39519c57bbcd64bb329a801f77d5b7587de","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":44,"id":"5fa8b50e_f5332c14","in_reply_to":"012dd9af_50b690ed","updated":"2025-03-16 19:15:06.000000000","message":"OK, I see that \"test_create_zones\" is PASS in \"Add multipool scenario tests\" patch\n(Relation chain)","commit_id":"c1f894bbff258fc37b60439bd2cb9620d66b8d7a"}],"designate_tempest_plugin/tests/api/v2/test_pool.py":[{"author":{"_account_id":11628,"name":"Michael Johnson","email":"johnsomor@gmail.com","username":"johnsom"},"change_message_id":"0493fc886ac5590de8bd88d94f7728d3a9519c5f","unresolved":true,"context_lines":[{"line_number":52,"context_line":"        cls.admin_client \u003d cls.os_admin.dns_v2.PoolClient()"},{"line_number":53,"context_line":""},{"line_number":54,"context_line":"    @decorators.idempotent_id(\u002769257f7c-b3d5-4e1b-998e-0677ad12f125\u0027)"},{"line_number":55,"context_line":"    @testtools.skipIf(CONF.dns_feature_enabled.test_multipool_delete,"},{"line_number":56,"context_line":"                      \u0027Multipools feature is being tested with --delete \u0027"},{"line_number":57,"context_line":"                      \u0027option. It might delete pools that were created in \u0027"},{"line_number":58,"context_line":"                      \u0027other tests.\u0027)"}],"source_content_type":"text/x-python","patch_set":28,"id":"04e2adc5_dcf51b5d","line":55,"updated":"2024-11-26 00:52:54.000000000","message":"I would like to chat more about this.\nIt seems like if the pools get deleted, it\u0027s not just these tests that are going to fail. For example, I see many of the \"fake pools.yaml\" files included in this patch specify powerdns, so if they are used wouldn\u0027t it break the other BIND9 tests?","commit_id":"f3978292c49b24f8e0d2cde055adbd471309fd1b"},{"author":{"_account_id":28609,"name":"Arkady Shtempler","email":"ashtempl@redhat.com","username":"ashtempl"},"change_message_id":"d3e576ac164ad7d913d61b307983121b3f601fdb","unresolved":true,"context_lines":[{"line_number":53,"context_line":""},{"line_number":54,"context_line":"    @decorators.idempotent_id(\u002769257f7c-b3d5-4e1b-998e-0677ad12f125\u0027)"},{"line_number":55,"context_line":"    @testtools.skipIf(CONF.dns_feature_enabled.test_multipool_delete,"},{"line_number":56,"context_line":"                      \u0027Multipools feature is being tested with --delete \u0027"},{"line_number":57,"context_line":"                      \u0027option. It might delete pools that were created in \u0027"},{"line_number":58,"context_line":"                      \u0027other tests.\u0027)"},{"line_number":59,"context_line":"    def test_create_pool(self):"},{"line_number":60,"context_line":"        pool_data \u003d {"},{"line_number":61,"context_line":"                      \"name\": \"Example Pool\","}],"source_content_type":"text/x-python","patch_set":41,"id":"88681623_bcc616a2","line":58,"range":{"start_line":56,"start_character":23,"end_line":58,"end_character":34},"updated":"2025-03-06 15:30:14.000000000","message":"So the point here is that the NEW tests added into \nhttps://review.opendev.org/c/openstack/designate-tempest-plugin/+/920653/41/designate_tempest_plugin/tests/scenario/v2/test_designate_multipool.py are using \"designate-manage\" tool and some of them includes \"--delete\" option.\nIf so, it would be great to rephrase it with something like:\nSome of the new scenario tests (based on \"designate-manage\") are using \"--delete\" option...  to make it more clearly.\nNote - same for the rest of skips like this.","commit_id":"360989ef4aa9c3bdd32a1660476fcb632c9db9ea"}],"designate_tempest_plugin/tests/resources/pools_yaml/pools.yaml":[{"author":{"_account_id":11628,"name":"Michael Johnson","email":"johnsomor@gmail.com","username":"johnsom"},"change_message_id":"0493fc886ac5590de8bd88d94f7728d3a9519c5f","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":28,"id":"17b79259_f34a335b","updated":"2024-11-26 00:52:54.000000000","message":"Maybe this should be labeled fake-single-pools.yaml ?\n\nI am just trying to differentiate it from the other two files.","commit_id":"f3978292c49b24f8e0d2cde055adbd471309fd1b"}],"designate_tempest_plugin/tests/scenario/v2/test_designate_multipool.py":[{"author":{"_account_id":11628,"name":"Michael Johnson","email":"johnsomor@gmail.com","username":"johnsom"},"change_message_id":"3fbbdeb6d0b1f7e4451315ff68cd6ca16f4a3c78","unresolved":true,"context_lines":[{"line_number":69,"context_line":"                                       ).decode(\u0027utf-8\u0027)"},{"line_number":70,"context_line":""},{"line_number":71,"context_line":""},{"line_number":72,"context_line":"def get_pools_path(name: str) -\u003e str:"},{"line_number":73,"context_line":"    return os.path.join(resources.path, \u0027pools_yaml\u0027, name)"},{"line_number":74,"context_line":""},{"line_number":75,"context_line":""}],"source_content_type":"text/x-python","patch_set":40,"id":"324a41c1_d9f68380","line":72,"updated":"2025-02-27 22:53:41.000000000","message":"nit: This should probably be an _get_pools_path","commit_id":"976854f1df69e14c050ee270ddca544e7005df89"},{"author":{"_account_id":31664,"name":"Omer Schwartz","email":"oschwart@redhat.com","username":"oschwart"},"change_message_id":"208becfc575c834bf9d0f2659564a687035c0589","unresolved":false,"context_lines":[{"line_number":69,"context_line":"                                       ).decode(\u0027utf-8\u0027)"},{"line_number":70,"context_line":""},{"line_number":71,"context_line":""},{"line_number":72,"context_line":"def get_pools_path(name: str) -\u003e str:"},{"line_number":73,"context_line":"    return os.path.join(resources.path, \u0027pools_yaml\u0027, name)"},{"line_number":74,"context_line":""},{"line_number":75,"context_line":""}],"source_content_type":"text/x-python","patch_set":40,"id":"d4c3daf6_82e6736d","line":72,"in_reply_to":"324a41c1_d9f68380","updated":"2025-02-28 11:43:19.000000000","message":"Done","commit_id":"976854f1df69e14c050ee270ddca544e7005df89"},{"author":{"_account_id":28609,"name":"Arkady Shtempler","email":"ashtempl@redhat.com","username":"ashtempl"},"change_message_id":"6f4323b03f1f0d35bb25f5068b2f57f90716e61f","unresolved":true,"context_lines":[{"line_number":36,"context_line":"    @classmethod"},{"line_number":37,"context_line":"    def skip_checks(cls) -\u003e None:"},{"line_number":38,"context_line":"        super().skip_checks()"},{"line_number":39,"context_line":"        if CONF.dns_feature_enabled.designate_manage_path:"},{"line_number":40,"context_line":"            cls.designate_manage_cmd \u003d ("},{"line_number":41,"context_line":"                CONF.dns_feature_enabled.designate_manage_path)"},{"line_number":42,"context_line":"        else:"}],"source_content_type":"text/x-python","patch_set":41,"id":"ae1762f4_3daf427b","line":39,"range":{"start_line":39,"start_character":16,"end_line":39,"end_character":35},"updated":"2025-03-09 16:31:18.000000000","message":"I think that creating a new dedicated section for Multi Pool values will make sense, instead of using an existing \"dns_feature_enabled\", which is not the best approach here. \n\nMaybe:\n[designate_dns_multi_pool]\ntest_multipool_delete \u003d True\ndesignate_manage_path \u003d /opt/stack/data/venv/bin/designate-manage\nmultipools_file_patch \u003d /etc/designate/multiple-pools.yaml","commit_id":"360989ef4aa9c3bdd32a1660476fcb632c9db9ea"},{"author":{"_account_id":31664,"name":"Omer Schwartz","email":"oschwart@redhat.com","username":"oschwart"},"change_message_id":"3c7568029b8fbdae3a3019da091c4f9846176da2","unresolved":true,"context_lines":[{"line_number":36,"context_line":"    @classmethod"},{"line_number":37,"context_line":"    def skip_checks(cls) -\u003e None:"},{"line_number":38,"context_line":"        super().skip_checks()"},{"line_number":39,"context_line":"        if CONF.dns_feature_enabled.designate_manage_path:"},{"line_number":40,"context_line":"            cls.designate_manage_cmd \u003d ("},{"line_number":41,"context_line":"                CONF.dns_feature_enabled.designate_manage_path)"},{"line_number":42,"context_line":"        else:"}],"source_content_type":"text/x-python","patch_set":41,"id":"7b43a803_28c34928","line":39,"range":{"start_line":39,"start_character":16,"end_line":39,"end_character":35},"in_reply_to":"63bcb3fd_959cba17","updated":"2025-03-13 10:42:35.000000000","message":"I change that config option from test_multipool_delete to test_multipool_with_delete_option.","commit_id":"360989ef4aa9c3bdd32a1660476fcb632c9db9ea"},{"author":{"_account_id":31664,"name":"Omer Schwartz","email":"oschwart@redhat.com","username":"oschwart"},"change_message_id":"c0a47aa4f1a6a044a62520d723b6cc9fdb885bac","unresolved":true,"context_lines":[{"line_number":36,"context_line":"    @classmethod"},{"line_number":37,"context_line":"    def skip_checks(cls) -\u003e None:"},{"line_number":38,"context_line":"        super().skip_checks()"},{"line_number":39,"context_line":"        if CONF.dns_feature_enabled.designate_manage_path:"},{"line_number":40,"context_line":"            cls.designate_manage_cmd \u003d ("},{"line_number":41,"context_line":"                CONF.dns_feature_enabled.designate_manage_path)"},{"line_number":42,"context_line":"        else:"}],"source_content_type":"text/x-python","patch_set":41,"id":"63bcb3fd_959cba17","line":39,"range":{"start_line":39,"start_character":16,"end_line":39,"end_character":35},"in_reply_to":"ae1762f4_3daf427b","updated":"2025-03-12 15:51:31.000000000","message":"Thanks for suggesting this. We might add more testing config options when we test filters and in my opinion it would be a good time to make that decision.\nRight now we really have one: test_multipool_delete\nI believe both MULTIPOOLS_FILE_PATH and designate_manage_path are implementation details and I don\u0027t believe the end user would like to have it as a config option).\ndesignate_manage_path is added by devstack automatically when designate is being deployed, so the end user doesn\u0027t need to worry about it.","commit_id":"360989ef4aa9c3bdd32a1660476fcb632c9db9ea"},{"author":{"_account_id":28609,"name":"Arkady Shtempler","email":"ashtempl@redhat.com","username":"ashtempl"},"change_message_id":"6f4323b03f1f0d35bb25f5068b2f57f90716e61f","unresolved":true,"context_lines":[{"line_number":64,"context_line":"            commands_list.append(command)"},{"line_number":65,"context_line":"        if args and isinstance(args, tuple):"},{"line_number":66,"context_line":"            commands_list.extend(args[0])"},{"line_number":67,"context_line":"        return subprocess.check_output(commands_list,"},{"line_number":68,"context_line":"                                       stderr\u003dsubprocess.STDOUT"},{"line_number":69,"context_line":"                                       ).decode(\u0027utf-8\u0027)"},{"line_number":70,"context_line":""},{"line_number":71,"context_line":""},{"line_number":72,"context_line":"def _get_pools_path(name: str) -\u003e str:"}],"source_content_type":"text/x-python","patch_set":41,"id":"3ea5b1a2_8fac399c","line":69,"range":{"start_line":67,"start_character":0,"end_line":69,"end_character":56},"updated":"2025-03-09 16:31:18.000000000","message":"This code does nothing with \"stderr\" (stderr+stdout redirect) value, therefore not helpful on debugging in case of failures, for example, I got:\nsubprocess.CalledProcessError: Command \u0027[\u0027/opt/stack/data/venv/bin/designate-manage\u0027, \u0027pool\u0027, \u0027update\u0027, \u0027--file\u0027, \u0027/etc/designate/multiple-pools.yaml\u0027, \u0027--delete\u0027]\u0027 returned non-zero exit status 255.\n\nI think that \"try except\" is kind of must here to handle the errors properly, maybe something like:\ntry:\n    output \u003d subprocess.check_output(\n        commands_list,\n        stderr\u003dsubprocess.STDOUT,\n        text\u003dTrue\n    ).decode(\u0027utf-8\u0027)\n    return output\nexcept subprocess.CalledProcessError as e:\n    LOG.error(e.output)\n \nSo that the \"root cause\" will be at least logged.\nNote: with the above code I got:\nFileNotFoundError: [Errno 2] No such file or directory: \u0027/etc/designate/multiple-pools.yaml\u0027\nthat\u0027s more informative than just: \"returned non-zero exit status 255\"","commit_id":"360989ef4aa9c3bdd32a1660476fcb632c9db9ea"},{"author":{"_account_id":31664,"name":"Omer Schwartz","email":"oschwart@redhat.com","username":"oschwart"},"change_message_id":"c0a47aa4f1a6a044a62520d723b6cc9fdb885bac","unresolved":true,"context_lines":[{"line_number":64,"context_line":"            commands_list.append(command)"},{"line_number":65,"context_line":"        if args and isinstance(args, tuple):"},{"line_number":66,"context_line":"            commands_list.extend(args[0])"},{"line_number":67,"context_line":"        return subprocess.check_output(commands_list,"},{"line_number":68,"context_line":"                                       stderr\u003dsubprocess.STDOUT"},{"line_number":69,"context_line":"                                       ).decode(\u0027utf-8\u0027)"},{"line_number":70,"context_line":""},{"line_number":71,"context_line":""},{"line_number":72,"context_line":"def _get_pools_path(name: str) -\u003e str:"}],"source_content_type":"text/x-python","patch_set":41,"id":"fd5e6b71_85904a03","line":69,"range":{"start_line":67,"start_character":0,"end_line":69,"end_character":56},"in_reply_to":"3ea5b1a2_8fac399c","updated":"2025-03-12 15:51:31.000000000","message":"I think that\u0027s a valid point. Thanks.","commit_id":"360989ef4aa9c3bdd32a1660476fcb632c9db9ea"},{"author":{"_account_id":31664,"name":"Omer Schwartz","email":"oschwart@redhat.com","username":"oschwart"},"change_message_id":"3c7568029b8fbdae3a3019da091c4f9846176da2","unresolved":false,"context_lines":[{"line_number":64,"context_line":"            commands_list.append(command)"},{"line_number":65,"context_line":"        if args and isinstance(args, tuple):"},{"line_number":66,"context_line":"            commands_list.extend(args[0])"},{"line_number":67,"context_line":"        return subprocess.check_output(commands_list,"},{"line_number":68,"context_line":"                                       stderr\u003dsubprocess.STDOUT"},{"line_number":69,"context_line":"                                       ).decode(\u0027utf-8\u0027)"},{"line_number":70,"context_line":""},{"line_number":71,"context_line":""},{"line_number":72,"context_line":"def _get_pools_path(name: str) -\u003e str:"}],"source_content_type":"text/x-python","patch_set":41,"id":"4bbbf61f_753bb051","line":69,"range":{"start_line":67,"start_character":0,"end_line":69,"end_character":56},"in_reply_to":"fd5e6b71_85904a03","updated":"2025-03-13 10:42:35.000000000","message":"Done","commit_id":"360989ef4aa9c3bdd32a1660476fcb632c9db9ea"},{"author":{"_account_id":28609,"name":"Arkady Shtempler","email":"ashtempl@redhat.com","username":"ashtempl"},"change_message_id":"6f4323b03f1f0d35bb25f5068b2f57f90716e61f","unresolved":true,"context_lines":[{"line_number":79,"context_line":"                      \u0027other tests.\u0027)"},{"line_number":80,"context_line":"class DesignateManagePoolTest(DesignateManageTest):"},{"line_number":81,"context_line":"    managed_resource \u003d \u0027pool\u0027"},{"line_number":82,"context_line":"    file_attributes_to_num_of_appearances \u003d {  # per each Pool"},{"line_number":83,"context_line":"        \u0027also_notifies:\u0027: 1, \u0027attributes:\u0027: 1, \u0027description:\u0027: 2, \u0027id:\u0027: 1,"},{"line_number":84,"context_line":"        \u0027name:\u0027: 2, \u0027nameservers:\u0027: 1, \u0027ns_records:\u0027: 1, \u0027targets:\u0027: 1"},{"line_number":85,"context_line":"    }"},{"line_number":86,"context_line":"    MULTIPOOLS_FILE_PATH \u003d \"/etc/designate/multiple-pools.yaml\""},{"line_number":87,"context_line":""},{"line_number":88,"context_line":"    @classmethod"}],"source_content_type":"text/x-python","patch_set":41,"id":"af9ab37e_e0397617","line":85,"range":{"start_line":82,"start_character":0,"end_line":85,"end_character":5},"updated":"2025-03-09 16:31:18.000000000","message":"Having all these numbers in \"file_attributes_to_num_of_appearances\" dictionary as hard-coded values looks bad to me :-( \n\nI think that we need to create this dictionary on the fly, by parsing/reading the *.yaml file (MULTIPOOLS_FILE_PATH) and counting the \"target/expected numbers\" values needed for the tests.\nFor example, I got failed tests on my Ubuntu Devstack, because the *.yaml file is a bit different: \ntesttools.matchers._impl.MismatchError: 4 !\u003d 5: description: was supposed to appear 4 times on the designate-manage output, but it appeared 5 times.\ntesttools.matchers._impl.MismatchError: 3 !\u003d 4: also_notifies: was supposed to appear 3 times on the designate-manage output, but it appeared 4 times.\ntesttools.matchers._impl.MismatchError: 4 !\u003d 5: description: was supposed to appear 4 times on the designate-manage output, but it appeared 5 times.\nThe point is that the test results considered by the current code as FAILED tests, are incorrect. Pool update did work as ecxpected and \"show\" prompts vaules that provided in *.yaml file loaded.","commit_id":"360989ef4aa9c3bdd32a1660476fcb632c9db9ea"},{"author":{"_account_id":31664,"name":"Omer Schwartz","email":"oschwart@redhat.com","username":"oschwart"},"change_message_id":"c0a47aa4f1a6a044a62520d723b6cc9fdb885bac","unresolved":true,"context_lines":[{"line_number":79,"context_line":"                      \u0027other tests.\u0027)"},{"line_number":80,"context_line":"class DesignateManagePoolTest(DesignateManageTest):"},{"line_number":81,"context_line":"    managed_resource \u003d \u0027pool\u0027"},{"line_number":82,"context_line":"    file_attributes_to_num_of_appearances \u003d {  # per each Pool"},{"line_number":83,"context_line":"        \u0027also_notifies:\u0027: 1, \u0027attributes:\u0027: 1, \u0027description:\u0027: 2, \u0027id:\u0027: 1,"},{"line_number":84,"context_line":"        \u0027name:\u0027: 2, \u0027nameservers:\u0027: 1, \u0027ns_records:\u0027: 1, \u0027targets:\u0027: 1"},{"line_number":85,"context_line":"    }"},{"line_number":86,"context_line":"    MULTIPOOLS_FILE_PATH \u003d \"/etc/designate/multiple-pools.yaml\""},{"line_number":87,"context_line":""},{"line_number":88,"context_line":"    @classmethod"}],"source_content_type":"text/x-python","patch_set":41,"id":"d880fd7a_fe412bbd","line":85,"range":{"start_line":82,"start_character":0,"end_line":85,"end_character":5},"in_reply_to":"af9ab37e_e0397617","updated":"2025-03-12 15:51:31.000000000","message":"Why is the yaml file different on your Ubuntu host? These tests were running on Ubuntu too:\nnodeset: openstack-single-node-jammy","commit_id":"360989ef4aa9c3bdd32a1660476fcb632c9db9ea"},{"author":{"_account_id":31664,"name":"Omer Schwartz","email":"oschwart@redhat.com","username":"oschwart"},"change_message_id":"c0a47aa4f1a6a044a62520d723b6cc9fdb885bac","unresolved":true,"context_lines":[{"line_number":79,"context_line":"                      \u0027other tests.\u0027)"},{"line_number":80,"context_line":"class DesignateManagePoolTest(DesignateManageTest):"},{"line_number":81,"context_line":"    managed_resource \u003d \u0027pool\u0027"},{"line_number":82,"context_line":"    file_attributes_to_num_of_appearances \u003d {  # per each Pool"},{"line_number":83,"context_line":"        \u0027also_notifies:\u0027: 1, \u0027attributes:\u0027: 1, \u0027description:\u0027: 2, \u0027id:\u0027: 1,"},{"line_number":84,"context_line":"        \u0027name:\u0027: 2, \u0027nameservers:\u0027: 1, \u0027ns_records:\u0027: 1, \u0027targets:\u0027: 1"},{"line_number":85,"context_line":"    }"},{"line_number":86,"context_line":"    MULTIPOOLS_FILE_PATH \u003d \"/etc/designate/multiple-pools.yaml\""},{"line_number":87,"context_line":""},{"line_number":88,"context_line":"    @classmethod"}],"source_content_type":"text/x-python","patch_set":41,"id":"37287b99_359d4be9","line":85,"range":{"start_line":82,"start_character":0,"end_line":85,"end_character":5},"in_reply_to":"af9ab37e_e0397617","updated":"2025-03-12 15:51:31.000000000","message":"why is the yaml file different on your Ubuntu host? these tests run on Ubuntu too:\nnodeset: openstack-single-node-jammy","commit_id":"360989ef4aa9c3bdd32a1660476fcb632c9db9ea"},{"author":{"_account_id":31664,"name":"Omer Schwartz","email":"oschwart@redhat.com","username":"oschwart"},"change_message_id":"3c7568029b8fbdae3a3019da091c4f9846176da2","unresolved":false,"context_lines":[{"line_number":79,"context_line":"                      \u0027other tests.\u0027)"},{"line_number":80,"context_line":"class DesignateManagePoolTest(DesignateManageTest):"},{"line_number":81,"context_line":"    managed_resource \u003d \u0027pool\u0027"},{"line_number":82,"context_line":"    file_attributes_to_num_of_appearances \u003d {  # per each Pool"},{"line_number":83,"context_line":"        \u0027also_notifies:\u0027: 1, \u0027attributes:\u0027: 1, \u0027description:\u0027: 2, \u0027id:\u0027: 1,"},{"line_number":84,"context_line":"        \u0027name:\u0027: 2, \u0027nameservers:\u0027: 1, \u0027ns_records:\u0027: 1, \u0027targets:\u0027: 1"},{"line_number":85,"context_line":"    }"},{"line_number":86,"context_line":"    MULTIPOOLS_FILE_PATH \u003d \"/etc/designate/multiple-pools.yaml\""},{"line_number":87,"context_line":""},{"line_number":88,"context_line":"    @classmethod"}],"source_content_type":"text/x-python","patch_set":41,"id":"d11536f7_03690040","line":85,"range":{"start_line":82,"start_character":0,"end_line":85,"end_character":5},"in_reply_to":"d880fd7a_fe412bbd","updated":"2025-03-13 10:42:35.000000000","message":"It is not that straightforward to count those fields dynamically because some of those contain others. e.g. \"id:\" and \"name:\" appear more times across the yaml files. The test failed in your host because the wrong yaml file was used (these lines were not run on your system:\nhttps://review.opendev.org/c/openstack/designate-tempest-plugin/+/920653/41/devstack/plugin.sh#17)","commit_id":"360989ef4aa9c3bdd32a1660476fcb632c9db9ea"},{"author":{"_account_id":28609,"name":"Arkady Shtempler","email":"ashtempl@redhat.com","username":"ashtempl"},"change_message_id":"6f4323b03f1f0d35bb25f5068b2f57f90716e61f","unresolved":true,"context_lines":[{"line_number":83,"context_line":"        \u0027also_notifies:\u0027: 1, \u0027attributes:\u0027: 1, \u0027description:\u0027: 2, \u0027id:\u0027: 1,"},{"line_number":84,"context_line":"        \u0027name:\u0027: 2, \u0027nameservers:\u0027: 1, \u0027ns_records:\u0027: 1, \u0027targets:\u0027: 1"},{"line_number":85,"context_line":"    }"},{"line_number":86,"context_line":"    MULTIPOOLS_FILE_PATH \u003d \"/etc/designate/multiple-pools.yaml\""},{"line_number":87,"context_line":""},{"line_number":88,"context_line":"    @classmethod"},{"line_number":89,"context_line":"    def resource_setup(cls):"}],"source_content_type":"text/x-python","patch_set":41,"id":"6c76e970_b1bd5ad6","line":86,"range":{"start_line":86,"start_character":0,"end_line":86,"end_character":63},"updated":"2025-03-09 16:31:18.000000000","message":"What\u0027s the reason of having this patch as a class variable and not configurable like as it was already done for \"designate_manage\" for example?\nI mean:\ndesignate_manage_path \u003d /opt/stack/data/venv/bin/designate-manage\nFor example on my Ubuntu devstack patch is difference and I had to:\ncp /opt/stack/designate-tempest-plugin/designate_tempest_plugin/tests/resources/pools_yaml/multiple-pools.yaml /etc/designate/multiple-pools.yaml","commit_id":"360989ef4aa9c3bdd32a1660476fcb632c9db9ea"},{"author":{"_account_id":31664,"name":"Omer Schwartz","email":"oschwart@redhat.com","username":"oschwart"},"change_message_id":"c0a47aa4f1a6a044a62520d723b6cc9fdb885bac","unresolved":false,"context_lines":[{"line_number":83,"context_line":"        \u0027also_notifies:\u0027: 1, \u0027attributes:\u0027: 1, \u0027description:\u0027: 2, \u0027id:\u0027: 1,"},{"line_number":84,"context_line":"        \u0027name:\u0027: 2, \u0027nameservers:\u0027: 1, \u0027ns_records:\u0027: 1, \u0027targets:\u0027: 1"},{"line_number":85,"context_line":"    }"},{"line_number":86,"context_line":"    MULTIPOOLS_FILE_PATH \u003d \"/etc/designate/multiple-pools.yaml\""},{"line_number":87,"context_line":""},{"line_number":88,"context_line":"    @classmethod"},{"line_number":89,"context_line":"    def resource_setup(cls):"}],"source_content_type":"text/x-python","patch_set":41,"id":"eacb5964_93c4825a","line":86,"range":{"start_line":86,"start_character":0,"end_line":86,"end_character":63},"in_reply_to":"6c76e970_b1bd5ad6","updated":"2025-03-12 15:51:31.000000000","message":"I believe both MULTIPOOLS_FILE_PATH and designate_manage_path are implementation details and I don\u0027t believe the end user would like to have it as a config option).\ndesignate_manage_path is added by devstack automatically when designate is being deployed, so the end user doesn\u0027t need to worry about it.\n\nYou had to copy that file because you didn\u0027t deploy your devstack instance with the following line:\nhttps://review.opendev.org/c/openstack/designate-tempest-plugin/+/920653/41/devstack/plugin.sh#17\nwhenever this patch merges, you will just have it there as part of the deployment, if you redeploy your current environment.","commit_id":"360989ef4aa9c3bdd32a1660476fcb632c9db9ea"},{"author":{"_account_id":28609,"name":"Arkady Shtempler","email":"ashtempl@redhat.com","username":"ashtempl"},"change_message_id":"6f4323b03f1f0d35bb25f5068b2f57f90716e61f","unresolved":true,"context_lines":[{"line_number":120,"context_line":"    @decorators.idempotent_id(\u0027ed42f367-e5ba-40d7-a08d-366ad787d21d\u0027)"},{"line_number":121,"context_line":"    def test_pool_show_config(self):"},{"line_number":122,"context_line":"        self._update_pools_file(self.MULTIPOOLS_FILE_PATH)"},{"line_number":123,"context_line":"        pool_config \u003d self._run_designate_manage_pool_command("},{"line_number":124,"context_line":"            command\u003d\u0027show_config\u0027).split(\u0027\\n\\n\u0027)[0]"},{"line_number":125,"context_line":"        self.assertIn(\u0027BIND Pool\u0027, pool_config)"},{"line_number":126,"context_line":""}],"source_content_type":"text/x-python","patch_set":41,"id":"4f3698df_6c2ab191","line":123,"range":{"start_line":123,"start_character":8,"end_line":123,"end_character":19},"updated":"2025-03-09 16:31:18.000000000","message":"I think that we need to ensure that \"designate-manage\" did work as expected (exit status 0), prior to \"assertIn\".\n\nFor example, on Ubuntu Devstack, I got:\nstack@ubuntu-0306-1750:~$ /opt/stack/data/venv/bin/designate-manage pool show_config\n\nPool Configuration:\n\\-------------------\nPool not found\n\n\nSo, in fact the test has failed because \"BIND Pool\" string wasn\u0027t found in \"designate-manage\"output, that is not a pool data at all, it is an error prompted by the tool.","commit_id":"360989ef4aa9c3bdd32a1660476fcb632c9db9ea"},{"author":{"_account_id":31664,"name":"Omer Schwartz","email":"oschwart@redhat.com","username":"oschwart"},"change_message_id":"c0a47aa4f1a6a044a62520d723b6cc9fdb885bac","unresolved":false,"context_lines":[{"line_number":120,"context_line":"    @decorators.idempotent_id(\u0027ed42f367-e5ba-40d7-a08d-366ad787d21d\u0027)"},{"line_number":121,"context_line":"    def test_pool_show_config(self):"},{"line_number":122,"context_line":"        self._update_pools_file(self.MULTIPOOLS_FILE_PATH)"},{"line_number":123,"context_line":"        pool_config \u003d self._run_designate_manage_pool_command("},{"line_number":124,"context_line":"            command\u003d\u0027show_config\u0027).split(\u0027\\n\\n\u0027)[0]"},{"line_number":125,"context_line":"        self.assertIn(\u0027BIND Pool\u0027, pool_config)"},{"line_number":126,"context_line":""}],"source_content_type":"text/x-python","patch_set":41,"id":"521074ff_966bd32a","line":123,"range":{"start_line":123,"start_character":8,"end_line":123,"end_character":19},"in_reply_to":"4f3698df_6c2ab191","updated":"2025-03-12 15:51:31.000000000","message":"those tests were run on an Ubuntu machine:\nnodeset: openstack-single-node-jammy\n\nThis test failed on your env because it wasn\u0027t deployed with the following line:\nhttps://review.opendev.org/c/openstack/designate-tempest-plugin/+/920653/41/devstack/plugin.sh#17\nyou could redeploy your devstack host with that line and the test will pass.","commit_id":"360989ef4aa9c3bdd32a1660476fcb632c9db9ea"},{"author":{"_account_id":28609,"name":"Arkady Shtempler","email":"ashtempl@redhat.com","username":"ashtempl"},"change_message_id":"6f4323b03f1f0d35bb25f5068b2f57f90716e61f","unresolved":true,"context_lines":[{"line_number":122,"context_line":"        self._update_pools_file(self.MULTIPOOLS_FILE_PATH)"},{"line_number":123,"context_line":"        pool_config \u003d self._run_designate_manage_pool_command("},{"line_number":124,"context_line":"            command\u003d\u0027show_config\u0027).split(\u0027\\n\\n\u0027)[0]"},{"line_number":125,"context_line":"        self.assertIn(\u0027BIND Pool\u0027, pool_config)"},{"line_number":126,"context_line":""},{"line_number":127,"context_line":"    @decorators.idempotent_id(\u0027ed42f367-e5ba-40d7-a08d-366ad787d21e\u0027)"},{"line_number":128,"context_line":"    def test_pool_show_config_all(self):"}],"source_content_type":"text/x-python","patch_set":41,"id":"5fed8625_83040da0","line":125,"range":{"start_line":125,"start_character":0,"end_line":125,"end_character":47},"updated":"2025-03-09 16:31:18.000000000","message":"Same as in L85 \n\nThis test fails on Ubuntu Devstack, because it has: \"description: BIND9 Pool-2\" used in *.yaml file and not \"BIND Pool\" as hard-coded it this particular test.\n\nSo, test is considered as FAILED, but this result is incorrect test result.","commit_id":"360989ef4aa9c3bdd32a1660476fcb632c9db9ea"},{"author":{"_account_id":31664,"name":"Omer Schwartz","email":"oschwart@redhat.com","username":"oschwart"},"change_message_id":"c0a47aa4f1a6a044a62520d723b6cc9fdb885bac","unresolved":false,"context_lines":[{"line_number":122,"context_line":"        self._update_pools_file(self.MULTIPOOLS_FILE_PATH)"},{"line_number":123,"context_line":"        pool_config \u003d self._run_designate_manage_pool_command("},{"line_number":124,"context_line":"            command\u003d\u0027show_config\u0027).split(\u0027\\n\\n\u0027)[0]"},{"line_number":125,"context_line":"        self.assertIn(\u0027BIND Pool\u0027, pool_config)"},{"line_number":126,"context_line":""},{"line_number":127,"context_line":"    @decorators.idempotent_id(\u0027ed42f367-e5ba-40d7-a08d-366ad787d21e\u0027)"},{"line_number":128,"context_line":"    def test_pool_show_config_all(self):"}],"source_content_type":"text/x-python","patch_set":41,"id":"5c57355f_feba6ba3","line":125,"range":{"start_line":125,"start_character":0,"end_line":125,"end_character":47},"in_reply_to":"5fed8625_83040da0","updated":"2025-03-12 15:51:31.000000000","message":"those tests were run on an Ubuntu machine:\nnodeset: openstack-single-node-jammy\n\nThis test failed on your env because it wasn\u0027t deployed with the following line:\nhttps://review.opendev.org/c/openstack/designate-tempest-plugin/+/920653/41/devstack/plugin.sh#17\nyou could redeploy your devstack host with that line and the test will pass.","commit_id":"360989ef4aa9c3bdd32a1660476fcb632c9db9ea"}],"devstack/plugin.sh":[{"author":{"_account_id":11628,"name":"Michael Johnson","email":"johnsomor@gmail.com","username":"johnsom"},"change_message_id":"87d7d33ca4071bfe52a680a40dc0c106eae2e291","unresolved":true,"context_lines":[{"line_number":17,"context_line":"    cp /etc/designate/pools.yaml ${POOLS_YAML_PATH}"},{"line_number":18,"context_line":"    sed -i \u0027s/\"pool_level\": \"secondary\"/\"pool_level\": \"tertiary\"/\u0027 ${POOLS_YAML_PATH}"},{"line_number":19,"context_line":"    echo \"multiple-pools.yaml content is:\""},{"line_number":20,"context_line":"    cat ${POOLS_YAML_PATH}"},{"line_number":21,"context_line":"}"},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"if [[ \"$1\" \u003d\u003d \"stack\" ]]; then"}],"source_content_type":"text/x-sh","patch_set":40,"id":"82b31383_43f69f1c","line":20,"updated":"2025-02-27 22:44:20.000000000","message":"We should not do this IMO, it\u0027s more noise in the devstack output. We should instead, for the gate jobs have it collect the file.","commit_id":"976854f1df69e14c050ee270ddca544e7005df89"},{"author":{"_account_id":31664,"name":"Omer Schwartz","email":"oschwart@redhat.com","username":"oschwart"},"change_message_id":"208becfc575c834bf9d0f2659564a687035c0589","unresolved":false,"context_lines":[{"line_number":17,"context_line":"    cp /etc/designate/pools.yaml ${POOLS_YAML_PATH}"},{"line_number":18,"context_line":"    sed -i \u0027s/\"pool_level\": \"secondary\"/\"pool_level\": \"tertiary\"/\u0027 ${POOLS_YAML_PATH}"},{"line_number":19,"context_line":"    echo \"multiple-pools.yaml content is:\""},{"line_number":20,"context_line":"    cat ${POOLS_YAML_PATH}"},{"line_number":21,"context_line":"}"},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"if [[ \"$1\" \u003d\u003d \"stack\" ]]; then"}],"source_content_type":"text/x-sh","patch_set":40,"id":"ccf64faf_56e7c11b","line":20,"in_reply_to":"82b31383_43f69f1c","updated":"2025-02-28 11:43:19.000000000","message":"I agree, I forgot it there as I wanted to make sure I have the correct pools.yaml file there - I got a \"file not found\" or something similar, and I left the print.\nI will remove it and add the logs gathering in a future patch, probably with a variation of that bind9 post task.","commit_id":"976854f1df69e14c050ee270ddca544e7005df89"}]}
