)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"c89f4c0cd6adf638c9ef53ead2124566c3fbd645","unresolved":false,"context_lines":[{"line_number":11,"context_line":"cloud-init to configure the hostname in the instance. This use was not"},{"line_number":12,"context_line":"captured when the option was initially deprecated. Rather than forcing"},{"line_number":13,"context_line":"everyone to migrate to a new option, the old one is simply undeprecated"},{"line_number":14,"context_line":"and moved out out \u0027nova/conf/network.py\u0027 to ensure it won\u0027t be removed"},{"line_number":15,"context_line":"alongside the other nova-network options."},{"line_number":16,"context_line":""},{"line_number":17,"context_line":"This also fixes a long-standing issue whereby setting \u0027[DEFAULT]"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":10,"id":"3fce034c_df2c2b49","line":14,"range":{"start_line":14,"start_character":14,"end_line":14,"end_character":17},"updated":"2019-04-12 13:41:36.000000000","message":"of","commit_id":"e99ec77899fe583a31bc5f6edb3179b41f478540"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"feb6fbde5a97e6a33f57456fa8ddb078e2f5b531","unresolved":false,"context_lines":[{"line_number":11,"context_line":"cloud-init to configure the hostname in the instance. This use was not"},{"line_number":12,"context_line":"captured when the option was initially deprecated. Rather than forcing"},{"line_number":13,"context_line":"everyone to migrate to a new option, the old one is simply undeprecated"},{"line_number":14,"context_line":"and moved out out \u0027nova/conf/network.py\u0027 to ensure it won\u0027t be removed"},{"line_number":15,"context_line":"alongside the other nova-network options."},{"line_number":16,"context_line":""},{"line_number":17,"context_line":"This also fixes a long-standing issue whereby setting \u0027[DEFAULT]"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":10,"id":"3fce034c_ea5e07e5","line":14,"range":{"start_line":14,"start_character":14,"end_line":14,"end_character":17},"in_reply_to":"3fce034c_df2c2b49","updated":"2019-04-12 14:11:26.000000000","message":"Done","commit_id":"e99ec77899fe583a31bc5f6edb3179b41f478540"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"c89f4c0cd6adf638c9ef53ead2124566c3fbd645","unresolved":false,"context_lines":[{"line_number":16,"context_line":""},{"line_number":17,"context_line":"This also fixes a long-standing issue whereby setting \u0027[DEFAULT]"},{"line_number":18,"context_line":"dhcp_domain\u0027 to \u0027None\u0027 would result in a hostname of \u0027${hostname}None\u0027"},{"line_number":19,"context_line":"instead of \u0027${hostname}\u0027. This only affects nova-network users."},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"Change-Id: I3940ebd1888d8019716e7d4eb6d4a413a37b9b78"},{"line_number":22,"context_line":"Closes-Bug: #1698010"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":10,"id":"3fce034c_7fa2d79c","line":19,"range":{"start_line":19,"start_character":26,"end_line":19,"end_character":63},"updated":"2019-04-12 13:41:36.000000000","message":"This is a bit confusing because https://review.openstack.org/#/c/480616/10/nova/conf/compute.py@1331 says it\u0027s also used for neutron.","commit_id":"e99ec77899fe583a31bc5f6edb3179b41f478540"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"c89f4c0cd6adf638c9ef53ead2124566c3fbd645","unresolved":false,"context_lines":[{"line_number":14,"context_line":"and moved out out \u0027nova/conf/network.py\u0027 to ensure it won\u0027t be removed"},{"line_number":15,"context_line":"alongside the other nova-network options."},{"line_number":16,"context_line":""},{"line_number":17,"context_line":"This also fixes a long-standing issue whereby setting \u0027[DEFAULT]"},{"line_number":18,"context_line":"dhcp_domain\u0027 to \u0027None\u0027 would result in a hostname of \u0027${hostname}None\u0027"},{"line_number":19,"context_line":"instead of \u0027${hostname}\u0027. This only affects nova-network users."},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"Change-Id: I3940ebd1888d8019716e7d4eb6d4a413a37b9b78"},{"line_number":22,"context_line":"Closes-Bug: #1698010"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":10,"id":"3fce034c_1f94f336","line":19,"range":{"start_line":17,"start_character":0,"end_line":19,"end_character":25},"updated":"2019-04-12 13:41:36.000000000","message":"Why don\u0027t we have a unit test for this?","commit_id":"e99ec77899fe583a31bc5f6edb3179b41f478540"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"feb6fbde5a97e6a33f57456fa8ddb078e2f5b531","unresolved":false,"context_lines":[{"line_number":14,"context_line":"and moved out out \u0027nova/conf/network.py\u0027 to ensure it won\u0027t be removed"},{"line_number":15,"context_line":"alongside the other nova-network options."},{"line_number":16,"context_line":""},{"line_number":17,"context_line":"This also fixes a long-standing issue whereby setting \u0027[DEFAULT]"},{"line_number":18,"context_line":"dhcp_domain\u0027 to \u0027None\u0027 would result in a hostname of \u0027${hostname}None\u0027"},{"line_number":19,"context_line":"instead of \u0027${hostname}\u0027. This only affects nova-network users."},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"Change-Id: I3940ebd1888d8019716e7d4eb6d4a413a37b9b78"},{"line_number":22,"context_line":"Closes-Bug: #1698010"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":10,"id":"3fce034c_4a6ddb96","line":19,"range":{"start_line":17,"start_character":0,"end_line":19,"end_character":25},"in_reply_to":"3fce034c_1f94f336","updated":"2019-04-12 14:11:26.000000000","message":"Done","commit_id":"e99ec77899fe583a31bc5f6edb3179b41f478540"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"feb6fbde5a97e6a33f57456fa8ddb078e2f5b531","unresolved":false,"context_lines":[{"line_number":16,"context_line":""},{"line_number":17,"context_line":"This also fixes a long-standing issue whereby setting \u0027[DEFAULT]"},{"line_number":18,"context_line":"dhcp_domain\u0027 to \u0027None\u0027 would result in a hostname of \u0027${hostname}None\u0027"},{"line_number":19,"context_line":"instead of \u0027${hostname}\u0027. This only affects nova-network users."},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"Change-Id: I3940ebd1888d8019716e7d4eb6d4a413a37b9b78"},{"line_number":22,"context_line":"Closes-Bug: #1698010"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":10,"id":"3fce034c_aa70ff73","line":19,"range":{"start_line":19,"start_character":26,"end_line":19,"end_character":63},"in_reply_to":"3fce034c_7fa2d79c","updated":"2019-04-12 14:11:26.000000000","message":"Done","commit_id":"e99ec77899fe583a31bc5f6edb3179b41f478540"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"e7778c96de8f60db6c525f88b773fb2545bf03c0","unresolved":false,"context_lines":[{"line_number":13,"context_line":"undeprecated and moved to the \u0027[api]\u0027 group to ensure it won\u0027t be"},{"line_number":14,"context_line":"removed alongside the other nova-network options."},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"This also fixes a long-standing issue whereby setting \u0027dhcp_domain\u0027 to"},{"line_number":17,"context_line":"\u0027None\u0027 would result in a hostname of \u0027${hostname}None\u0027 instead of"},{"line_number":18,"context_line":"\u0027${hostname}\u0027."},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"Change-Id: I3940ebd1888d8019716e7d4eb6d4a413a37b9b78"},{"line_number":21,"context_line":"Closes-Bug: #1698010"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":12,"id":"3fce034c_a5e35005","line":18,"range":{"start_line":16,"start_character":0,"end_line":18,"end_character":14},"updated":"2019-04-12 14:52:44.000000000","message":"How much do you care about fixing this and backporting it? Because if you want to backport this fix, you need to do it before the undeprecation and rename since we wouldn\u0027t backport that.","commit_id":"ceb55e773e00a4eaebbe970a7bd115c3571b786c"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"364792daeb3e9f90e80f44806aaee363ac4e3555","unresolved":false,"context_lines":[{"line_number":13,"context_line":"undeprecated and moved to the \u0027[api]\u0027 group to ensure it won\u0027t be"},{"line_number":14,"context_line":"removed alongside the other nova-network options."},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"This also fixes a long-standing issue whereby setting \u0027dhcp_domain\u0027 to"},{"line_number":17,"context_line":"\u0027None\u0027 would result in a hostname of \u0027${hostname}None\u0027 instead of"},{"line_number":18,"context_line":"\u0027${hostname}\u0027."},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"Change-Id: I3940ebd1888d8019716e7d4eb6d4a413a37b9b78"},{"line_number":21,"context_line":"Closes-Bug: #1698010"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":12,"id":"3fce034c_934c3e9f","line":18,"range":{"start_line":16,"start_character":0,"end_line":18,"end_character":14},"in_reply_to":"3fce034c_a5e35005","updated":"2019-04-15 13:44:34.000000000","message":"Given that no-one has spotted this before now, not much. However, it\u0027s easy to split out so let\u0027s do it","commit_id":"ceb55e773e00a4eaebbe970a7bd115c3571b786c"}],"nova/api/metadata/base.py":[{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"02bc45ccd1c76844f168b50628d27f78b53721b5","unresolved":false,"context_lines":[{"line_number":543,"context_line":"    def _check_os_version(self, required, requested):"},{"line_number":544,"context_line":"        return self._check_version(required, requested, OPENSTACK_VERSIONS)"},{"line_number":545,"context_line":""},{"line_number":546,"context_line":"    def _get_hostname(self):"},{"line_number":547,"context_line":"        if not CONF.use_neutron:"},{"line_number":548,"context_line":"            domain \u003d CONF.dhcp_domain"},{"line_number":549,"context_line":"        else:"}],"source_content_type":"text/x-python","patch_set":1,"id":"3f1d235d_59a1b8f7","line":546,"updated":"2017-07-05 15:11:58.000000000","message":"Alternatively, this could all be rewritten has:\n\nif CONF.use_neutron:\n    return self.instance.hostname\n\nreturn \"%s%s%s\" % (self.instance.hostname,\n                   \u0027.\u0027 if CONF.dhcp_domain else \u0027\u0027,\n                   CONF.dhcp_domain)","commit_id":"a45cc9d8d518bc717157b50e9b49b25a5d3263b0"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"1079b4d7b87c51146f6b6c1b7a2a22b50bb56d68","unresolved":false,"context_lines":[{"line_number":543,"context_line":"    def _check_os_version(self, required, requested):"},{"line_number":544,"context_line":"        return self._check_version(required, requested, OPENSTACK_VERSIONS)"},{"line_number":545,"context_line":""},{"line_number":546,"context_line":"    def _get_hostname(self):"},{"line_number":547,"context_line":"        if not CONF.use_neutron:"},{"line_number":548,"context_line":"            domain \u003d CONF.dhcp_domain"},{"line_number":549,"context_line":"        else:"}],"source_content_type":"text/x-python","patch_set":1,"id":"3f1d235d_b9744c37","line":546,"range":{"start_line":546,"start_character":8,"end_line":546,"end_character":21},"updated":"2017-07-05 15:30:12.000000000","message":"well for a start _get_hostname should not be returning an FQDN ever. and FQDN is not a host name so this fucntion should just return self.instance.hostname.","commit_id":"a45cc9d8d518bc717157b50e9b49b25a5d3263b0"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"128d539b7dbbe1f7767ad3a42c3e8710390027ce","unresolved":false,"context_lines":[{"line_number":543,"context_line":"    def _check_os_version(self, required, requested):"},{"line_number":544,"context_line":"        return self._check_version(required, requested, OPENSTACK_VERSIONS)"},{"line_number":545,"context_line":""},{"line_number":546,"context_line":"    def _get_hostname(self):"},{"line_number":547,"context_line":"        if not CONF.use_neutron:"},{"line_number":548,"context_line":"            domain \u003d CONF.dhcp_domain"},{"line_number":549,"context_line":"        else:"}],"source_content_type":"text/x-python","patch_set":1,"id":"3f1d235d_7e8b17c2","line":546,"in_reply_to":"3f1d235d_59a1b8f7","updated":"2018-06-19 13:50:19.000000000","message":"Good point. Done","commit_id":"a45cc9d8d518bc717157b50e9b49b25a5d3263b0"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"d07add7598505b86d676a54f552dae574ae1c115","unresolved":false,"context_lines":[{"line_number":543,"context_line":"    def _check_os_version(self, required, requested):"},{"line_number":544,"context_line":"        return self._check_version(required, requested, OPENSTACK_VERSIONS)"},{"line_number":545,"context_line":""},{"line_number":546,"context_line":"    def _get_hostname(self):"},{"line_number":547,"context_line":"        if not CONF.use_neutron:"},{"line_number":548,"context_line":"            domain \u003d CONF.dhcp_domain"},{"line_number":549,"context_line":"        else:"}],"source_content_type":"text/x-python","patch_set":1,"id":"3f1d235d_830b5a22","line":546,"range":{"start_line":546,"start_character":8,"end_line":546,"end_character":21},"in_reply_to":"3f1d235d_b9744c37","updated":"2017-07-05 17:04:12.000000000","message":"That would be a backward incompatible change to the metadata API wouldn\u0027t it? I mean if you\u0027re using nova-network and dhcp_domain was set.","commit_id":"a45cc9d8d518bc717157b50e9b49b25a5d3263b0"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"e9bcdcb2adae96b84834448b1309cc5234439596","unresolved":false,"context_lines":[{"line_number":546,"context_line":"    def _get_hostname(self):"},{"line_number":547,"context_line":"        if not CONF.use_neutron:"},{"line_number":548,"context_line":"            domain \u003d CONF.dhcp_domain"},{"line_number":549,"context_line":"        else:"},{"line_number":550,"context_line":"            # TODO(stephenfin): neutron stores a \u0027dns_name\u0027 attribute on"},{"line_number":551,"context_line":"            # networks if both DNS and the port binding extension are enabled."},{"line_number":552,"context_line":"            # However, we don\u0027t want to make a call out to neutron here and"},{"line_number":553,"context_line":"            # should instead work on exposing this via os-vif (bug #1702491)."},{"line_number":554,"context_line":"            # Until then, we shouldn\u0027t use the old value."},{"line_number":555,"context_line":"            domain \u003d None"},{"line_number":556,"context_line":""},{"line_number":557,"context_line":"        return \"%s%s%s\" % (self.instance.hostname,"}],"source_content_type":"text/x-python","patch_set":1,"id":"3f1d235d_192460ae","line":554,"range":{"start_line":549,"start_character":12,"end_line":554,"end_character":57},"updated":"2017-07-05 15:10:42.000000000","message":"I\u0027m not sure how os-vif is going to solve this from the metadata API code.\n\nIf you search the neutronv2 api code in nova for \u0027dns_name\u0027, there are lots of hits with weird and complicated conditionals:\n\nhttps://github.com/openstack/nova/blob/635e29433cdadd3d1b664ea2354f049125c393fe/nova/network/neutronv2/api.py#L1115\n\nhttps://github.com/openstack/nova/blob/635e29433cdadd3d1b664ea2354f049125c393fe/nova/network/neutronv2/api.py#L566\n\nIt looks like the port\u0027s dns_name needs to equal the instance.hostname, which is essentially what we\u0027re doing here.\n\nIf we actually needed the dns_name from the neutronv2 API code when we allocate the network, we could store that in the instance info cache and get it here using self.instance.info_cache. But if the port dns_name needs to just equal the instance.hostname, we should be good here I think without os-vif intervention.","commit_id":"a45cc9d8d518bc717157b50e9b49b25a5d3263b0"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"128d539b7dbbe1f7767ad3a42c3e8710390027ce","unresolved":false,"context_lines":[{"line_number":546,"context_line":"    def _get_hostname(self):"},{"line_number":547,"context_line":"        if not CONF.use_neutron:"},{"line_number":548,"context_line":"            domain \u003d CONF.dhcp_domain"},{"line_number":549,"context_line":"        else:"},{"line_number":550,"context_line":"            # TODO(stephenfin): neutron stores a \u0027dns_name\u0027 attribute on"},{"line_number":551,"context_line":"            # networks if both DNS and the port binding extension are enabled."},{"line_number":552,"context_line":"            # However, we don\u0027t want to make a call out to neutron here and"},{"line_number":553,"context_line":"            # should instead work on exposing this via os-vif (bug #1702491)."},{"line_number":554,"context_line":"            # Until then, we shouldn\u0027t use the old value."},{"line_number":555,"context_line":"            domain \u003d None"},{"line_number":556,"context_line":""},{"line_number":557,"context_line":"        return \"%s%s%s\" % (self.instance.hostname,"}],"source_content_type":"text/x-python","patch_set":1,"id":"3f1d235d_3eaa3f18","line":554,"range":{"start_line":549,"start_character":12,"end_line":554,"end_character":57},"in_reply_to":"3f1d235d_192460ae","updated":"2018-06-19 13:50:19.000000000","message":"\u003e I\u0027m not sure how os-vif is going to solve this from the metadata API code.\n\u003e If you search the neutronv2 api code in nova for \u0027dns_name\u0027, there are lots of hits with weird and complicated conditionals:\n\nIt\u0027s not \u0027dns_name\u0027 that we care about - it\u0027s \u0027dns_domain\u0027. I\u0027ve got patches to fix this up separately. See top level comments","commit_id":"a45cc9d8d518bc717157b50e9b49b25a5d3263b0"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"1079b4d7b87c51146f6b6c1b7a2a22b50bb56d68","unresolved":false,"context_lines":[{"line_number":546,"context_line":"    def _get_hostname(self):"},{"line_number":547,"context_line":"        if not CONF.use_neutron:"},{"line_number":548,"context_line":"            domain \u003d CONF.dhcp_domain"},{"line_number":549,"context_line":"        else:"},{"line_number":550,"context_line":"            # TODO(stephenfin): neutron stores a \u0027dns_name\u0027 attribute on"},{"line_number":551,"context_line":"            # networks if both DNS and the port binding extension are enabled."},{"line_number":552,"context_line":"            # However, we don\u0027t want to make a call out to neutron here and"},{"line_number":553,"context_line":"            # should instead work on exposing this via os-vif (bug #1702491)."},{"line_number":554,"context_line":"            # Until then, we shouldn\u0027t use the old value."},{"line_number":555,"context_line":"            domain \u003d None"},{"line_number":556,"context_line":""},{"line_number":557,"context_line":"        return \"%s%s%s\" % (self.instance.hostname,"}],"source_content_type":"text/x-python","patch_set":1,"id":"3f1d235d_5453bd17","line":554,"range":{"start_line":549,"start_character":12,"end_line":554,"end_character":57},"in_reply_to":"3f1d235d_192460ae","updated":"2017-07-05 15:30:12.000000000","message":"os-vif is actully not required we should be able to modify\nhttps://github.com/openstack/nova/blob/master/nova/network/neutronv2/api.py#L2186\n\nto read the dns_name form the port object and store it in the nova network object.\n\nthen here you should be able to retive the info from the instance by calling self.instance.get_network_info()[\u0027dns_name\u0027]\n\nassuming https://github.com/openstack/nova/blob/master/nova/network/neutronv2/api.py#L1291-L1305 is called to put it in the cache.\n\nassuming thats what network_model.NetworkInfo.hydrate(nw_info) does?","commit_id":"a45cc9d8d518bc717157b50e9b49b25a5d3263b0"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"d07add7598505b86d676a54f552dae574ae1c115","unresolved":false,"context_lines":[{"line_number":546,"context_line":"    def _get_hostname(self):"},{"line_number":547,"context_line":"        if not CONF.use_neutron:"},{"line_number":548,"context_line":"            domain \u003d CONF.dhcp_domain"},{"line_number":549,"context_line":"        else:"},{"line_number":550,"context_line":"            # TODO(stephenfin): neutron stores a \u0027dns_name\u0027 attribute on"},{"line_number":551,"context_line":"            # networks if both DNS and the port binding extension are enabled."},{"line_number":552,"context_line":"            # However, we don\u0027t want to make a call out to neutron here and"},{"line_number":553,"context_line":"            # should instead work on exposing this via os-vif (bug #1702491)."},{"line_number":554,"context_line":"            # Until then, we shouldn\u0027t use the old value."},{"line_number":555,"context_line":"            domain \u003d None"},{"line_number":556,"context_line":""},{"line_number":557,"context_line":"        return \"%s%s%s\" % (self.instance.hostname,"}],"source_content_type":"text/x-python","patch_set":1,"id":"3f1d235d_c3a152fa","line":554,"range":{"start_line":549,"start_character":12,"end_line":554,"end_character":57},"in_reply_to":"3f1d235d_5453bd17","updated":"2017-07-05 17:04:12.000000000","message":"As noted by me above, will the port dns_name ever !\u003d instance.hostname?","commit_id":"a45cc9d8d518bc717157b50e9b49b25a5d3263b0"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"e9bcdcb2adae96b84834448b1309cc5234439596","unresolved":false,"context_lines":[{"line_number":554,"context_line":"            # Until then, we shouldn\u0027t use the old value."},{"line_number":555,"context_line":"            domain \u003d None"},{"line_number":556,"context_line":""},{"line_number":557,"context_line":"        return \"%s%s%s\" % (self.instance.hostname,"},{"line_number":558,"context_line":"                           \u0027.\u0027 if domain else \u0027\u0027,"},{"line_number":559,"context_line":"                           domain)"},{"line_number":560,"context_line":""},{"line_number":561,"context_line":"    def lookup(self, path):"},{"line_number":562,"context_line":"        if path \u003d\u003d \"\" or path[0] !\u003d \"/\":"}],"source_content_type":"text/x-python","patch_set":1,"id":"3f1d235d_992f5087","line":559,"range":{"start_line":557,"start_character":8,"end_line":559,"end_character":34},"updated":"2017-07-05 15:10:42.000000000","message":"So if I\u0027m using neutron and my instance hostname is foo.bar, then my result is going to be \"foo.barNone\"?\n\nShouldn\u0027t domain \u003d \u0027\u0027 on L555 above?","commit_id":"a45cc9d8d518bc717157b50e9b49b25a5d3263b0"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"128d539b7dbbe1f7767ad3a42c3e8710390027ce","unresolved":false,"context_lines":[{"line_number":554,"context_line":"            # Until then, we shouldn\u0027t use the old value."},{"line_number":555,"context_line":"            domain \u003d None"},{"line_number":556,"context_line":""},{"line_number":557,"context_line":"        return \"%s%s%s\" % (self.instance.hostname,"},{"line_number":558,"context_line":"                           \u0027.\u0027 if domain else \u0027\u0027,"},{"line_number":559,"context_line":"                           domain)"},{"line_number":560,"context_line":""},{"line_number":561,"context_line":"    def lookup(self, path):"},{"line_number":562,"context_line":"        if path \u003d\u003d \"\" or path[0] !\u003d \"/\":"}],"source_content_type":"text/x-python","patch_set":1,"id":"3f1d235d_dec34bec","line":559,"range":{"start_line":557,"start_character":8,"end_line":559,"end_character":34},"in_reply_to":"3f1d235d_992f5087","updated":"2018-06-19 13:50:19.000000000","message":"I forgot str(None) \u003d \u0027None\u0027 and not \u0027\u0027","commit_id":"a45cc9d8d518bc717157b50e9b49b25a5d3263b0"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"a346827ebbd1c3af29da1d915df05ca51e4d17b6","unresolved":false,"context_lines":[{"line_number":546,"context_line":""},{"line_number":547,"context_line":"    def _get_hostname(self):"},{"line_number":548,"context_line":"        if CONF.use_neutron:"},{"line_number":549,"context_line":"            domains \u003d [iface[\u0027network\u0027].get(\u0027dns_domain\u0027)"},{"line_number":550,"context_line":"                       for iface in instance.get_network_info()]"},{"line_number":551,"context_line":"            for domain in domain:"},{"line_number":552,"context_line":"                if domain:"}],"source_content_type":"text/x-python","patch_set":5,"id":"7f287b81_17c4c53f","line":549,"range":{"start_line":549,"start_character":40,"end_line":549,"end_character":57},"updated":"2017-09-01 16:14:16.000000000","message":"Is this supposed to be net.get_meta(\u0027dns_domain\u0027)?","commit_id":"49c03a76c372260b8cee285a70045ad788792ae6"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"128d539b7dbbe1f7767ad3a42c3e8710390027ce","unresolved":false,"context_lines":[{"line_number":546,"context_line":""},{"line_number":547,"context_line":"    def _get_hostname(self):"},{"line_number":548,"context_line":"        if CONF.use_neutron:"},{"line_number":549,"context_line":"            domains \u003d [iface[\u0027network\u0027].get(\u0027dns_domain\u0027)"},{"line_number":550,"context_line":"                       for iface in instance.get_network_info()]"},{"line_number":551,"context_line":"            for domain in domain:"},{"line_number":552,"context_line":"                if domain:"}],"source_content_type":"text/x-python","patch_set":5,"id":"7f287b81_3b89ce25","line":549,"range":{"start_line":549,"start_character":40,"end_line":549,"end_character":57},"in_reply_to":"7f287b81_17c4c53f","updated":"2018-06-19 13:50:19.000000000","message":"It is, yes","commit_id":"49c03a76c372260b8cee285a70045ad788792ae6"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"a346827ebbd1c3af29da1d915df05ca51e4d17b6","unresolved":false,"context_lines":[{"line_number":548,"context_line":"        if CONF.use_neutron:"},{"line_number":549,"context_line":"            domains \u003d [iface[\u0027network\u0027].get(\u0027dns_domain\u0027)"},{"line_number":550,"context_line":"                       for iface in instance.get_network_info()]"},{"line_number":551,"context_line":"            for domain in domain:"},{"line_number":552,"context_line":"                if domain:"},{"line_number":553,"context_line":"                    return \u0027.\u0027.join([self.instance.hostname, domain])"},{"line_number":554,"context_line":"            return self.instance.hostname"}],"source_content_type":"text/x-python","patch_set":5,"id":"7f287b81_d7dbdd1e","line":551,"range":{"start_line":551,"start_character":26,"end_line":551,"end_character":32},"updated":"2017-09-01 16:14:16.000000000","message":"domains - clearly your unit test is missing something here...","commit_id":"49c03a76c372260b8cee285a70045ad788792ae6"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"128d539b7dbbe1f7767ad3a42c3e8710390027ce","unresolved":false,"context_lines":[{"line_number":548,"context_line":"        if CONF.use_neutron:"},{"line_number":549,"context_line":"            domains \u003d [iface[\u0027network\u0027].get(\u0027dns_domain\u0027)"},{"line_number":550,"context_line":"                       for iface in instance.get_network_info()]"},{"line_number":551,"context_line":"            for domain in domain:"},{"line_number":552,"context_line":"                if domain:"},{"line_number":553,"context_line":"                    return \u0027.\u0027.join([self.instance.hostname, domain])"},{"line_number":554,"context_line":"            return self.instance.hostname"}],"source_content_type":"text/x-python","patch_set":5,"id":"7f287b81_5b9a5a6e","line":551,"range":{"start_line":551,"start_character":26,"end_line":551,"end_character":32},"in_reply_to":"7f287b81_d7dbdd1e","updated":"2018-06-19 13:50:19.000000000","message":"Yup, my UTs are garbage right now. I need to figure out how to mock neutron nets (see TODO on next page).","commit_id":"49c03a76c372260b8cee285a70045ad788792ae6"},{"author":{"_account_id":1653,"name":"garyk","email":"gkotton@vmware.com","username":"garyk"},"change_message_id":"7865187c9fbbd483ed54165e72224d40e0a6afe7","unresolved":false,"context_lines":[{"line_number":546,"context_line":""},{"line_number":547,"context_line":"    def _get_hostname(self):"},{"line_number":548,"context_line":"        if CONF.use_neutron:"},{"line_number":549,"context_line":"            domains \u003d [iface[\u0027network\u0027].get_meta(\u0027dns_domain\u0027)"},{"line_number":550,"context_line":"                       for iface in self.network_metadata]"},{"line_number":551,"context_line":"            for domain in domains:"},{"line_number":552,"context_line":"                if domain:"}],"source_content_type":"text/x-python","patch_set":6,"id":"7f287b81_712095f8","line":549,"updated":"2017-09-04 11:54:44.000000000","message":"this requires that the \u0027DNS Integration\u0027 extension work. If that is not running then no dns name will be passed.\n\nIn addition to this there will be a regression for existing instances that are up and running. \n\nExample:\n1. Say I have Pike or any other version running and on my instance I do:\nhostname --fqdn then I will get the value set in CONF.dhcp_domain irrespective to what is configure on my network.\n\n2. Now we update to Queens with this support and I spin up a new network with no dns_domain configured as that is what I have done since day one when I installed my cloud on for example version M.\nNow hostname --fqdn will not provide the same information as above\n\nSame holds for existing networks prior to upgrade","commit_id":"24b458714586d619a4b70d03110494339068076f"}],"nova/conf/api.py":[{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"c51bd58ab83750014e0a51717c1a1b46c26c9e5f","unresolved":false,"context_lines":[{"line_number":211,"context_line":"\"\"\"),"},{"line_number":212,"context_line":"    cfg.StrOpt(\"domain\","},{"line_number":213,"context_line":"        deprecated_group\u003d\"DEFAULT\","},{"line_number":214,"context_line":"        deprecated_name\u003d\"dhcp_domain\","},{"line_number":215,"context_line":"        default\u003d\"novalocal\","},{"line_number":216,"context_line":"        help\u003d\"\"\""},{"line_number":217,"context_line":"Domain name used to configure FQDN for instances."}],"source_content_type":"text/x-python","patch_set":11,"id":"3fce034c_aa3b1f36","line":214,"range":{"start_line":214,"start_character":25,"end_line":214,"end_character":36},"updated":"2019-04-12 14:23:42.000000000","message":"Why not just leave this name for the option and change the group?","commit_id":"2f089c9b1803f596b1bcdad3dca0d821b1d3f6ea"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"4218d064b15e125dc6bd571ffb038d0fba49a362","unresolved":false,"context_lines":[{"line_number":211,"context_line":"\"\"\"),"},{"line_number":212,"context_line":"    cfg.StrOpt(\"domain\","},{"line_number":213,"context_line":"        deprecated_group\u003d\"DEFAULT\","},{"line_number":214,"context_line":"        deprecated_name\u003d\"dhcp_domain\","},{"line_number":215,"context_line":"        default\u003d\"novalocal\","},{"line_number":216,"context_line":"        help\u003d\"\"\""},{"line_number":217,"context_line":"Domain name used to configure FQDN for instances."}],"source_content_type":"text/x-python","patch_set":11,"id":"3fce034c_ca6c6b0a","line":214,"range":{"start_line":214,"start_character":25,"end_line":214,"end_character":36},"in_reply_to":"3fce034c_aa3b1f36","updated":"2019-04-12 14:32:49.000000000","message":"Done","commit_id":"2f089c9b1803f596b1bcdad3dca0d821b1d3f6ea"}],"nova/conf/compute.py":[{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"c89f4c0cd6adf638c9ef53ead2124566c3fbd645","unresolved":false,"context_lines":[{"line_number":1318,"context_line":"\"\"\"),"},{"line_number":1319,"context_line":"]"},{"line_number":1320,"context_line":""},{"line_number":1321,"context_line":"metadata_opts \u003d ["},{"line_number":1322,"context_line":"    # TODO(stephenfin): Rename this once nova-network is removed as there will"},{"line_number":1323,"context_line":"    # no longer be any connection to DHCP"},{"line_number":1324,"context_line":"    cfg.StrOpt(\u0027dhcp_domain\u0027,"}],"source_content_type":"text/x-python","patch_set":10,"id":"3fce034c_ffa007a8","line":1321,"updated":"2019-04-12 13:41:36.000000000","message":"Why not put this in the API metadata opts since this is part of the metadata API, not really part of the compute service.\n\nhttps://github.com/openstack/nova/blob/03322bb517925a9f5a04ebdb41c3fd31e7962440/nova/conf/api.py#L48","commit_id":"e99ec77899fe583a31bc5f6edb3179b41f478540"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"feb6fbde5a97e6a33f57456fa8ddb078e2f5b531","unresolved":false,"context_lines":[{"line_number":1318,"context_line":"\"\"\"),"},{"line_number":1319,"context_line":"]"},{"line_number":1320,"context_line":""},{"line_number":1321,"context_line":"metadata_opts \u003d ["},{"line_number":1322,"context_line":"    # TODO(stephenfin): Rename this once nova-network is removed as there will"},{"line_number":1323,"context_line":"    # no longer be any connection to DHCP"},{"line_number":1324,"context_line":"    cfg.StrOpt(\u0027dhcp_domain\u0027,"}],"source_content_type":"text/x-python","patch_set":10,"id":"3fce034c_bfd03fcb","line":1321,"in_reply_to":"3fce034c_ffa007a8","updated":"2019-04-12 14:11:26.000000000","message":"Done","commit_id":"e99ec77899fe583a31bc5f6edb3179b41f478540"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"c89f4c0cd6adf638c9ef53ead2124566c3fbd645","unresolved":false,"context_lines":[{"line_number":1326,"context_line":"        help\u003d\"\"\""},{"line_number":1327,"context_line":"Domain name used to configure FQDN for instances."},{"line_number":1328,"context_line":""},{"line_number":1329,"context_line":"This option has two purposes."},{"line_number":1330,"context_line":""},{"line_number":1331,"context_line":"#. For *neutron* and *nova-network* users, it is used to configure a"},{"line_number":1332,"context_line":"   fully-qualified domain name for instance hostnames. If unset, only the"}],"source_content_type":"text/x-python","patch_set":10,"id":"3fce034c_1fa633c3","line":1329,"range":{"start_line":1329,"start_character":28,"end_line":1329,"end_character":29},"updated":"2019-04-12 13:41:36.000000000","message":":","commit_id":"e99ec77899fe583a31bc5f6edb3179b41f478540"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"feb6fbde5a97e6a33f57456fa8ddb078e2f5b531","unresolved":false,"context_lines":[{"line_number":1326,"context_line":"        help\u003d\"\"\""},{"line_number":1327,"context_line":"Domain name used to configure FQDN for instances."},{"line_number":1328,"context_line":""},{"line_number":1329,"context_line":"This option has two purposes."},{"line_number":1330,"context_line":""},{"line_number":1331,"context_line":"#. For *neutron* and *nova-network* users, it is used to configure a"},{"line_number":1332,"context_line":"   fully-qualified domain name for instance hostnames. If unset, only the"}],"source_content_type":"text/x-python","patch_set":10,"id":"3fce034c_1ff5d357","line":1329,"range":{"start_line":1329,"start_character":28,"end_line":1329,"end_character":29},"in_reply_to":"3fce034c_1fa633c3","updated":"2019-04-12 14:11:26.000000000","message":"Done","commit_id":"e99ec77899fe583a31bc5f6edb3179b41f478540"}],"releasenotes/notes/undeprecate-dhcp_domain-opt-77c9154c5b06e0ff.yaml":[{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"c89f4c0cd6adf638c9ef53ead2124566c3fbd645","unresolved":false,"context_lines":[{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    The ``dhcp_domain`` option has been undeprecated. This had been repurposed"},{"line_number":5,"context_line":"    by the metadata service to configure fully-qualified domain names for"},{"line_number":6,"context_line":"    instances, in addition to it\u0027s role configure DHCP services for"},{"line_number":7,"context_line":"    *nova-network*. No changes are necessary."}],"source_content_type":"text/x-yaml","patch_set":10,"id":"3fce034c_9f7a2322","line":6,"range":{"start_line":6,"start_character":40,"end_line":6,"end_character":49},"updated":"2019-04-12 13:41:36.000000000","message":"configuring?","commit_id":"e99ec77899fe583a31bc5f6edb3179b41f478540"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"c89f4c0cd6adf638c9ef53ead2124566c3fbd645","unresolved":false,"context_lines":[{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    The ``dhcp_domain`` option has been undeprecated. This had been repurposed"},{"line_number":5,"context_line":"    by the metadata service to configure fully-qualified domain names for"},{"line_number":6,"context_line":"    instances, in addition to it\u0027s role configure DHCP services for"},{"line_number":7,"context_line":"    *nova-network*. No changes are necessary."}],"source_content_type":"text/x-yaml","patch_set":10,"id":"3fce034c_5f9b5b71","line":6,"range":{"start_line":6,"start_character":30,"end_line":6,"end_character":34},"updated":"2019-04-12 13:41:36.000000000","message":"its","commit_id":"e99ec77899fe583a31bc5f6edb3179b41f478540"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"feb6fbde5a97e6a33f57456fa8ddb078e2f5b531","unresolved":false,"context_lines":[{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    The ``dhcp_domain`` option has been undeprecated. This had been repurposed"},{"line_number":5,"context_line":"    by the metadata service to configure fully-qualified domain names for"},{"line_number":6,"context_line":"    instances, in addition to it\u0027s role configure DHCP services for"},{"line_number":7,"context_line":"    *nova-network*. No changes are necessary."}],"source_content_type":"text/x-yaml","patch_set":10,"id":"3fce034c_1f363305","line":6,"range":{"start_line":6,"start_character":30,"end_line":6,"end_character":34},"in_reply_to":"3fce034c_5f9b5b71","updated":"2019-04-12 14:11:26.000000000","message":"Done","commit_id":"e99ec77899fe583a31bc5f6edb3179b41f478540"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"feb6fbde5a97e6a33f57456fa8ddb078e2f5b531","unresolved":false,"context_lines":[{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    The ``dhcp_domain`` option has been undeprecated. This had been repurposed"},{"line_number":5,"context_line":"    by the metadata service to configure fully-qualified domain names for"},{"line_number":6,"context_line":"    instances, in addition to it\u0027s role configure DHCP services for"},{"line_number":7,"context_line":"    *nova-network*. No changes are necessary."}],"source_content_type":"text/x-yaml","patch_set":10,"id":"3fce034c_ff30070a","line":6,"range":{"start_line":6,"start_character":40,"end_line":6,"end_character":49},"in_reply_to":"3fce034c_9f7a2322","updated":"2019-04-12 14:11:26.000000000","message":"Done","commit_id":"e99ec77899fe583a31bc5f6edb3179b41f478540"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"c51bd58ab83750014e0a51717c1a1b46c26c9e5f","unresolved":false,"context_lines":[{"line_number":2,"context_line":"other:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    The ``dhcp_domain`` option has been undeprecated and renamed to ``[api]"},{"line_number":5,"context_line":"    domain``. This had been repurposed by the metadata service to configure"},{"line_number":6,"context_line":"    fully-qualified domain names for instances, in addition to its role"},{"line_number":7,"context_line":"    configuring DHCP services for *nova-network*."}],"source_content_type":"text/x-yaml","patch_set":11,"id":"3fce034c_aa247f0e","line":5,"range":{"start_line":5,"start_character":28,"end_line":5,"end_character":38},"updated":"2019-04-12 14:23:42.000000000","message":"As far as I can tell the purpose has not changed, so I don\u0027t get this. We\u0027re just undeprecating it.","commit_id":"2f089c9b1803f596b1bcdad3dca0d821b1d3f6ea"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"4218d064b15e125dc6bd571ffb038d0fba49a362","unresolved":false,"context_lines":[{"line_number":2,"context_line":"other:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    The ``dhcp_domain`` option has been undeprecated and renamed to ``[api]"},{"line_number":5,"context_line":"    domain``. This had been repurposed by the metadata service to configure"},{"line_number":6,"context_line":"    fully-qualified domain names for instances, in addition to its role"},{"line_number":7,"context_line":"    configuring DHCP services for *nova-network*."}],"source_content_type":"text/x-yaml","patch_set":11,"id":"3fce034c_4a807b8c","line":5,"range":{"start_line":5,"start_character":28,"end_line":5,"end_character":38},"in_reply_to":"3fce034c_aa247f0e","updated":"2019-04-12 14:32:49.000000000","message":"I was trying to capture that it had a second use besides configuring nova-net\u0027s DHCP functionality. Reworded","commit_id":"2f089c9b1803f596b1bcdad3dca0d821b1d3f6ea"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"e7778c96de8f60db6c525f88b773fb2545bf03c0","unresolved":false,"context_lines":[{"line_number":4,"context_line":"    The ``dhcp_domain`` option has been undeprecated and moved to the ``[api]``"},{"line_number":5,"context_line":"    group. It is used by the metadata service to configure fully-qualified"},{"line_number":6,"context_line":"    domain names for instances, in addition to its role configuring DHCP"},{"line_number":7,"context_line":"    services for *nova-network*. This was use case was missed when deprecating"},{"line_number":8,"context_line":"    the option initially."}],"source_content_type":"text/x-yaml","patch_set":12,"id":"3fce034c_a53b5036","line":7,"range":{"start_line":7,"start_character":38,"end_line":7,"end_character":41},"updated":"2019-04-12 14:52:44.000000000","message":"nix","commit_id":"ceb55e773e00a4eaebbe970a7bd115c3571b786c"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"364792daeb3e9f90e80f44806aaee363ac4e3555","unresolved":false,"context_lines":[{"line_number":4,"context_line":"    The ``dhcp_domain`` option has been undeprecated and moved to the ``[api]``"},{"line_number":5,"context_line":"    group. It is used by the metadata service to configure fully-qualified"},{"line_number":6,"context_line":"    domain names for instances, in addition to its role configuring DHCP"},{"line_number":7,"context_line":"    services for *nova-network*. This was use case was missed when deprecating"},{"line_number":8,"context_line":"    the option initially."}],"source_content_type":"text/x-yaml","patch_set":12,"id":"3fce034c_53e7b6e5","line":7,"range":{"start_line":7,"start_character":38,"end_line":7,"end_character":41},"in_reply_to":"3fce034c_a53b5036","updated":"2019-04-15 13:44:34.000000000","message":"Done","commit_id":"ceb55e773e00a4eaebbe970a7bd115c3571b786c"}]}
