)]}'
{"designate_tempest_plugin/tests/resources/pools_yaml/multipools_parser.py":[{"author":{"_account_id":28609,"name":"Arkady Shtempler","email":"ashtempl@redhat.com","username":"ashtempl"},"change_message_id":"d434cf9afaee1e0b98286a4024ce385406330b1c","unresolved":true,"context_lines":[{"line_number":19,"context_line":"from typing import Optional"},{"line_number":20,"context_line":""},{"line_number":21,"context_line":""},{"line_number":22,"context_line":"# This whole file is provided by Claude.ai"},{"line_number":23,"context_line":""},{"line_number":24,"context_line":""},{"line_number":25,"context_line":"class Pool:"}],"source_content_type":"text/x-python","patch_set":1,"id":"f3898212_9353aa4b","line":22,"range":{"start_line":22,"start_character":0,"end_line":22,"end_character":42},"updated":"2025-03-26 11:27:39.000000000","message":"Some general note, not related to this specific line.\n\nIt seems like this directory: https://github.com/openstack/designate-tempest-plugin/tree/master/designate_tempest_plugin/tests/resources/pools_yaml was created to include different types of pool *.yamls needed for tests, so I\u0027m curious if having this python script \"multipools_parser.py\" here is a good idea.\nMaybe creating aditional folder here (multipool_parser): https://github.com/openstack/designate-tempest-plugin/tree/master/designate_tempest_plugin/services and putting this script there will make sense.","commit_id":"ff1e98387809eb72e3a83b7ee060e9585d3bb895"},{"author":{"_account_id":31664,"name":"Omer Schwartz","email":"oschwart@redhat.com","username":"oschwart"},"change_message_id":"856ea9c3d42413f78c6773901a15d3683d7129c4","unresolved":true,"context_lines":[{"line_number":19,"context_line":"from typing import Optional"},{"line_number":20,"context_line":""},{"line_number":21,"context_line":""},{"line_number":22,"context_line":"# This whole file is provided by Claude.ai"},{"line_number":23,"context_line":""},{"line_number":24,"context_line":""},{"line_number":25,"context_line":"class Pool:"}],"source_content_type":"text/x-python","patch_set":1,"id":"bc8810eb_b08bb7a5","line":22,"range":{"start_line":22,"start_character":0,"end_line":22,"end_character":42},"in_reply_to":"f3898212_9353aa4b","updated":"2025-04-02 08:57:52.000000000","message":"I don\u0027t mind moving the parser to another folder, but I don\u0027t know if designate_tempest_plugin/services should be the correct path for it","commit_id":"ff1e98387809eb72e3a83b7ee060e9585d3bb895"},{"author":{"_account_id":28609,"name":"Arkady Shtempler","email":"ashtempl@redhat.com","username":"ashtempl"},"change_message_id":"d434cf9afaee1e0b98286a4024ce385406330b1c","unresolved":true,"context_lines":[{"line_number":95,"context_line":"    \"\"\"Parse the output of \u0027designate-manage pool show_config --all\u0027"},{"line_number":96,"context_line":"    into a MultiPool object."},{"line_number":97,"context_line":"    \"\"\""},{"line_number":98,"context_line":"    # Remove the header lines"},{"line_number":99,"context_line":"    lines \u003d config_output.split(\u0027\\n\u0027)"},{"line_number":100,"context_line":"    yaml_start \u003d 0"},{"line_number":101,"context_line":"    for i, line in enumerate(lines):"},{"line_number":102,"context_line":"        if \"---------\" in line:"},{"line_number":103,"context_line":"            yaml_start \u003d i + 1"},{"line_number":104,"context_line":"            break"},{"line_number":105,"context_line":""},{"line_number":106,"context_line":"    # Join the YAML lines and parse"},{"line_number":107,"context_line":"    yaml_content \u003d \u0027\\n\u0027.join(lines[yaml_start:])"}],"source_content_type":"text/x-python","patch_set":1,"id":"90f3a89b_22b67806","line":104,"range":{"start_line":98,"start_character":0,"end_line":104,"end_character":17},"updated":"2025-03-26 11:27:39.000000000","message":"I think that the better solution to ignore irrelevant lines should be based on valid yaml start line, which is \"- also_notifies: []\"\nI mean reading and ignoring lines until \"- also_notifies: []\" line is found.\nWho knows, maybe at some point in the future \"designate-manage\" tool \"header lines\"\n\n#Pool Configuration:\n#-------------------\n\nwill be changed.","commit_id":"ff1e98387809eb72e3a83b7ee060e9585d3bb895"},{"author":{"_account_id":31664,"name":"Omer Schwartz","email":"oschwart@redhat.com","username":"oschwart"},"change_message_id":"856ea9c3d42413f78c6773901a15d3683d7129c4","unresolved":true,"context_lines":[{"line_number":95,"context_line":"    \"\"\"Parse the output of \u0027designate-manage pool show_config --all\u0027"},{"line_number":96,"context_line":"    into a MultiPool object."},{"line_number":97,"context_line":"    \"\"\""},{"line_number":98,"context_line":"    # Remove the header lines"},{"line_number":99,"context_line":"    lines \u003d config_output.split(\u0027\\n\u0027)"},{"line_number":100,"context_line":"    yaml_start \u003d 0"},{"line_number":101,"context_line":"    for i, line in enumerate(lines):"},{"line_number":102,"context_line":"        if \"---------\" in line:"},{"line_number":103,"context_line":"            yaml_start \u003d i + 1"},{"line_number":104,"context_line":"            break"},{"line_number":105,"context_line":""},{"line_number":106,"context_line":"    # Join the YAML lines and parse"},{"line_number":107,"context_line":"    yaml_content \u003d \u0027\\n\u0027.join(lines[yaml_start:])"}],"source_content_type":"text/x-python","patch_set":1,"id":"1e9c7830_95e78a9f","line":104,"range":{"start_line":98,"start_character":0,"end_line":104,"end_character":17},"in_reply_to":"90f3a89b_22b67806","updated":"2025-04-02 08:57:52.000000000","message":"I thought exactly the same about \"who knows, maybe in the future also_notifies won\u0027t be the first item in the list\"\nwe can\u0027t know what future changes we will make with the designate-manage pool tool, so I\u0027d prefer to leave it this way and change it if necessary.","commit_id":"ff1e98387809eb72e3a83b7ee060e9585d3bb895"},{"author":{"_account_id":28609,"name":"Arkady Shtempler","email":"ashtempl@redhat.com","username":"ashtempl"},"change_message_id":"d434cf9afaee1e0b98286a4024ce385406330b1c","unresolved":true,"context_lines":[{"line_number":105,"context_line":""},{"line_number":106,"context_line":"    # Join the YAML lines and parse"},{"line_number":107,"context_line":"    yaml_content \u003d \u0027\\n\u0027.join(lines[yaml_start:])"},{"line_number":108,"context_line":"    pools_data \u003d yaml.safe_load(yaml_content)"},{"line_number":109,"context_line":""},{"line_number":110,"context_line":"    # If the YAML didn\u0027t parse as a list, try wrapping it"},{"line_number":111,"context_line":"    if not isinstance(pools_data, list):"}],"source_content_type":"text/x-python","patch_set":1,"id":"e53af9d4_46cd6404","line":108,"range":{"start_line":108,"start_character":0,"end_line":108,"end_character":45},"updated":"2025-03-26 11:27:39.000000000","message":"What if for some reason this \"cleaned yaml data\" is failed to be loaded?\nI think that it should have\"try/except\", so that the test won\u0027t fail on parser (unless test logic requires parser to succeed)\n\"I\u0027d say that the \u0027backends check\u0027 is a nice bonus that will hopefully always be running. For example, in terms of \"test_create_zone_per_pool\" there is already assertion here: https://review.opendev.org/c/openstack/designate-tempest-plugin/+/945081/1/designate_tempest_plugin/tests/scenario/v2/test_designate_multipool.py#323 and in fact this is a first good indication that test goes into the right direction, so why failing the whole test latter on parser issue? \nAgree that the test will be missing an important part, but it\u0027s still better than failing the test on parser issue.\n\n\nWe\u0027ll probably need something like this for backends check in the tests\n\nif self.multipools:\n    for nameserver in self.multipools[zone[\u0027pool_id\u0027]].nameservers:\n    ...\n    ...\nelse LOG.warning(\u0027Backend check was skipped... {}\u0027.format(\u003ce_parser_exception\u003e)\u0027)","commit_id":"ff1e98387809eb72e3a83b7ee060e9585d3bb895"},{"author":{"_account_id":31664,"name":"Omer Schwartz","email":"oschwart@redhat.com","username":"oschwart"},"change_message_id":"856ea9c3d42413f78c6773901a15d3683d7129c4","unresolved":true,"context_lines":[{"line_number":105,"context_line":""},{"line_number":106,"context_line":"    # Join the YAML lines and parse"},{"line_number":107,"context_line":"    yaml_content \u003d \u0027\\n\u0027.join(lines[yaml_start:])"},{"line_number":108,"context_line":"    pools_data \u003d yaml.safe_load(yaml_content)"},{"line_number":109,"context_line":""},{"line_number":110,"context_line":"    # If the YAML didn\u0027t parse as a list, try wrapping it"},{"line_number":111,"context_line":"    if not isinstance(pools_data, list):"}],"source_content_type":"text/x-python","patch_set":1,"id":"29e18680_cdd02d91","line":108,"range":{"start_line":108,"start_character":0,"end_line":108,"end_character":45},"in_reply_to":"e53af9d4_46cd6404","updated":"2025-04-02 08:57:52.000000000","message":"I am not sure I understood the comment","commit_id":"ff1e98387809eb72e3a83b7ee060e9585d3bb895"}]}
