)]}'
{"designate_tempest_plugin/common/constants.py":[{"author":{"_account_id":11628,"name":"Michael Johnson","email":"johnsomor@gmail.com","username":"johnsom"},"change_message_id":"93ab393537b9310399467e008f3ac9d48fb50e35","unresolved":true,"context_lines":[{"line_number":1,"context_line":"# Copyright 2016 Hewlett Packard Enterprise Development Company, L.P."},{"line_number":2,"context_line":"#"},{"line_number":3,"context_line":"# Licensed under the Apache License, Version 2.0 (the \"License\"); you may"},{"line_number":4,"context_line":"# not use this file except in compliance with the License. You may obtain"}],"source_content_type":"text/x-python","patch_set":3,"id":"366bef49_b7407cad","line":1,"updated":"2021-02-03 00:29:39.000000000","message":"This is probably not correct unless you copied this file from somewhere else.\nYou probably want to use Red Hat\u0027s copyright here.","commit_id":"bd685659d10bd04beef0c8769ba4fd1caba20f24"},{"author":{"_account_id":11628,"name":"Michael Johnson","email":"johnsomor@gmail.com","username":"johnsom"},"change_message_id":"ffd3570ddbbb0ba5a89140bcd05493366181fe30","unresolved":true,"context_lines":[{"line_number":1,"context_line":"# Copyright 2021 RedHat|IBM"},{"line_number":2,"context_line":"#"},{"line_number":3,"context_line":"# Licensed under the Apache License, Version 2.0 (the \"License\"); you may"},{"line_number":4,"context_line":"# not use this file except in compliance with the License. You may obtain"}],"source_content_type":"text/x-python","patch_set":16,"id":"3d2fe6d0_f8f2586b","line":1,"range":{"start_line":1,"start_character":17,"end_line":1,"end_character":27},"updated":"2021-04-27 22:48:37.000000000","message":"Check with company policy on this.","commit_id":"63af08da7928c0f991fb3597b597449254ae7545"},{"author":{"_account_id":28609,"name":"Arkady Shtempler","email":"ashtempl@redhat.com","username":"ashtempl"},"change_message_id":"e02b361bd4382c01e80b7f10c9856e075d335b7e","unresolved":false,"context_lines":[{"line_number":1,"context_line":"# Copyright 2021 RedHat|IBM"},{"line_number":2,"context_line":"#"},{"line_number":3,"context_line":"# Licensed under the Apache License, Version 2.0 (the \"License\"); you may"},{"line_number":4,"context_line":"# not use this file except in compliance with the License. You may obtain"}],"source_content_type":"text/x-python","patch_set":16,"id":"4d617e49_afd2e78b","line":1,"range":{"start_line":1,"start_character":17,"end_line":1,"end_character":27},"in_reply_to":"3d2fe6d0_f8f2586b","updated":"2021-04-28 08:33:22.000000000","message":"Done","commit_id":"63af08da7928c0f991fb3597b597449254ae7545"}],"designate_tempest_plugin/services/dns/v2/json/zones_client.py":[{"author":{"_account_id":19298,"name":"Nicolas Bock","email":"nicolas.bock@canonical.com","username":"nicolasbock"},"change_message_id":"46436e31f69190cbe2c02b1cc1b701433db374ae","unresolved":true,"context_lines":[{"line_number":52,"context_line":"            \u0027description\u0027: description or data_utils.rand_name(\u0027test-zone\u0027),"},{"line_number":53,"context_line":"        }"},{"line_number":54,"context_line":"        # If SECONDARY, \"email\" and \"ttl\" cannot be supplied"},{"line_number":55,"context_line":"        if zone_type \u003d\u003d \"SECONDARY\":"},{"line_number":56,"context_line":"            zone[\u0027type\u0027] \u003d zone_type"},{"line_number":57,"context_line":"            del zone[\u0027email\u0027]"},{"line_number":58,"context_line":"            del zone[\u0027ttl\u0027]"}],"source_content_type":"text/x-python","patch_set":1,"id":"bd91aceb_b4bfd70c","line":55,"updated":"2021-02-01 22:50:56.000000000","message":"We are not testing secondary zones at the moment. Since you added the option to test them, could you also add such a test?","commit_id":"f890291c6262389e429c60ecd94ad25b1ee57e4d"},{"author":{"_account_id":28609,"name":"Arkady Shtempler","email":"ashtempl@redhat.com","username":"ashtempl"},"change_message_id":"5333ae9cd30417a62a8fb2a219f088a888b6b1fa","unresolved":false,"context_lines":[{"line_number":52,"context_line":"            \u0027description\u0027: description or data_utils.rand_name(\u0027test-zone\u0027),"},{"line_number":53,"context_line":"        }"},{"line_number":54,"context_line":"        # If SECONDARY, \"email\" and \"ttl\" cannot be supplied"},{"line_number":55,"context_line":"        if zone_type \u003d\u003d \"SECONDARY\":"},{"line_number":56,"context_line":"            zone[\u0027type\u0027] \u003d zone_type"},{"line_number":57,"context_line":"            del zone[\u0027email\u0027]"},{"line_number":58,"context_line":"            del zone[\u0027ttl\u0027]"}],"source_content_type":"text/x-python","patch_set":1,"id":"b8a94526_cc5f8a89","line":55,"in_reply_to":"6e93cbff_830328c7","updated":"2021-02-23 22:04:29.000000000","message":"Done","commit_id":"f890291c6262389e429c60ecd94ad25b1ee57e4d"},{"author":{"_account_id":13252,"name":"Dr. Jens Harbott","display_name":"Jens Harbott (frickler)","email":"frickler@offenerstapel.de","username":"jrosenboom"},"change_message_id":"87fde99efbd90d9bf4bb79816ed8e26bc5ca84a7","unresolved":true,"context_lines":[{"line_number":52,"context_line":"            \u0027description\u0027: description or data_utils.rand_name(\u0027test-zone\u0027),"},{"line_number":53,"context_line":"        }"},{"line_number":54,"context_line":"        # If SECONDARY, \"email\" and \"ttl\" cannot be supplied"},{"line_number":55,"context_line":"        if zone_type \u003d\u003d \"SECONDARY\":"},{"line_number":56,"context_line":"            zone[\u0027type\u0027] \u003d zone_type"},{"line_number":57,"context_line":"            del zone[\u0027email\u0027]"},{"line_number":58,"context_line":"            del zone[\u0027ttl\u0027]"}],"source_content_type":"text/x-python","patch_set":1,"id":"6e93cbff_830328c7","line":55,"in_reply_to":"bd91aceb_b4bfd70c","updated":"2021-02-02 06:07:36.000000000","message":"Or split this part of the change into a separate patch maybe, as it seems unrelated to the test you are adding.","commit_id":"f890291c6262389e429c60ecd94ad25b1ee57e4d"},{"author":{"_account_id":13252,"name":"Dr. Jens Harbott","display_name":"Jens Harbott (frickler)","email":"frickler@offenerstapel.de","username":"jrosenboom"},"change_message_id":"87fde99efbd90d9bf4bb79816ed8e26bc5ca84a7","unresolved":true,"context_lines":[{"line_number":56,"context_line":"            zone[\u0027type\u0027] \u003d zone_type"},{"line_number":57,"context_line":"            del zone[\u0027email\u0027]"},{"line_number":58,"context_line":"            del zone[\u0027ttl\u0027]"},{"line_number":59,"context_line":"        if masters:"},{"line_number":60,"context_line":"            zone[\u0027masters\u0027] \u003d masters"},{"line_number":61,"context_line":"        resp, body \u003d self._create_request(\u0027zones\u0027, zone, params\u003dparams)"},{"line_number":62,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"19618bbf_7aa55096","line":59,"updated":"2021-02-02 06:07:36.000000000","message":"Should this also be under the \"if secondary\" block? What effect would trying to specify masters for a primary have?","commit_id":"f890291c6262389e429c60ecd94ad25b1ee57e4d"},{"author":{"_account_id":13995,"name":"Nate Johnston","email":"nate.johnston@redhat.com","username":"natejohnston"},"change_message_id":"e931571845ef2013d6b26c099e824137305649d4","unresolved":true,"context_lines":[{"line_number":35,"context_line":"            Default: Random Value"},{"line_number":36,"context_line":"        :param description: A description of the zone."},{"line_number":37,"context_line":"            Default: Random Value"},{"line_number":38,"context_line":"        :param zone_type: PRIMARY or SECONDARY"},{"line_number":39,"context_line":"            Default: PRIMARY"},{"line_number":40,"context_line":"        :param masters: List of master nameservers. Required for SECONDARY"},{"line_number":41,"context_line":"            Default: None"}],"source_content_type":"text/x-python","patch_set":2,"id":"c35837c4_0f2933b6","line":38,"updated":"2021-02-02 12:31:10.000000000","message":"Probably good to make a couple of constants you can use here, or find constants elsewhere in the designate code if they already exist.","commit_id":"16b25f1e65802efddb1423e42271815ea2441135"},{"author":{"_account_id":13995,"name":"Nate Johnston","email":"nate.johnston@redhat.com","username":"natejohnston"},"change_message_id":"e931571845ef2013d6b26c099e824137305649d4","unresolved":true,"context_lines":[{"line_number":56,"context_line":"            zone[\u0027type\u0027] \u003d zone_type"},{"line_number":57,"context_line":"            del zone[\u0027email\u0027]"},{"line_number":58,"context_line":"            del zone[\u0027ttl\u0027]"},{"line_number":59,"context_line":"            zone[\u0027masters\u0027] \u003d masters"},{"line_number":60,"context_line":"        resp, body \u003d self._create_request(\u0027zones\u0027, zone, params\u003dparams)"},{"line_number":61,"context_line":""},{"line_number":62,"context_line":"        # Create Zone should Return a HTTP 202"}],"source_content_type":"text/x-python","patch_set":2,"id":"dcf67275_6c88e098","line":59,"range":{"start_line":59,"start_character":0,"end_line":59,"end_character":37},"updated":"2021-02-02 12:31:10.000000000","message":"Perhaps check to make sure masters is not none here and throw an exception if it is?  That could make it easier when someone else comes along to use this elsewhere, since it is a required parameter.","commit_id":"16b25f1e65802efddb1423e42271815ea2441135"},{"author":{"_account_id":11628,"name":"Michael Johnson","email":"johnsomor@gmail.com","username":"johnsom"},"change_message_id":"93ab393537b9310399467e008f3ac9d48fb50e35","unresolved":true,"context_lines":[{"line_number":39,"context_line":"            Default: Random Value"},{"line_number":40,"context_line":"        :param zone_type: PRIMARY or SECONDARY"},{"line_number":41,"context_line":"            Default: PRIMARY"},{"line_number":42,"context_line":"        :param masters: List of master nameservers. Required for SECONDARY"},{"line_number":43,"context_line":"            Default: None"},{"line_number":44,"context_line":"        :param wait_until: Block until the zone reaches the desiered status"},{"line_number":45,"context_line":"        :param params: A Python dict that represents the query paramaters to"}],"source_content_type":"text/x-python","patch_set":3,"id":"7f82b740_f1dedef1","line":42,"range":{"start_line":42,"start_character":32,"end_line":42,"end_character":38},"updated":"2021-02-03 00:29:39.000000000","message":"Since you are using the \"Primary\" terminology elsewhere in this patch (Which is great! Thank you), we should be consistent and use \"primary\" here as well. This way it won\u0027t be yet one more thing we need to update later.","commit_id":"bd685659d10bd04beef0c8769ba4fd1caba20f24"},{"author":{"_account_id":11628,"name":"Michael Johnson","email":"johnsomor@gmail.com","username":"johnsom"},"change_message_id":"93ab393537b9310399467e008f3ac9d48fb50e35","unresolved":true,"context_lines":[{"line_number":63,"context_line":"                    \u0027Error - \"masters\" is mandatory parameter\u0027"},{"line_number":64,"context_line":"                    \u0027 for a SECONDARY zone type\u0027)"},{"line_number":65,"context_line":""},{"line_number":66,"context_line":"            zone[\u0027masters\u0027] \u003d masters"},{"line_number":67,"context_line":"        resp, body \u003d self._create_request(\u0027zones\u0027, zone, params\u003dparams)"},{"line_number":68,"context_line":""},{"line_number":69,"context_line":"        # Create Zone should Return a HTTP 202"}],"source_content_type":"text/x-python","patch_set":3,"id":"a5b89d90_5ea9845f","line":66,"updated":"2021-02-03 00:29:39.000000000","message":"FYI, it\u0027s ok to leave \"zone[\u0027masters\u0027]\" using the old terminology here as the data model has not yet been updated. We can however use \"primaries\" here instead of \"masters\" as mentioned above.","commit_id":"bd685659d10bd04beef0c8769ba4fd1caba20f24"},{"author":{"_account_id":11628,"name":"Michael Johnson","email":"johnsomor@gmail.com","username":"johnsom"},"change_message_id":"de8fbe6d6e2890ba6bf8ecf51e4b3f68de8c0915","unresolved":true,"context_lines":[{"line_number":1,"context_line":"# Copyright 2021 RedHat Hewlett Packard Enterprise Development Company, L.P."},{"line_number":2,"context_line":"#"},{"line_number":3,"context_line":"# Licensed under the Apache License, Version 2.0 (the \"License\"); you may"},{"line_number":4,"context_line":"# not use this file except in compliance with the License. You may obtain"}],"source_content_type":"text/x-python","patch_set":4,"id":"ef209912_facfe8fb","line":1,"updated":"2021-02-03 17:15:36.000000000","message":"We cannot do this. We must leave existing copyrights in place.\nIf you want/need to add a another copyright statement for additions to the file, we add an additional line to the copyright list.","commit_id":"47375e33c2de74d181a80a4f3b99414a1c0a6fed"},{"author":{"_account_id":11628,"name":"Michael Johnson","email":"johnsomor@gmail.com","username":"johnsom"},"change_message_id":"25339081ee80e70ba4d7a527cd28af4aabd204d6","unresolved":true,"context_lines":[{"line_number":1,"context_line":"# Copyright 2021 RedHat Hewlett Packard Enterprise Development Company, L.P."},{"line_number":2,"context_line":"#"},{"line_number":3,"context_line":"# Licensed under the Apache License, Version 2.0 (the \"License\"); you may"},{"line_number":4,"context_line":"# not use this file except in compliance with the License. You may obtain"}],"source_content_type":"text/x-python","patch_set":5,"id":"1431d8da_bd72a8b3","line":1,"updated":"2021-02-03 22:08:40.000000000","message":"This is still a problem","commit_id":"4e1127a703bf1ec405ebe8126a47ed184e4c03f5"},{"author":{"_account_id":28609,"name":"Arkady Shtempler","email":"ashtempl@redhat.com","username":"ashtempl"},"change_message_id":"d73eed16f1358ada1cf1845f30d2653bc29e9af2","unresolved":true,"context_lines":[{"line_number":1,"context_line":"# Copyright 2021 RedHat Hewlett Packard Enterprise Development Company, L.P."},{"line_number":2,"context_line":"#"},{"line_number":3,"context_line":"# Licensed under the Apache License, Version 2.0 (the \"License\"); you may"},{"line_number":4,"context_line":"# not use this file except in compliance with the License. You may obtain"}],"source_content_type":"text/x-python","patch_set":5,"id":"07d34c3d_a02a420d","line":1,"in_reply_to":"1431d8da_bd72a8b3","updated":"2021-02-04 07:31:58.000000000","message":"Yep, it was mistakenly added.","commit_id":"4e1127a703bf1ec405ebe8126a47ed184e4c03f5"}],"designate_tempest_plugin/tests/api/v2/test_zone_tasks.py":[{"author":{"_account_id":11628,"name":"Michael Johnson","email":"johnsomor@gmail.com","username":"johnsom"},"change_message_id":"ffd3570ddbbb0ba5a89140bcd05493366181fe30","unresolved":true,"context_lines":[{"line_number":1,"context_line":"# Copyright 2021 RedHat|IBM"},{"line_number":2,"context_line":"#"},{"line_number":3,"context_line":"# Licensed under the Apache License, Version 2.0 (the \"License\"); you may"},{"line_number":4,"context_line":"# not use this file except in compliance with the License. You may obtain"}],"source_content_type":"text/x-python","patch_set":16,"id":"4aac49a0_ccf2b524","line":1,"range":{"start_line":1,"start_character":17,"end_line":1,"end_character":27},"updated":"2021-04-27 22:48:37.000000000","message":"Please check with company policy.","commit_id":"63af08da7928c0f991fb3597b597449254ae7545"},{"author":{"_account_id":28609,"name":"Arkady Shtempler","email":"ashtempl@redhat.com","username":"ashtempl"},"change_message_id":"e02b361bd4382c01e80b7f10c9856e075d335b7e","unresolved":false,"context_lines":[{"line_number":1,"context_line":"# Copyright 2021 RedHat|IBM"},{"line_number":2,"context_line":"#"},{"line_number":3,"context_line":"# Licensed under the Apache License, Version 2.0 (the \"License\"); you may"},{"line_number":4,"context_line":"# not use this file except in compliance with the License. You may obtain"}],"source_content_type":"text/x-python","patch_set":16,"id":"6620d43a_e0dab7e3","line":1,"range":{"start_line":1,"start_character":17,"end_line":1,"end_character":27},"in_reply_to":"4aac49a0_ccf2b524","updated":"2021-04-28 08:33:22.000000000","message":"Done","commit_id":"63af08da7928c0f991fb3597b597449254ae7545"},{"author":{"_account_id":11628,"name":"Michael Johnson","email":"johnsomor@gmail.com","username":"johnsom"},"change_message_id":"ffd3570ddbbb0ba5a89140bcd05493366181fe30","unresolved":true,"context_lines":[{"line_number":16,"context_line":"from oslo_log import log as logging"},{"line_number":17,"context_line":"from tempest.lib import decorators"},{"line_number":18,"context_line":"from tempest.lib.common.utils import test_utils"},{"line_number":19,"context_line":"from tempest.common.utils import net_utils"},{"line_number":20,"context_line":"from tempest.lib import exceptions as lib_exc"},{"line_number":21,"context_line":""},{"line_number":22,"context_line":""}],"source_content_type":"text/x-python","patch_set":16,"id":"a7a6a728_12255a1a","line":19,"updated":"2021-04-27 22:48:37.000000000","message":"This is not a stable tempest API. We should find an alternative, move this into tempest lib, or petition the QA team to add it. We should not be using it directly per the current tempest stable APIs list.\nLooking at the method, it probably should be moved to tempest lib.\n\nhttps://docs.openstack.org/tempest/latest/plugins/plugin.html#stable-tempest-apis-plugins-may-use","commit_id":"63af08da7928c0f991fb3597b597449254ae7545"},{"author":{"_account_id":28609,"name":"Arkady Shtempler","email":"ashtempl@redhat.com","username":"ashtempl"},"change_message_id":"e02b361bd4382c01e80b7f10c9856e075d335b7e","unresolved":true,"context_lines":[{"line_number":16,"context_line":"from oslo_log import log as logging"},{"line_number":17,"context_line":"from tempest.lib import decorators"},{"line_number":18,"context_line":"from tempest.lib.common.utils import test_utils"},{"line_number":19,"context_line":"from tempest.common.utils import net_utils"},{"line_number":20,"context_line":"from tempest.lib import exceptions as lib_exc"},{"line_number":21,"context_line":""},{"line_number":22,"context_line":""}],"source_content_type":"text/x-python","patch_set":16,"id":"4a3ab1e8_03c37e06","line":19,"in_reply_to":"a7a6a728_12255a1a","updated":"2021-04-28 08:33:22.000000000","message":"Not stable tempest API was removed.\n_ping_ip_address is now using Python os.system","commit_id":"63af08da7928c0f991fb3597b597449254ae7545"},{"author":{"_account_id":11628,"name":"Michael Johnson","email":"johnsomor@gmail.com","username":"johnsom"},"change_message_id":"ffd3570ddbbb0ba5a89140bcd05493366181fe30","unresolved":true,"context_lines":[{"line_number":125,"context_line":""},{"line_number":126,"context_line":"        # Manually trigger_update zone"},{"line_number":127,"context_line":"        with self.assertRaisesDns(lib_exc.ServerFault, \u0027unknown\u0027, 500):"},{"line_number":128,"context_line":"            self.client.trigger_manual_update(sec_zone[\u0027id\u0027])"},{"line_number":129,"context_line":""},{"line_number":130,"context_line":"    @decorators.idempotent_id(\u0027287e2cd0-a0e7-11eb-b962-74e5f9e2a801\u0027)"},{"line_number":131,"context_line":"    def test_zone_abandon(self):"}],"source_content_type":"text/x-python","patch_set":16,"id":"b297c2da_f4f4e13d","line":128,"updated":"2021-04-27 22:48:37.000000000","message":"What is this checking?","commit_id":"63af08da7928c0f991fb3597b597449254ae7545"},{"author":{"_account_id":28609,"name":"Arkady Shtempler","email":"ashtempl@redhat.com","username":"ashtempl"},"change_message_id":"e02b361bd4382c01e80b7f10c9856e075d335b7e","unresolved":true,"context_lines":[{"line_number":125,"context_line":""},{"line_number":126,"context_line":"        # Manually trigger_update zone"},{"line_number":127,"context_line":"        with self.assertRaisesDns(lib_exc.ServerFault, \u0027unknown\u0027, 500):"},{"line_number":128,"context_line":"            self.client.trigger_manual_update(sec_zone[\u0027id\u0027])"},{"line_number":129,"context_line":""},{"line_number":130,"context_line":"    @decorators.idempotent_id(\u0027287e2cd0-a0e7-11eb-b962-74e5f9e2a801\u0027)"},{"line_number":131,"context_line":"    def test_zone_abandon(self):"}],"source_content_type":"text/x-python","patch_set":16,"id":"62fa8da8_cbeeb56f","line":128,"in_reply_to":"b297c2da_f4f4e13d","updated":"2021-04-28 08:33:22.000000000","message":"This test validates that Error 500 is received in case when the nameservers are not available and the manually update is triggered. \nI\u0027ve added LOG.info to make it more clear + moving the test into the \"negative\" scenarios under: class ZoneTasksNegative","commit_id":"63af08da7928c0f991fb3597b597449254ae7545"},{"author":{"_account_id":11628,"name":"Michael Johnson","email":"johnsomor@gmail.com","username":"johnsom"},"change_message_id":"feb6453cfad3cdc680f7da1ae081b115c9019cc7","unresolved":true,"context_lines":[{"line_number":133,"context_line":"    def test_manually_trigger_update_secondary_zone_negative(self):"},{"line_number":134,"context_line":"        # Create a PRIMARY zone"},{"line_number":135,"context_line":"        LOG.info(\u0027Create a PRIMARY zone\u0027)"},{"line_number":136,"context_line":"        pr_zone \u003d self.client.create_zone()[1]"},{"line_number":137,"context_line":"        self.addCleanup(self.wait_zone_delete, self.client, pr_zone[\u0027id\u0027])"},{"line_number":138,"context_line":""},{"line_number":139,"context_line":"        LOG.info(\u0027Ensure we respond with CREATE+PENDING\u0027)"}],"source_content_type":"text/x-python","patch_set":17,"id":"ca76ce64_0b828b1d","line":136,"updated":"2021-04-28 22:15:51.000000000","message":"I wonder if this test would be better if we created a non-existent nameserver on a pool for the test. That way it doesn\u0027t require a pre-condition to run.","commit_id":"a69eeb9ca68cdfe9e9720607cf4a2183f1d174c1"},{"author":{"_account_id":11628,"name":"Michael Johnson","email":"johnsomor@gmail.com","username":"johnsom"},"change_message_id":"4802baf63a7c270f8cfa436bbcc9d93e2296cbf8","unresolved":true,"context_lines":[{"line_number":148,"context_line":"        # Make sure tha the nameservers are not pingable and if it does,"},{"line_number":149,"context_line":"        # skip the test."},{"line_number":150,"context_line":"        for ns in nameservers:"},{"line_number":151,"context_line":"            if self._ping_ip_address(ns, timeout\u003d3):"},{"line_number":152,"context_line":"                raise self.skipException("},{"line_number":153,"context_line":"                    \"Nameserver:{} is pingable, but negative test scenario \""},{"line_number":154,"context_line":"                    \"needs it to be not, therefore test is \""}],"source_content_type":"text/x-python","patch_set":17,"id":"652a668b_50b5463b","line":151,"updated":"2021-04-28 22:14:31.000000000","message":"Ok, I think I understand now what you are trying to test.\nI would recommend using the DNS query client instead of ping as ICMP can be blocked by firewalls or security groups which would give you a false result.\n\nThe DNS query client can be setup to use a single name server and would ensure the proper service is not available: https://github.com/openstack/designate-tempest-plugin/blob/master/designate_tempest_plugin/services/dns/query/query_client.py#L40","commit_id":"a69eeb9ca68cdfe9e9720607cf4a2183f1d174c1"},{"author":{"_account_id":28609,"name":"Arkady Shtempler","email":"ashtempl@redhat.com","username":"ashtempl"},"change_message_id":"0c71a7dcae351c48c49581f90200e19bb5285bfa","unresolved":false,"context_lines":[{"line_number":148,"context_line":"        # Make sure tha the nameservers are not pingable and if it does,"},{"line_number":149,"context_line":"        # skip the test."},{"line_number":150,"context_line":"        for ns in nameservers:"},{"line_number":151,"context_line":"            if self._ping_ip_address(ns, timeout\u003d3):"},{"line_number":152,"context_line":"                raise self.skipException("},{"line_number":153,"context_line":"                    \"Nameserver:{} is pingable, but negative test scenario \""},{"line_number":154,"context_line":"                    \"needs it to be not, therefore test is \""}],"source_content_type":"text/x-python","patch_set":17,"id":"ff3b35c7_d52a3ba0","line":151,"in_reply_to":"652a668b_50b5463b","updated":"2021-04-29 14:05:46.000000000","message":"Done","commit_id":"a69eeb9ca68cdfe9e9720607cf4a2183f1d174c1"},{"author":{"_account_id":11628,"name":"Michael Johnson","email":"johnsomor@gmail.com","username":"johnsom"},"change_message_id":"44392a43ce78ce17c7a972351fe432ba2d75be1e","unresolved":true,"context_lines":[{"line_number":127,"context_line":"        ns_obj \u003d SingleQueryClient(nameserver, query_timeout)"},{"line_number":128,"context_line":"        try:"},{"line_number":129,"context_line":"            ns_obj.query(zone_name, zone_type)"},{"line_number":130,"context_line":"            query_succeded"},{"line_number":131,"context_line":"        except gaierror as e:"},{"line_number":132,"context_line":"            LOG.info(\u0027Function \"_query_nameserver\" failed with:{} \u0027.format(e))"},{"line_number":133,"context_line":"        return query_succeded"}],"source_content_type":"text/x-python","patch_set":18,"id":"71cbbfe4_9a2be7b2","line":130,"updated":"2021-04-29 18:30:28.000000000","message":"Did you want to set this to true here?","commit_id":"461b66df16430abf4ea8ac12a6258d439729f1ab"},{"author":{"_account_id":28609,"name":"Arkady Shtempler","email":"ashtempl@redhat.com","username":"ashtempl"},"change_message_id":"f44d941640aac4076b3b08d21f09b786b8e96bf5","unresolved":true,"context_lines":[{"line_number":127,"context_line":"        ns_obj \u003d SingleQueryClient(nameserver, query_timeout)"},{"line_number":128,"context_line":"        try:"},{"line_number":129,"context_line":"            ns_obj.query(zone_name, zone_type)"},{"line_number":130,"context_line":"            query_succeded"},{"line_number":131,"context_line":"        except gaierror as e:"},{"line_number":132,"context_line":"            LOG.info(\u0027Function \"_query_nameserver\" failed with:{} \u0027.format(e))"},{"line_number":133,"context_line":"        return query_succeded"}],"source_content_type":"text/x-python","patch_set":18,"id":"fa067e23_75ec8d34","line":130,"in_reply_to":"71cbbfe4_9a2be7b2","updated":"2021-04-29 19:13:26.000000000","message":"Yes definitely, I wanted this one to be True here.\nThat\u0027s was the point, at least in my mind 😊\nIt\u0027s strange that I didn\u0027t get PEP8 warning or something about that.\nGood catch, thanks!","commit_id":"461b66df16430abf4ea8ac12a6258d439729f1ab"}],"designate_tempest_plugin/tests/api/v2/test_zones.py":[{"author":{"_account_id":13252,"name":"Dr. Jens Harbott","display_name":"Jens Harbott (frickler)","email":"frickler@offenerstapel.de","username":"jrosenboom"},"change_message_id":"87fde99efbd90d9bf4bb79816ed8e26bc5ca84a7","unresolved":true,"context_lines":[{"line_number":123,"context_line":"        _, zone \u003d self.client.create_zone()"},{"line_number":124,"context_line":"        self.addCleanup(self.wait_zone_delete, self.client, zone[\u0027id\u0027])"},{"line_number":125,"context_line":"        _, body \u003d self.client.show_zone_nameservers(zone[\u0027id\u0027])"},{"line_number":126,"context_line":"        LOG.info(\u0027Zone nameservers:{}\u0027.format(body))"},{"line_number":127,"context_line":"        self.assertIsNot("},{"line_number":128,"context_line":"            0, len(body[\u0027nameservers\u0027]),"},{"line_number":129,"context_line":"            \"Received list of nameservers shouldn\u0027t be empty\")"}],"source_content_type":"text/x-python","patch_set":1,"id":"6938930d_7d00f8b4","line":126,"updated":"2021-02-02 06:07:36.000000000","message":"Nit: Insert a space after the \":\" for better readability","commit_id":"f890291c6262389e429c60ecd94ad25b1ee57e4d"},{"author":{"_account_id":13252,"name":"Dr. Jens Harbott","display_name":"Jens Harbott (frickler)","email":"frickler@offenerstapel.de","username":"jrosenboom"},"change_message_id":"87fde99efbd90d9bf4bb79816ed8e26bc5ca84a7","unresolved":true,"context_lines":[{"line_number":126,"context_line":"        LOG.info(\u0027Zone nameservers:{}\u0027.format(body))"},{"line_number":127,"context_line":"        self.assertIsNot("},{"line_number":128,"context_line":"            0, len(body[\u0027nameservers\u0027]),"},{"line_number":129,"context_line":"            \"Received list of nameservers shouldn\u0027t be empty\")"},{"line_number":130,"context_line":""},{"line_number":131,"context_line":""},{"line_number":132,"context_line":"class ZonesAdminTest(BaseZonesTest):"}],"source_content_type":"text/x-python","patch_set":1,"id":"8a8ff533_5b1f4f29","line":129,"updated":"2021-02-02 06:07:36.000000000","message":"I\u0027m wondering whether this check is specific enough, will we really get an empty body for no nameservers or would the answer be something like\n\n\"{nameservers: []}\"\n\nwhich would still pass this test?","commit_id":"f890291c6262389e429c60ecd94ad25b1ee57e4d"},{"author":{"_account_id":13995,"name":"Nate Johnston","email":"nate.johnston@redhat.com","username":"natejohnston"},"change_message_id":"e931571845ef2013d6b26c099e824137305649d4","unresolved":true,"context_lines":[{"line_number":155,"context_line":"        pool_nameservers \u003d pool[\u0027ns_records\u0027]"},{"line_number":156,"context_line":"        LOG.info(\u0027Pool nameservers: {}\u0027.format(pool_nameservers))"},{"line_number":157,"context_line":""},{"line_number":158,"context_line":"        # Make sure that pool\u0027s and zone\u0027s Name Serves are same"},{"line_number":159,"context_line":"        self.assertEqual("},{"line_number":160,"context_line":"            sorted(pool_nameservers),"},{"line_number":161,"context_line":"            sorted(zone_nameservers),"}],"source_content_type":"text/x-python","patch_set":2,"id":"ea169c6b_becdc0da","line":158,"range":{"start_line":158,"start_character":48,"end_line":158,"end_character":54},"updated":"2021-02-02 12:31:10.000000000","message":"nit: servers","commit_id":"16b25f1e65802efddb1423e42271815ea2441135"},{"author":{"_account_id":11628,"name":"Michael Johnson","email":"johnsomor@gmail.com","username":"johnsom"},"change_message_id":"93ab393537b9310399467e008f3ac9d48fb50e35","unresolved":true,"context_lines":[{"line_number":140,"context_line":"    def test_get_primary_zone_nameservers(self):"},{"line_number":141,"context_line":"        # Create a zone and get the associated \"pool_id\""},{"line_number":142,"context_line":"        LOG.info(\u0027Create a zone\u0027)"},{"line_number":143,"context_line":"        _, zone \u003d self.client.create_zone()"},{"line_number":144,"context_line":"        zone_pool_id \u003d zone[\u0027pool_id\u0027]"},{"line_number":145,"context_line":"        self.addCleanup(self.wait_zone_delete, self.client, zone[\u0027id\u0027])"},{"line_number":146,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"eaeb4274_e28d9649","line":143,"range":{"start_line":143,"start_character":8,"end_line":143,"end_character":43},"updated":"2021-02-03 00:29:39.000000000","message":"nit: Using \"_\" as a throwaway variable is not a good practice.\n\"_\" has many meanings in python: unused variable, i18n, last value, etc.\nExample: https://github.com/openstack/designate/blob/master/designate/objects/base.py#L19\n\nWhen you can, it is best to index the result instead of using \"_\", for example:\nzone \u003d self.client.create_zone()[1]","commit_id":"bd685659d10bd04beef0c8769ba4fd1caba20f24"},{"author":{"_account_id":11628,"name":"Michael Johnson","email":"johnsomor@gmail.com","username":"johnsom"},"change_message_id":"93ab393537b9310399467e008f3ac9d48fb50e35","unresolved":true,"context_lines":[{"line_number":142,"context_line":"        LOG.info(\u0027Create a zone\u0027)"},{"line_number":143,"context_line":"        _, zone \u003d self.client.create_zone()"},{"line_number":144,"context_line":"        zone_pool_id \u003d zone[\u0027pool_id\u0027]"},{"line_number":145,"context_line":"        self.addCleanup(self.wait_zone_delete, self.client, zone[\u0027id\u0027])"},{"line_number":146,"context_line":""},{"line_number":147,"context_line":"        # Get zone\u0027s Name Servers using dedicated API request"},{"line_number":148,"context_line":"        _, zone_nameservers \u003d self.client.show_zone_nameservers(zone[\u0027id\u0027])"}],"source_content_type":"text/x-python","patch_set":3,"id":"c1856043_ae3a5d9b","line":145,"updated":"2021-02-03 00:29:39.000000000","message":"The \"addCleanup\" call should come directly after the \"create_\" call to make sure the cleanup gets registered should there be an error.\nAs this is written, if for some reason the zone did not have a \"pool_id\", the test would fail and the zone would not get cleaned up.","commit_id":"bd685659d10bd04beef0c8769ba4fd1caba20f24"},{"author":{"_account_id":11628,"name":"Michael Johnson","email":"johnsomor@gmail.com","username":"johnsom"},"change_message_id":"93ab393537b9310399467e008f3ac9d48fb50e35","unresolved":true,"context_lines":[{"line_number":158,"context_line":"        LOG.info(\u0027Pool nameservers: {}\u0027.format(pool_nameservers))"},{"line_number":159,"context_line":""},{"line_number":160,"context_line":"        # Make sure that pool\u0027s and zone\u0027s Name Servers are same"},{"line_number":161,"context_line":"        self.assertEqual("},{"line_number":162,"context_line":"            sorted(pool_nameservers),"},{"line_number":163,"context_line":"            sorted(zone_nameservers),"},{"line_number":164,"context_line":"            \u0027Failed - Pool and Zone nameservers should be the same\u0027)"},{"line_number":165,"context_line":""},{"line_number":166,"context_line":""},{"line_number":167,"context_line":"class ZonesAdminTest(BaseZonesTest):"}],"source_content_type":"text/x-python","patch_set":3,"id":"375db599_996c8622","line":164,"range":{"start_line":161,"start_character":1,"end_line":164,"end_character":68},"updated":"2021-02-03 00:29:39.000000000","message":"Instead of sorting these, you can use self.assertCountEqual","commit_id":"bd685659d10bd04beef0c8769ba4fd1caba20f24"},{"author":{"_account_id":6994,"name":"Michael Chapman","email":"woppin@gmail.com","username":"michaeltchapman"},"change_message_id":"bb420908f2f9f652c95156259d7f6cd1bae3c879","unresolved":true,"context_lines":[{"line_number":67,"context_line":"        # Create a SECONDARY zone"},{"line_number":68,"context_line":"        LOG.info(\u0027Create a SECONDARY zone\u0027)"},{"line_number":69,"context_line":"        zone \u003d self.client.create_zone("},{"line_number":70,"context_line":"            zone_type\u003dconst.SECONDARY_ZONE_TYPE, primaries\u003dnameservers)[1]"},{"line_number":71,"context_line":"        self.addCleanup(self.wait_zone_delete, self.client, zone[\u0027id\u0027])"},{"line_number":72,"context_line":""},{"line_number":73,"context_line":"        LOG.info(\u0027Ensure we respond with CREATE+PENDING\u0027)"}],"source_content_type":"text/x-python","patch_set":10,"id":"32c331b3_370e109e","line":70,"updated":"2021-04-12 06:33:24.000000000","message":"the other tests use this style to grab the body:\n_, zone \u003d self.client.create_zone(\n              zone_type\u003dconst.SECONDARY_ZONE_TYPE, primaries\u003dnameservers)","commit_id":"8c05a43080e14e9806a6e9eda5961f8a96118fd5"},{"author":{"_account_id":28609,"name":"Arkady Shtempler","email":"ashtempl@redhat.com","username":"ashtempl"},"change_message_id":"dc4a6375731cfb8b92970e0348d66c3078e881fe","unresolved":true,"context_lines":[{"line_number":67,"context_line":"        # Create a SECONDARY zone"},{"line_number":68,"context_line":"        LOG.info(\u0027Create a SECONDARY zone\u0027)"},{"line_number":69,"context_line":"        zone \u003d self.client.create_zone("},{"line_number":70,"context_line":"            zone_type\u003dconst.SECONDARY_ZONE_TYPE, primaries\u003dnameservers)[1]"},{"line_number":71,"context_line":"        self.addCleanup(self.wait_zone_delete, self.client, zone[\u0027id\u0027])"},{"line_number":72,"context_line":""},{"line_number":73,"context_line":"        LOG.info(\u0027Ensure we respond with CREATE+PENDING\u0027)"}],"source_content_type":"text/x-python","patch_set":10,"id":"d4185eb2_135cdcec","line":70,"in_reply_to":"32c331b3_370e109e","updated":"2021-04-12 08:07:34.000000000","message":"Yes I\u0027m agree, this is a bit confusing, but we do want to use a syntax used in this patch instead of the old manner as you\u0027ve found and here is why:\nhttps://review.opendev.org/c/openstack/octavia-tempest-plugin/+/777742/4/octavia_tempest_plugin/tests/scenario/v2/test_traffic_ops.py\n\n\nMichael Johnson\nMar 03\nWe don\u0027t use \"_\" as a throw away variable in Octavia. It is a bad practice and leads to errors.\n\"_\" has multiple meanings in python, including being used for I18n. This causes linting failures as well as potential runtime issues.\nThe best practice is to use the index like Arkady did here.\n\n\n\nPlease remove -1 if you agree with the above :-)\n\nThanks!","commit_id":"8c05a43080e14e9806a6e9eda5961f8a96118fd5"},{"author":{"_account_id":6994,"name":"Michael Chapman","email":"woppin@gmail.com","username":"michaeltchapman"},"change_message_id":"bb420908f2f9f652c95156259d7f6cd1bae3c879","unresolved":true,"context_lines":[{"line_number":150,"context_line":"        zone_pool_id \u003d zone[\u0027pool_id\u0027]"},{"line_number":151,"context_line":""},{"line_number":152,"context_line":"        # Get zone\u0027s Name Servers using dedicated API request"},{"line_number":153,"context_line":"        zone_nameservers \u003d self.client.show_zone_nameservers(zone[\u0027id\u0027])[1]"},{"line_number":154,"context_line":"        zone_nameservers \u003d zone_nameservers[\u0027nameservers\u0027]"},{"line_number":155,"context_line":"        LOG.info(\u0027Zone Name Servers are: {}\u0027.format(zone_nameservers))"},{"line_number":156,"context_line":"        self.assertIsNot("}],"source_content_type":"text/x-python","patch_set":10,"id":"061d6ffa_0d570b64","line":153,"updated":"2021-04-12 06:33:24.000000000","message":"same as above","commit_id":"8c05a43080e14e9806a6e9eda5961f8a96118fd5"},{"author":{"_account_id":6994,"name":"Michael Chapman","email":"woppin@gmail.com","username":"michaeltchapman"},"change_message_id":"bb420908f2f9f652c95156259d7f6cd1bae3c879","unresolved":true,"context_lines":[{"line_number":158,"context_line":"            \"Failed - received list of nameservers shouldn\u0027t be empty\")"},{"line_number":159,"context_line":""},{"line_number":160,"context_line":"        # Use \"pool_id\" to get the Name Servers used"},{"line_number":161,"context_line":"        pool \u003d self.pool_client.show_pool(zone_pool_id)[1]"},{"line_number":162,"context_line":"        pool_nameservers \u003d pool[\u0027ns_records\u0027]"},{"line_number":163,"context_line":"        LOG.info(\u0027Pool nameservers: {}\u0027.format(pool_nameservers))"},{"line_number":164,"context_line":""}],"source_content_type":"text/x-python","patch_set":10,"id":"7b7ffbd7_af75216e","line":161,"updated":"2021-04-12 06:33:24.000000000","message":"same as above","commit_id":"8c05a43080e14e9806a6e9eda5961f8a96118fd5"}]}
