)]}'
{"designate/backend/impl_ns1.py":[{"author":{"_account_id":20104,"name":"Dmitrii Galkin","display_name":"Dmitry Galkin","email":"galkindmitrii@gmail.com","username":"galkindmitrii"},"change_message_id":"dfa93933fb1ff876fd04d1ff8c65714e494fca29","unresolved":true,"context_lines":[{"line_number":44,"context_line":""},{"line_number":45,"context_line":"    def _check_zone_exists(self, zone):"},{"line_number":46,"context_line":""},{"line_number":47,"context_line":"        getzone \u003d requests.get("},{"line_number":48,"context_line":"            self._build_url(zone),"},{"line_number":49,"context_line":"            headers\u003dself.headers"},{"line_number":50,"context_line":"        )"}],"source_content_type":"text/x-python","patch_set":9,"id":"57e06802_0d744b92","line":47,"updated":"2021-03-03 10:13:08.000000000","message":"This code assumes the remote end always replies.\nWhat if there is requests.exceptions.ConnectionError?","commit_id":"a0bdbde061ad7d0a8ec0829df6b1610733da29d5"},{"author":{"_account_id":33166,"name":"Michael Hood","email":"mhood@ns1.com","username":"mhood-ns1"},"change_message_id":"f0e43a2c7ef7af6209aeae736ef4c351a7d84053","unresolved":false,"context_lines":[{"line_number":44,"context_line":""},{"line_number":45,"context_line":"    def _check_zone_exists(self, zone):"},{"line_number":46,"context_line":""},{"line_number":47,"context_line":"        getzone \u003d requests.get("},{"line_number":48,"context_line":"            self._build_url(zone),"},{"line_number":49,"context_line":"            headers\u003dself.headers"},{"line_number":50,"context_line":"        )"}],"source_content_type":"text/x-python","patch_set":9,"id":"8614e278_190df338","line":47,"in_reply_to":"57e06802_0d744b92","updated":"2021-03-05 16:06:42.000000000","message":"Done","commit_id":"a0bdbde061ad7d0a8ec0829df6b1610733da29d5"},{"author":{"_account_id":20104,"name":"Dmitrii Galkin","display_name":"Dmitry Galkin","email":"galkindmitrii@gmail.com","username":"galkindmitrii"},"change_message_id":"dfa93933fb1ff876fd04d1ff8c65714e494fca29","unresolved":true,"context_lines":[{"line_number":53,"context_line":"    def create_zone(self, context, zone):"},{"line_number":54,"context_line":"        \"\"\"Create a DNS zone\"\"\""},{"line_number":55,"context_line":""},{"line_number":56,"context_line":"        master_host \u003d \"\""},{"line_number":57,"context_line":"        master_port \u003d 5354"},{"line_number":58,"context_line":""},{"line_number":59,"context_line":"        # get only first master in case of multiple. NS1 dns supports only 1"}],"source_content_type":"text/x-python","patch_set":9,"id":"aa272c57_6536d577","line":56,"updated":"2021-03-03 10:13:08.000000000","message":"what\u0027s the exact purpose of this being set to empty string?","commit_id":"a0bdbde061ad7d0a8ec0829df6b1610733da29d5"},{"author":{"_account_id":33166,"name":"Michael Hood","email":"mhood@ns1.com","username":"mhood-ns1"},"change_message_id":"f0e43a2c7ef7af6209aeae736ef4c351a7d84053","unresolved":false,"context_lines":[{"line_number":53,"context_line":"    def create_zone(self, context, zone):"},{"line_number":54,"context_line":"        \"\"\"Create a DNS zone\"\"\""},{"line_number":55,"context_line":""},{"line_number":56,"context_line":"        master_host \u003d \"\""},{"line_number":57,"context_line":"        master_port \u003d 5354"},{"line_number":58,"context_line":""},{"line_number":59,"context_line":"        # get only first master in case of multiple. NS1 dns supports only 1"}],"source_content_type":"text/x-python","patch_set":9,"id":"7fd6f690_a4bb9387","line":56,"in_reply_to":"aa272c57_6536d577","updated":"2021-03-05 16:06:42.000000000","message":"Done","commit_id":"a0bdbde061ad7d0a8ec0829df6b1610733da29d5"},{"author":{"_account_id":20104,"name":"Dmitrii Galkin","display_name":"Dmitry Galkin","email":"galkindmitrii@gmail.com","username":"galkindmitrii"},"change_message_id":"dfa93933fb1ff876fd04d1ff8c65714e494fca29","unresolved":true,"context_lines":[{"line_number":54,"context_line":"        \"\"\"Create a DNS zone\"\"\""},{"line_number":55,"context_line":""},{"line_number":56,"context_line":"        master_host \u003d \"\""},{"line_number":57,"context_line":"        master_port \u003d 5354"},{"line_number":58,"context_line":""},{"line_number":59,"context_line":"        # get only first master in case of multiple. NS1 dns supports only 1"},{"line_number":60,"context_line":"        for master in self.masters:"}],"source_content_type":"text/x-python","patch_set":9,"id":"911671bd_8ef6a6b4","line":57,"updated":"2021-03-03 10:13:08.000000000","message":"Hardcoded mdns port is not ok. See other backends how to use DEFAULT_MDNS_PORT.","commit_id":"a0bdbde061ad7d0a8ec0829df6b1610733da29d5"},{"author":{"_account_id":33166,"name":"Michael Hood","email":"mhood@ns1.com","username":"mhood-ns1"},"change_message_id":"f0e43a2c7ef7af6209aeae736ef4c351a7d84053","unresolved":false,"context_lines":[{"line_number":54,"context_line":"        \"\"\"Create a DNS zone\"\"\""},{"line_number":55,"context_line":""},{"line_number":56,"context_line":"        master_host \u003d \"\""},{"line_number":57,"context_line":"        master_port \u003d 5354"},{"line_number":58,"context_line":""},{"line_number":59,"context_line":"        # get only first master in case of multiple. NS1 dns supports only 1"},{"line_number":60,"context_line":"        for master in self.masters:"}],"source_content_type":"text/x-python","patch_set":9,"id":"e49cbde8_7d09655e","line":57,"in_reply_to":"911671bd_8ef6a6b4","updated":"2021-03-05 16:06:42.000000000","message":"Done","commit_id":"a0bdbde061ad7d0a8ec0829df6b1610733da29d5"},{"author":{"_account_id":20104,"name":"Dmitrii Galkin","display_name":"Dmitry Galkin","email":"galkindmitrii@gmail.com","username":"galkindmitrii"},"change_message_id":"dfa93933fb1ff876fd04d1ff8c65714e494fca29","unresolved":true,"context_lines":[{"line_number":57,"context_line":"        master_port \u003d 5354"},{"line_number":58,"context_line":""},{"line_number":59,"context_line":"        # get only first master in case of multiple. NS1 dns supports only 1"},{"line_number":60,"context_line":"        for master in self.masters:"},{"line_number":61,"context_line":"            master_host \u003d master.host"},{"line_number":62,"context_line":"            master_port \u003d master.port"},{"line_number":63,"context_line":"            break"}],"source_content_type":"text/x-python","patch_set":9,"id":"488e6293_aa303123","line":60,"updated":"2021-03-03 10:13:08.000000000","message":"You don\u0027t need a loop/break to get the first element.","commit_id":"a0bdbde061ad7d0a8ec0829df6b1610733da29d5"},{"author":{"_account_id":33166,"name":"Michael Hood","email":"mhood@ns1.com","username":"mhood-ns1"},"change_message_id":"f0e43a2c7ef7af6209aeae736ef4c351a7d84053","unresolved":false,"context_lines":[{"line_number":57,"context_line":"        master_port \u003d 5354"},{"line_number":58,"context_line":""},{"line_number":59,"context_line":"        # get only first master in case of multiple. NS1 dns supports only 1"},{"line_number":60,"context_line":"        for master in self.masters:"},{"line_number":61,"context_line":"            master_host \u003d master.host"},{"line_number":62,"context_line":"            master_port \u003d master.port"},{"line_number":63,"context_line":"            break"}],"source_content_type":"text/x-python","patch_set":9,"id":"adc75890_c2c5fdf6","line":60,"in_reply_to":"488e6293_aa303123","updated":"2021-03-05 16:06:42.000000000","message":"Done","commit_id":"a0bdbde061ad7d0a8ec0829df6b1610733da29d5"},{"author":{"_account_id":20104,"name":"Dmitrii Galkin","display_name":"Dmitry Galkin","email":"galkindmitrii@gmail.com","username":"galkindmitrii"},"change_message_id":"dfa93933fb1ff876fd04d1ff8c65714e494fca29","unresolved":true,"context_lines":[{"line_number":78,"context_line":"            )"},{"line_number":79,"context_line":""},{"line_number":80,"context_line":"            try:"},{"line_number":81,"context_line":"                self.delete_zone(context, zone)"},{"line_number":82,"context_line":"            except exceptions.Backend:"},{"line_number":83,"context_line":"                LOG.error(\u0027Could not delete pre-existing zone %s\u0027, zone)"},{"line_number":84,"context_line":"                raise"}],"source_content_type":"text/x-python","patch_set":9,"id":"3b5512a4_8e49e61d","line":81,"updated":"2021-03-03 10:13:08.000000000","message":"Are you sure you want to delete a zone to create the same zone?\nOther backends (e.g. Bind) won\u0027t delete a zone if it exists: https://github.com/openstack/designate/blob/master/designate/backend/impl_bind9.py#L100-L106","commit_id":"a0bdbde061ad7d0a8ec0829df6b1610733da29d5"},{"author":{"_account_id":33166,"name":"Michael Hood","email":"mhood@ns1.com","username":"mhood-ns1"},"change_message_id":"f0e43a2c7ef7af6209aeae736ef4c351a7d84053","unresolved":false,"context_lines":[{"line_number":78,"context_line":"            )"},{"line_number":79,"context_line":""},{"line_number":80,"context_line":"            try:"},{"line_number":81,"context_line":"                self.delete_zone(context, zone)"},{"line_number":82,"context_line":"            except exceptions.Backend:"},{"line_number":83,"context_line":"                LOG.error(\u0027Could not delete pre-existing zone %s\u0027, zone)"},{"line_number":84,"context_line":"                raise"}],"source_content_type":"text/x-python","patch_set":9,"id":"85753a28_4d3f6e11","line":81,"in_reply_to":"3b5512a4_8e49e61d","updated":"2021-03-05 16:06:42.000000000","message":"Done","commit_id":"a0bdbde061ad7d0a8ec0829df6b1610733da29d5"}],"devstack/designate_plugins/backend-ns1":[{"author":{"_account_id":22623,"name":"Erik Olof Gunnar Andersson","email":"eandersson@blizzard.com","username":"eoandersson"},"change_message_id":"f67a187329096cee091e45666da523d1ceb06b54","unresolved":true,"context_lines":[{"line_number":80,"context_line":"        #tsigkey_name: testkey"},{"line_number":81,"context_line":"        #tsigkey_hash: hmac-sha512"},{"line_number":82,"context_line":"        #tsigkey_value: 4EJz00m4ZWe005HjLiXRedJbSnCUx5Dt+4wVYsBweG5HKAV6cqSVJ/oem/6mLgDNFAlLP3Jg0npbg1SkP7RMDg\u003d\u003d"},{"line_number":83,"context_line":"        "},{"line_number":84,"context_line":"EOF"},{"line_number":85,"context_line":"}"},{"line_number":86,"context_line":""}],"source_content_type":"application/octet-stream","patch_set":11,"id":"0119a0bb_b937642e","line":83,"updated":"2021-03-06 04:46:40.000000000","message":"Nit: Some extra spaces here too","commit_id":"3423186f49029162121fdd54402476492d4d4e1b"},{"author":{"_account_id":33166,"name":"Michael Hood","email":"mhood@ns1.com","username":"mhood-ns1"},"change_message_id":"2ae291e28ce4b4c7da6dd23cc75f3e05cb4397e3","unresolved":false,"context_lines":[{"line_number":80,"context_line":"        #tsigkey_name: testkey"},{"line_number":81,"context_line":"        #tsigkey_hash: hmac-sha512"},{"line_number":82,"context_line":"        #tsigkey_value: 4EJz00m4ZWe005HjLiXRedJbSnCUx5Dt+4wVYsBweG5HKAV6cqSVJ/oem/6mLgDNFAlLP3Jg0npbg1SkP7RMDg\u003d\u003d"},{"line_number":83,"context_line":"        "},{"line_number":84,"context_line":"EOF"},{"line_number":85,"context_line":"}"},{"line_number":86,"context_line":""}],"source_content_type":"application/octet-stream","patch_set":11,"id":"2e9bc56c_e00b1ce8","line":83,"in_reply_to":"0119a0bb_b937642e","updated":"2021-03-08 18:57:26.000000000","message":"Done","commit_id":"3423186f49029162121fdd54402476492d4d4e1b"}],"doc/source/admin/backends/ns1.rst":[{"author":{"_account_id":19298,"name":"Nicolas Bock","email":"nicolas.bock@canonical.com","username":"nicolasbock"},"change_message_id":"e4082fbd789858d44a8229838c6ad228a5e93acc","unresolved":true,"context_lines":[{"line_number":16,"context_line":".. _backend-ns1:"},{"line_number":17,"context_line":""},{"line_number":18,"context_line":"NS1 Backend"},{"line_number":19,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"NS1 Configuration"},{"line_number":22,"context_line":"-------------------"}],"source_content_type":"text/x-rst","patch_set":11,"id":"d2b6ae54_9b49db47","line":19,"updated":"2021-03-08 16:29:12.000000000","message":"Please match the number of `\u003d` to the length of the section.","commit_id":"3423186f49029162121fdd54402476492d4d4e1b"},{"author":{"_account_id":33166,"name":"Michael Hood","email":"mhood@ns1.com","username":"mhood-ns1"},"change_message_id":"2ae291e28ce4b4c7da6dd23cc75f3e05cb4397e3","unresolved":false,"context_lines":[{"line_number":16,"context_line":".. _backend-ns1:"},{"line_number":17,"context_line":""},{"line_number":18,"context_line":"NS1 Backend"},{"line_number":19,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"NS1 Configuration"},{"line_number":22,"context_line":"-------------------"}],"source_content_type":"text/x-rst","patch_set":11,"id":"7222b0e9_229b4fc4","line":19,"in_reply_to":"d2b6ae54_9b49db47","updated":"2021-03-08 18:57:26.000000000","message":"Done","commit_id":"3423186f49029162121fdd54402476492d4d4e1b"},{"author":{"_account_id":19298,"name":"Nicolas Bock","email":"nicolas.bock@canonical.com","username":"nicolasbock"},"change_message_id":"e4082fbd789858d44a8229838c6ad228a5e93acc","unresolved":true,"context_lines":[{"line_number":19,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"NS1 Configuration"},{"line_number":22,"context_line":"-------------------"},{"line_number":23,"context_line":""},{"line_number":24,"context_line":""},{"line_number":25,"context_line":"1. Configure the NS1 Backend using this sample target snippet"}],"source_content_type":"text/x-rst","patch_set":11,"id":"50e1ab2a_c655a33d","line":22,"updated":"2021-03-08 16:29:12.000000000","message":"dito","commit_id":"3423186f49029162121fdd54402476492d4d4e1b"},{"author":{"_account_id":33166,"name":"Michael Hood","email":"mhood@ns1.com","username":"mhood-ns1"},"change_message_id":"2ae291e28ce4b4c7da6dd23cc75f3e05cb4397e3","unresolved":false,"context_lines":[{"line_number":19,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"NS1 Configuration"},{"line_number":22,"context_line":"-------------------"},{"line_number":23,"context_line":""},{"line_number":24,"context_line":""},{"line_number":25,"context_line":"1. Configure the NS1 Backend using this sample target snippet"}],"source_content_type":"text/x-rst","patch_set":11,"id":"f19b5a2d_fc33d594","line":22,"in_reply_to":"50e1ab2a_c655a33d","updated":"2021-03-08 18:57:26.000000000","message":"Done","commit_id":"3423186f49029162121fdd54402476492d4d4e1b"}],"doc/source/admin/backends/sample_yaml_snippets/ns1.yaml":[{"author":{"_account_id":22623,"name":"Erik Olof Gunnar Andersson","email":"eandersson@blizzard.com","username":"eoandersson"},"change_message_id":"f67a187329096cee091e45666da523d1ceb06b54","unresolved":true,"context_lines":[{"line_number":18,"context_line":"        api_endpoint: 192.0.2.2"},{"line_number":19,"context_line":"        #NS1 API key"},{"line_number":20,"context_line":"        api_token: changeme"},{"line_number":21,"context_line":"        # If a tsigkey is needed, uncomment the line below and insert the key name, algorithm and value        "},{"line_number":22,"context_line":"        # NOTE: TSIG key has to be set manually"},{"line_number":23,"context_line":"        #tsigkey_name: testkey"},{"line_number":24,"context_line":"        #tsigkey_hash: hmac-sha512"}],"source_content_type":"text/x-yaml","patch_set":11,"id":"c098f6b7_d1d6e40b","line":21,"updated":"2021-03-06 04:46:40.000000000","message":"Nit: Some extra spaces here","commit_id":"3423186f49029162121fdd54402476492d4d4e1b"},{"author":{"_account_id":33166,"name":"Michael Hood","email":"mhood@ns1.com","username":"mhood-ns1"},"change_message_id":"2ae291e28ce4b4c7da6dd23cc75f3e05cb4397e3","unresolved":false,"context_lines":[{"line_number":18,"context_line":"        api_endpoint: 192.0.2.2"},{"line_number":19,"context_line":"        #NS1 API key"},{"line_number":20,"context_line":"        api_token: changeme"},{"line_number":21,"context_line":"        # If a tsigkey is needed, uncomment the line below and insert the key name, algorithm and value        "},{"line_number":22,"context_line":"        # NOTE: TSIG key has to be set manually"},{"line_number":23,"context_line":"        #tsigkey_name: testkey"},{"line_number":24,"context_line":"        #tsigkey_hash: hmac-sha512"}],"source_content_type":"text/x-yaml","patch_set":11,"id":"2f4f2c0d_2461202b","line":21,"in_reply_to":"c098f6b7_d1d6e40b","updated":"2021-03-08 18:57:26.000000000","message":"Done","commit_id":"3423186f49029162121fdd54402476492d4d4e1b"}]}
