)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"bd3f589daf1ab20c5ad9ea3492de39eef73c1a91","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"67ef66d0_88308948","updated":"2023-01-14 11:38:25.000000000","message":"almost\n2 nits but overall this looks good to me","commit_id":"dff9d018a1bbcff15dac9179cd3b122be40d302b"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"4e422c7cc27fdb685175df153cf3ebf004a0d1ca","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":5,"id":"112ff015_d0aab63c","updated":"2023-01-17 14:28:09.000000000","message":"I\u0027m basically like 99% happy with the change but I\u0027m wondering about the upgrade impact. Since users would be able to create instances with FQDNs in hostnames, maybe we should either automatically deprecate the dhcp_domain feature or mark a big upgrade note in our docs (the latter works for me)","commit_id":"59bfdb723c70af2b2f12c0211ed293bd6978603a"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"b04a22ef3fe7bd7c891433549a4692f705aaa881","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":6,"id":"cb64a544_ff07379b","updated":"2023-01-20 14:20:16.000000000","message":"Indeed, LGTM.","commit_id":"9980b9ad52a24998bc36fc191118a3d924b0a880"},{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"dc76fe698ea05af640029f84157027672d00d341","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":6,"id":"773a2a68_f5a51dbc","updated":"2023-01-17 18:12:53.000000000","message":"recheck unrelated ceph-multistore failure","commit_id":"9980b9ad52a24998bc36fc191118a3d924b0a880"},{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"cc8a71a061e5fb2d99003bdccaa48b27ae90f469","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":6,"id":"cdd74579_62113a36","updated":"2023-01-21 02:00:19.000000000","message":"recheck unrelated multi-cell","commit_id":"9980b9ad52a24998bc36fc191118a3d924b0a880"},{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"087220df723fd43d4b892471d54f840d719c8e2b","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":6,"id":"b11c2ba9_0b2d6a25","updated":"2023-01-20 16:43:11.000000000","message":"recheck unrelated multistore/grenade failures","commit_id":"9980b9ad52a24998bc36fc191118a3d924b0a880"}],"api-ref/source/parameters.yaml":[{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"bd3f589daf1ab20c5ad9ea3492de39eef73c1a91","unresolved":true,"context_lines":[{"line_number":6383,"context_line":"    The hostname to configure for the instance in the metadata service."},{"line_number":6384,"context_line":""},{"line_number":6385,"context_line":"    Starting with microversion 2.94, this can be a Fully Qualified Domain Name"},{"line_number":6386,"context_line":"    (FQDN)."},{"line_number":6387,"context_line":""},{"line_number":6388,"context_line":"    .. note::"},{"line_number":6389,"context_line":""}],"source_content_type":"text/x-yaml","patch_set":2,"id":"262cfdcc_ea76ea5c","line":6386,"updated":"2023-01-14 11:38:25.000000000","message":":) so the one thing i might add is notign the make lenght fo an fqdn that we will support. i belive it 254-256 we support the max lenght that is allowed by the relevent RFC document but not everyone know that fqdns actully have a max lenght.","commit_id":"dff9d018a1bbcff15dac9179cd3b122be40d302b"},{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"532192a4867033d2363b8c0647b57304ff3b8a84","unresolved":false,"context_lines":[{"line_number":6383,"context_line":"    The hostname to configure for the instance in the metadata service."},{"line_number":6384,"context_line":""},{"line_number":6385,"context_line":"    Starting with microversion 2.94, this can be a Fully Qualified Domain Name"},{"line_number":6386,"context_line":"    (FQDN)."},{"line_number":6387,"context_line":""},{"line_number":6388,"context_line":"    .. note::"},{"line_number":6389,"context_line":""}],"source_content_type":"text/x-yaml","patch_set":2,"id":"f5973ebb_015c5e2f","line":6386,"in_reply_to":"262cfdcc_ea76ea5c","updated":"2023-01-14 13:11:12.000000000","message":"Done","commit_id":"dff9d018a1bbcff15dac9179cd3b122be40d302b"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"4e422c7cc27fdb685175df153cf3ebf004a0d1ca","unresolved":true,"context_lines":[{"line_number":6383,"context_line":"    The hostname to configure for the instance in the metadata service."},{"line_number":6384,"context_line":""},{"line_number":6385,"context_line":"    Starting with microversion 2.94, this can be a Fully Qualified Domain Name"},{"line_number":6386,"context_line":"    (FQDN) of up to 255 characters in length (internationalized domain names"},{"line_number":6387,"context_line":"    are not supported)."},{"line_number":6388,"context_line":""},{"line_number":6389,"context_line":"    .. note::"},{"line_number":6390,"context_line":""}],"source_content_type":"text/x-yaml","patch_set":5,"id":"03c7d6a0_87ba2056","line":6387,"range":{"start_line":6386,"start_character":46,"end_line":6387,"end_character":21},"updated":"2023-01-17 14:28:09.000000000","message":"but this parameter is originally i18n compatible, right? (I mean, in terms of hostname)","commit_id":"59bfdb723c70af2b2f12c0211ed293bd6978603a"},{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"947fbcecea4d7610252c504a4033f5da140223d7","unresolved":true,"context_lines":[{"line_number":6383,"context_line":"    The hostname to configure for the instance in the metadata service."},{"line_number":6384,"context_line":""},{"line_number":6385,"context_line":"    Starting with microversion 2.94, this can be a Fully Qualified Domain Name"},{"line_number":6386,"context_line":"    (FQDN) of up to 255 characters in length (internationalized domain names"},{"line_number":6387,"context_line":"    are not supported)."},{"line_number":6388,"context_line":""},{"line_number":6389,"context_line":"    .. note::"},{"line_number":6390,"context_line":""}],"source_content_type":"text/x-yaml","patch_set":5,"id":"7ecea507_dc5ac94e","line":6387,"range":{"start_line":6386,"start_character":46,"end_line":6387,"end_character":21},"in_reply_to":"03c7d6a0_87ba2056","updated":"2023-01-17 14:47:31.000000000","message":"No, see my comments in nova/api/validation/parameter_types.py","commit_id":"59bfdb723c70af2b2f12c0211ed293bd6978603a"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"9909c04407b087bd11a5175ba5439c831021b0ee","unresolved":true,"context_lines":[{"line_number":6383,"context_line":"    The hostname to configure for the instance in the metadata service."},{"line_number":6384,"context_line":""},{"line_number":6385,"context_line":"    Starting with microversion 2.94, this can be a Fully Qualified Domain Name"},{"line_number":6386,"context_line":"    (FQDN) of up to 255 characters in length (internationalized domain names"},{"line_number":6387,"context_line":"    are not supported)."},{"line_number":6388,"context_line":""},{"line_number":6389,"context_line":"    .. note::"},{"line_number":6390,"context_line":""}],"source_content_type":"text/x-yaml","patch_set":5,"id":"9ddcfc2f_cbc83ba1","line":6387,"range":{"start_line":6386,"start_character":46,"end_line":6387,"end_character":21},"in_reply_to":"7ecea507_dc5ac94e","updated":"2023-01-17 14:58:58.000000000","message":"Damn shit, you\u0027re right, so maybe no need to be explicit here.","commit_id":"59bfdb723c70af2b2f12c0211ed293bd6978603a"},{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"32e10b9a6371c458166941c5e72948488174a01e","unresolved":true,"context_lines":[{"line_number":6383,"context_line":"    The hostname to configure for the instance in the metadata service."},{"line_number":6384,"context_line":""},{"line_number":6385,"context_line":"    Starting with microversion 2.94, this can be a Fully Qualified Domain Name"},{"line_number":6386,"context_line":"    (FQDN) of up to 255 characters in length (internationalized domain names"},{"line_number":6387,"context_line":"    are not supported)."},{"line_number":6388,"context_line":""},{"line_number":6389,"context_line":"    .. note::"},{"line_number":6390,"context_line":""}],"source_content_type":"text/x-yaml","patch_set":5,"id":"b0866d7b_7de5bd19","line":6387,"range":{"start_line":6386,"start_character":46,"end_line":6387,"end_character":21},"in_reply_to":"9ddcfc2f_cbc83ba1","updated":"2023-01-17 15:24:27.000000000","message":"So... should I just remove the parenthesis?","commit_id":"59bfdb723c70af2b2f12c0211ed293bd6978603a"},{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"120e2a51c1c122ba11bc58a38100dd9e5f315d6b","unresolved":false,"context_lines":[{"line_number":6383,"context_line":"    The hostname to configure for the instance in the metadata service."},{"line_number":6384,"context_line":""},{"line_number":6385,"context_line":"    Starting with microversion 2.94, this can be a Fully Qualified Domain Name"},{"line_number":6386,"context_line":"    (FQDN) of up to 255 characters in length (internationalized domain names"},{"line_number":6387,"context_line":"    are not supported)."},{"line_number":6388,"context_line":""},{"line_number":6389,"context_line":"    .. note::"},{"line_number":6390,"context_line":""}],"source_content_type":"text/x-yaml","patch_set":5,"id":"57467378_33a52b57","line":6387,"range":{"start_line":6386,"start_character":46,"end_line":6387,"end_character":21},"in_reply_to":"b0866d7b_7de5bd19","updated":"2023-01-17 16:01:18.000000000","message":"Done","commit_id":"59bfdb723c70af2b2f12c0211ed293bd6978603a"}],"nova/api/metadata/base.py":[{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"a411a85c2c3c420905311f579e0851933aae0992","unresolved":true,"context_lines":[{"line_number":528,"context_line":"    def _get_hostname(self):"},{"line_number":529,"context_line":"        # TODO(stephenfin): At some point in the future, we may wish to"},{"line_number":530,"context_line":"        # retrieve this information from neutron."},{"line_number":531,"context_line":"        if CONF.api.dhcp_domain:"},{"line_number":532,"context_line":"            return \u0027.\u0027.join([self.instance.hostname, CONF.api.dhcp_domain])"},{"line_number":533,"context_line":""},{"line_number":534,"context_line":"        return self.instance.hostname"}],"source_content_type":"text/x-python","patch_set":4,"id":"e456bd14_5acfaf07","line":531,"updated":"2023-01-14 13:24:35.000000000","message":"[2/3] We could change this logic to be a bit more smart and only suffix CONF.api.dhcp_domain if there are no perdiods in the hostname or something...","commit_id":"3553ac57c0ea96b513cb0d9a3ba4d55b680fe86b"}],"nova/api/openstack/api_version_request.py":[{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"bd3f589daf1ab20c5ad9ea3492de39eef73c1a91","unresolved":true,"context_lines":[{"line_number":253,"context_line":"             ``POST /os-keypairs`` and allow including @ and dot (.) characters"},{"line_number":254,"context_line":"             in keypair name."},{"line_number":255,"context_line":"    * 2.93 - Add support for volume backed server rebuild."},{"line_number":256,"context_line":"    * 2.93 - Allow FQDN in server hostname."},{"line_number":257,"context_line":"\"\"\""},{"line_number":258,"context_line":""},{"line_number":259,"context_line":"# The minimum and maximum versions of the API supported"}],"source_content_type":"text/x-python","patch_set":2,"id":"a80f49a4_04219014","line":256,"range":{"start_line":256,"start_character":9,"end_line":256,"end_character":11},"updated":"2023-01-14 11:38:25.000000000","message":"copy paste error 2.94","commit_id":"dff9d018a1bbcff15dac9179cd3b122be40d302b"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"7ee344ad1cc549dcdf27774f77d6f1d052bfba91","unresolved":false,"context_lines":[{"line_number":253,"context_line":"             ``POST /os-keypairs`` and allow including @ and dot (.) characters"},{"line_number":254,"context_line":"             in keypair name."},{"line_number":255,"context_line":"    * 2.93 - Add support for volume backed server rebuild."},{"line_number":256,"context_line":"    * 2.93 - Allow FQDN in server hostname."},{"line_number":257,"context_line":"\"\"\""},{"line_number":258,"context_line":""},{"line_number":259,"context_line":"# The minimum and maximum versions of the API supported"}],"source_content_type":"text/x-python","patch_set":2,"id":"0a2913ec_29318f4b","line":256,"range":{"start_line":256,"start_character":9,"end_line":256,"end_character":11},"in_reply_to":"5519cc66_fa78477c","updated":"2023-01-18 06:14:05.000000000","message":"Done","commit_id":"dff9d018a1bbcff15dac9179cd3b122be40d302b"},{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"532192a4867033d2363b8c0647b57304ff3b8a84","unresolved":true,"context_lines":[{"line_number":253,"context_line":"             ``POST /os-keypairs`` and allow including @ and dot (.) characters"},{"line_number":254,"context_line":"             in keypair name."},{"line_number":255,"context_line":"    * 2.93 - Add support for volume backed server rebuild."},{"line_number":256,"context_line":"    * 2.93 - Allow FQDN in server hostname."},{"line_number":257,"context_line":"\"\"\""},{"line_number":258,"context_line":""},{"line_number":259,"context_line":"# The minimum and maximum versions of the API supported"}],"source_content_type":"text/x-python","patch_set":2,"id":"5519cc66_fa78477c","line":256,"range":{"start_line":256,"start_character":9,"end_line":256,"end_character":11},"in_reply_to":"a80f49a4_04219014","updated":"2023-01-14 13:11:12.000000000","message":"Gdi","commit_id":"dff9d018a1bbcff15dac9179cd3b122be40d302b"}],"nova/api/openstack/compute/rest_api_version_history.rst":[{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"4e422c7cc27fdb685175df153cf3ebf004a0d1ca","unresolved":true,"context_lines":[{"line_number":1233,"context_line":"2.94"},{"line_number":1234,"context_line":"---------------------"},{"line_number":1235,"context_line":""},{"line_number":1236,"context_line":"Extend microversion 2.90 by allowing Fully Qualified Domain Names (FQDN) in"},{"line_number":1237,"context_line":"server hostname."}],"source_content_type":"text/x-rst","patch_set":5,"id":"d5b20368_c11eee7c","line":1236,"range":{"start_line":1236,"start_character":0,"end_line":1236,"end_character":24},"updated":"2023-01-17 14:28:09.000000000","message":"nit : Well, I\u0027d prefer to not mention an older microversion and just mention the API calls that are impacted (create, update, rebuild) but let\u0027s not hold this patch on that concern.","commit_id":"59bfdb723c70af2b2f12c0211ed293bd6978603a"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"7ee344ad1cc549dcdf27774f77d6f1d052bfba91","unresolved":false,"context_lines":[{"line_number":1233,"context_line":"2.94"},{"line_number":1234,"context_line":"---------------------"},{"line_number":1235,"context_line":""},{"line_number":1236,"context_line":"Extend microversion 2.90 by allowing Fully Qualified Domain Names (FQDN) in"},{"line_number":1237,"context_line":"server hostname."}],"source_content_type":"text/x-rst","patch_set":5,"id":"588cd412_23362b5a","line":1236,"range":{"start_line":1236,"start_character":0,"end_line":1236,"end_character":24},"in_reply_to":"0d0db5fc_493c22eb","updated":"2023-01-18 06:14:05.000000000","message":"Done","commit_id":"59bfdb723c70af2b2f12c0211ed293bd6978603a"},{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"947fbcecea4d7610252c504a4033f5da140223d7","unresolved":true,"context_lines":[{"line_number":1233,"context_line":"2.94"},{"line_number":1234,"context_line":"---------------------"},{"line_number":1235,"context_line":""},{"line_number":1236,"context_line":"Extend microversion 2.90 by allowing Fully Qualified Domain Names (FQDN) in"},{"line_number":1237,"context_line":"server hostname."}],"source_content_type":"text/x-rst","patch_set":5,"id":"0d0db5fc_493c22eb","line":1236,"range":{"start_line":1236,"start_character":0,"end_line":1236,"end_character":24},"in_reply_to":"d5b20368_c11eee7c","updated":"2023-01-17 14:47:31.000000000","message":"Fair, lemme change it.","commit_id":"59bfdb723c70af2b2f12c0211ed293bd6978603a"}],"nova/api/openstack/compute/schemas/servers.py":[{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"3b932e0289ddf5631755f88973bf374ce37b8d9c","unresolved":true,"context_lines":[{"line_number":364,"context_line":"create_v294 \u003d copy.deepcopy(create_v290)"},{"line_number":365,"context_line":"create_v294[\u0027properties\u0027][\u0027server\u0027]["},{"line_number":366,"context_line":"    \u0027properties\u0027][\u0027hostname\u0027] \u003d parameter_types.fqdn"},{"line_number":367,"context_line":""},{"line_number":368,"context_line":"update \u003d {"},{"line_number":369,"context_line":"    \u0027type\u0027: \u0027object\u0027,"},{"line_number":370,"context_line":"    \u0027properties\u0027: {"}],"source_content_type":"text/x-python","patch_set":2,"id":"1a37aa08_55a3c907","line":367,"updated":"2023-01-14 11:41:19.000000000","message":"this is  the main change for everyone else.\n\nwe already have an FQDN type for validation so \n\n[\n    \u0027properties\u0027][\u0027hostname\u0027] \u003d parameter_types.hostname\n\nto \n\n[\n    \u0027properties\u0027][\u0027hostname\u0027] \u003d parameter_types.fqdn\n    \n    is really all that is needed to enabel teh new functionaltiy","commit_id":"dff9d018a1bbcff15dac9179cd3b122be40d302b"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"4e422c7cc27fdb685175df153cf3ebf004a0d1ca","unresolved":true,"context_lines":[{"line_number":364,"context_line":"create_v294 \u003d copy.deepcopy(create_v290)"},{"line_number":365,"context_line":"create_v294[\u0027properties\u0027][\u0027server\u0027]["},{"line_number":366,"context_line":"    \u0027properties\u0027][\u0027hostname\u0027] \u003d parameter_types.fqdn"},{"line_number":367,"context_line":""},{"line_number":368,"context_line":"update \u003d {"},{"line_number":369,"context_line":"    \u0027type\u0027: \u0027object\u0027,"},{"line_number":370,"context_line":"    \u0027properties\u0027: {"}],"source_content_type":"text/x-python","patch_set":2,"id":"89d7be1e_8f3a04f9","line":367,"in_reply_to":"1a37aa08_55a3c907","updated":"2023-01-17 14:28:09.000000000","message":"Yup, I think we understood it. This microversion is just about changing the input validation on a specific field.","commit_id":"dff9d018a1bbcff15dac9179cd3b122be40d302b"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"7ee344ad1cc549dcdf27774f77d6f1d052bfba91","unresolved":false,"context_lines":[{"line_number":364,"context_line":"create_v294 \u003d copy.deepcopy(create_v290)"},{"line_number":365,"context_line":"create_v294[\u0027properties\u0027][\u0027server\u0027]["},{"line_number":366,"context_line":"    \u0027properties\u0027][\u0027hostname\u0027] \u003d parameter_types.fqdn"},{"line_number":367,"context_line":""},{"line_number":368,"context_line":"update \u003d {"},{"line_number":369,"context_line":"    \u0027type\u0027: \u0027object\u0027,"},{"line_number":370,"context_line":"    \u0027properties\u0027: {"}],"source_content_type":"text/x-python","patch_set":2,"id":"cbf37274_5dba7c48","line":367,"in_reply_to":"89d7be1e_8f3a04f9","updated":"2023-01-18 06:14:05.000000000","message":"Ack","commit_id":"dff9d018a1bbcff15dac9179cd3b122be40d302b"}],"nova/api/validation/parameter_types.py":[{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"947fbcecea4d7610252c504a4033f5da140223d7","unresolved":true,"context_lines":[{"line_number":270,"context_line":"#"},{"line_number":271,"context_line":"#   Host software MUST handle host names of up to 63 characters and SHOULD"},{"line_number":272,"context_line":"#   handle host names of up to 255 characters."},{"line_number":273,"context_line":"hostname \u003d {"},{"line_number":274,"context_line":"    \u0027type\u0027: \u0027string\u0027,"},{"line_number":275,"context_line":"    \u0027minLength\u0027: 2,"},{"line_number":276,"context_line":"    \u0027maxLength\u0027: 63,"}],"source_content_type":"text/x-python","patch_set":5,"id":"22e741e9_0d363b6a","line":273,"updated":"2023-01-17 14:47:31.000000000","message":"Both hostname...","commit_id":"59bfdb723c70af2b2f12c0211ed293bd6978603a"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"9909c04407b087bd11a5175ba5439c831021b0ee","unresolved":false,"context_lines":[{"line_number":270,"context_line":"#"},{"line_number":271,"context_line":"#   Host software MUST handle host names of up to 63 characters and SHOULD"},{"line_number":272,"context_line":"#   handle host names of up to 255 characters."},{"line_number":273,"context_line":"hostname \u003d {"},{"line_number":274,"context_line":"    \u0027type\u0027: \u0027string\u0027,"},{"line_number":275,"context_line":"    \u0027minLength\u0027: 2,"},{"line_number":276,"context_line":"    \u0027maxLength\u0027: 63,"}],"source_content_type":"text/x-python","patch_set":5,"id":"9fd790fa_2a869e61","line":273,"in_reply_to":"22e741e9_0d363b6a","updated":"2023-01-17 14:58:58.000000000","message":"Ack","commit_id":"59bfdb723c70af2b2f12c0211ed293bd6978603a"},{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"947fbcecea4d7610252c504a4033f5da140223d7","unresolved":true,"context_lines":[{"line_number":277,"context_line":"    \u0027pattern\u0027: \u0027^[a-zA-Z0-9]+[a-zA-Z0-9-]*[a-zA-Z0-9]+$\u0027,"},{"line_number":278,"context_line":"}"},{"line_number":279,"context_line":""},{"line_number":280,"context_line":"fqdn \u003d {"},{"line_number":281,"context_line":"    \u0027type\u0027: \u0027string\u0027, \u0027minLength\u0027: 1, \u0027maxLength\u0027: 255,"},{"line_number":282,"context_line":"    # NOTE: \u0027host\u0027 is defined in \"services\" table, and that"},{"line_number":283,"context_line":"    # means a hostname. The hostname grammar in RFC952 does"}],"source_content_type":"text/x-python","patch_set":5,"id":"8cccf1a6_f5ed2a04","line":280,"updated":"2023-01-17 14:47:31.000000000","message":"And fqdn are ASCII, not i18n characters allows","commit_id":"59bfdb723c70af2b2f12c0211ed293bd6978603a"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"9909c04407b087bd11a5175ba5439c831021b0ee","unresolved":false,"context_lines":[{"line_number":277,"context_line":"    \u0027pattern\u0027: \u0027^[a-zA-Z0-9]+[a-zA-Z0-9-]*[a-zA-Z0-9]+$\u0027,"},{"line_number":278,"context_line":"}"},{"line_number":279,"context_line":""},{"line_number":280,"context_line":"fqdn \u003d {"},{"line_number":281,"context_line":"    \u0027type\u0027: \u0027string\u0027, \u0027minLength\u0027: 1, \u0027maxLength\u0027: 255,"},{"line_number":282,"context_line":"    # NOTE: \u0027host\u0027 is defined in \"services\" table, and that"},{"line_number":283,"context_line":"    # means a hostname. The hostname grammar in RFC952 does"}],"source_content_type":"text/x-python","patch_set":5,"id":"c8d982dc_4d0207a0","line":280,"in_reply_to":"8cccf1a6_f5ed2a04","updated":"2023-01-17 14:58:58.000000000","message":"Ack","commit_id":"59bfdb723c70af2b2f12c0211ed293bd6978603a"}],"nova/conf/api.py":[{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"a411a85c2c3c420905311f579e0851933aae0992","unresolved":true,"context_lines":[{"line_number":221,"context_line":"\"\"\"),"},{"line_number":222,"context_line":"    cfg.StrOpt(\"dhcp_domain\","},{"line_number":223,"context_line":"        deprecated_group\u003d\"DEFAULT\","},{"line_number":224,"context_line":"        default\u003d\"novalocal\","},{"line_number":225,"context_line":"        help\u003d\"\"\""},{"line_number":226,"context_line":"Domain name used to configure FQDN for instances."},{"line_number":227,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"fd383703_e81eba6f","line":224,"updated":"2023-01-14 13:24:35.000000000","message":"[1/3] This has a default value, meaning FQDN hostnames will not work properly out of the box.","commit_id":"3553ac57c0ea96b513cb0d9a3ba4d55b680fe86b"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"7ee344ad1cc549dcdf27774f77d6f1d052bfba91","unresolved":false,"context_lines":[{"line_number":221,"context_line":"\"\"\"),"},{"line_number":222,"context_line":"    cfg.StrOpt(\"dhcp_domain\","},{"line_number":223,"context_line":"        deprecated_group\u003d\"DEFAULT\","},{"line_number":224,"context_line":"        default\u003d\"novalocal\","},{"line_number":225,"context_line":"        help\u003d\"\"\""},{"line_number":226,"context_line":"Domain name used to configure FQDN for instances."},{"line_number":227,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"0320f183_b6acec85","line":224,"in_reply_to":"fd383703_e81eba6f","updated":"2023-01-18 06:14:05.000000000","message":"Ack","commit_id":"3553ac57c0ea96b513cb0d9a3ba4d55b680fe86b"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"4e422c7cc27fdb685175df153cf3ebf004a0d1ca","unresolved":false,"context_lines":[{"line_number":229,"context_line":"suffixed to the instance hostname from the database to construct the hostname"},{"line_number":230,"context_line":"that appears in the metadata API. To disable this behavior (for example in"},{"line_number":231,"context_line":"order to correctly support microversion\u0027s 2.94 FQDN hostnames), set this to the"},{"line_number":232,"context_line":"empty string."},{"line_number":233,"context_line":""},{"line_number":234,"context_line":"Possible values:"},{"line_number":235,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"dd69b727_4fb89690","line":232,"updated":"2023-01-17 14:28:09.000000000","message":"this looks well explained to me.","commit_id":"59bfdb723c70af2b2f12c0211ed293bd6978603a"}],"nova/tests/functional/api_sample_tests/api_samples/servers/v2.94/server-action-rebuild.json.tpl":[{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"4e422c7cc27fdb685175df153cf3ebf004a0d1ca","unresolved":true,"context_lines":[{"line_number":6,"context_line":"        \"imageRef\" : \"%(uuid)s\","},{"line_number":7,"context_line":"        \"name\" : \"%(name)s\","},{"line_number":8,"context_line":"        \"adminPass\" : \"%(pass)s\","},{"line_number":9,"context_line":"        \"hostname\": \"%(hostname)s\","},{"line_number":10,"context_line":"        \"metadata\" : {"},{"line_number":11,"context_line":"            \"meta_var\" : \"meta_val\""},{"line_number":12,"context_line":"        },"}],"source_content_type":"text/x-smarty","patch_set":5,"id":"8460729f_b0a355a4","line":9,"updated":"2023-01-17 14:28:09.000000000","message":"here, you don\u0027t explicitely test a FQDN for rebuild, but maybe you\u0027ve done it in the tests themselves.","commit_id":"59bfdb723c70af2b2f12c0211ed293bd6978603a"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"7ee344ad1cc549dcdf27774f77d6f1d052bfba91","unresolved":false,"context_lines":[{"line_number":6,"context_line":"        \"imageRef\" : \"%(uuid)s\","},{"line_number":7,"context_line":"        \"name\" : \"%(name)s\","},{"line_number":8,"context_line":"        \"adminPass\" : \"%(pass)s\","},{"line_number":9,"context_line":"        \"hostname\": \"%(hostname)s\","},{"line_number":10,"context_line":"        \"metadata\" : {"},{"line_number":11,"context_line":"            \"meta_var\" : \"meta_val\""},{"line_number":12,"context_line":"        },"}],"source_content_type":"text/x-smarty","patch_set":5,"id":"bd7981f4_b73dcb8f","line":9,"in_reply_to":"47611489_18c154b0","updated":"2023-01-18 06:14:05.000000000","message":"Ack","commit_id":"59bfdb723c70af2b2f12c0211ed293bd6978603a"},{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"947fbcecea4d7610252c504a4033f5da140223d7","unresolved":true,"context_lines":[{"line_number":6,"context_line":"        \"imageRef\" : \"%(uuid)s\","},{"line_number":7,"context_line":"        \"name\" : \"%(name)s\","},{"line_number":8,"context_line":"        \"adminPass\" : \"%(pass)s\","},{"line_number":9,"context_line":"        \"hostname\": \"%(hostname)s\","},{"line_number":10,"context_line":"        \"metadata\" : {"},{"line_number":11,"context_line":"            \"meta_var\" : \"meta_val\""},{"line_number":12,"context_line":"        },"}],"source_content_type":"text/x-smarty","patch_set":5,"id":"47611489_18c154b0","line":9,"in_reply_to":"8460729f_b0a355a4","updated":"2023-01-17 14:47:31.000000000","message":"Well it\u0027s a template, the important part is what we sub in :)","commit_id":"59bfdb723c70af2b2f12c0211ed293bd6978603a"}],"nova/tests/functional/api_sample_tests/api_samples/servers/v2.94/server-create-req.json.tpl":[{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"4e422c7cc27fdb685175df153cf3ebf004a0d1ca","unresolved":false,"context_lines":[{"line_number":16,"context_line":"        ],"},{"line_number":17,"context_line":"        \"user_data\" : \"%(user_data)s\","},{"line_number":18,"context_line":"        \"networks\": \"auto\","},{"line_number":19,"context_line":"        \"hostname\": \"custom-hostname.example.com\""},{"line_number":20,"context_line":"    }"},{"line_number":21,"context_line":"}"}],"source_content_type":"text/x-smarty","patch_set":5,"id":"f31f5161_8a9d3d9f","line":19,"updated":"2023-01-17 14:28:09.000000000","message":"here, you force a FQDN for the functests, +1.","commit_id":"59bfdb723c70af2b2f12c0211ed293bd6978603a"}],"nova/tests/functional/api_sample_tests/api_samples/servers/v2.94/server-update-req.json.tpl":[{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"4e422c7cc27fdb685175df153cf3ebf004a0d1ca","unresolved":false,"context_lines":[{"line_number":3,"context_line":"        \"accessIPv4\": \"%(access_ip_v4)s\","},{"line_number":4,"context_line":"        \"accessIPv6\": \"%(access_ip_v6)s\","},{"line_number":5,"context_line":"        \"OS-DCF:diskConfig\": \"AUTO\","},{"line_number":6,"context_line":"        \"hostname\": \"new-server-hostname.example.com\""},{"line_number":7,"context_line":"    }"},{"line_number":8,"context_line":"}"}],"source_content_type":"text/x-smarty","patch_set":5,"id":"16101256_bab52057","line":6,"updated":"2023-01-17 14:28:09.000000000","message":"ack, you force the functests to validate an FQDN-typed hostname. +1 to me.","commit_id":"59bfdb723c70af2b2f12c0211ed293bd6978603a"}],"nova/tests/functional/api_sample_tests/test_servers.py":[{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"4e422c7cc27fdb685175df153cf3ebf004a0d1ca","unresolved":true,"context_lines":[{"line_number":734,"context_line":"            \u0027hostid\u0027: \u0027[a-f0-9]+\u0027,"},{"line_number":735,"context_line":"            \u0027access_ip_v4\u0027: \u00271.2.3.4\u0027,"},{"line_number":736,"context_line":"            \u0027access_ip_v6\u0027: \u002780fe::\u0027,"},{"line_number":737,"context_line":"            \u0027hostname\u0027: \u0027updated-hostname.example.com\u0027,"},{"line_number":738,"context_line":"        }"},{"line_number":739,"context_line":""},{"line_number":740,"context_line":"        resp \u003d self._do_post("}],"source_content_type":"text/x-python","patch_set":5,"id":"4dce5504_8ce55966","line":737,"updated":"2023-01-17 14:28:09.000000000","message":"indeed, you tested the FQDN this way with rebuild. OK.","commit_id":"59bfdb723c70af2b2f12c0211ed293bd6978603a"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"7ee344ad1cc549dcdf27774f77d6f1d052bfba91","unresolved":false,"context_lines":[{"line_number":734,"context_line":"            \u0027hostid\u0027: \u0027[a-f0-9]+\u0027,"},{"line_number":735,"context_line":"            \u0027access_ip_v4\u0027: \u00271.2.3.4\u0027,"},{"line_number":736,"context_line":"            \u0027access_ip_v6\u0027: \u002780fe::\u0027,"},{"line_number":737,"context_line":"            \u0027hostname\u0027: \u0027updated-hostname.example.com\u0027,"},{"line_number":738,"context_line":"        }"},{"line_number":739,"context_line":""},{"line_number":740,"context_line":"        resp \u003d self._do_post("}],"source_content_type":"text/x-python","patch_set":5,"id":"0ba65efe_15910534","line":737,"in_reply_to":"4dce5504_8ce55966","updated":"2023-01-18 06:14:05.000000000","message":"Ack","commit_id":"59bfdb723c70af2b2f12c0211ed293bd6978603a"}],"releasenotes/notes/microversion-2-94-59649401d5763286.yaml":[{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"a411a85c2c3c420905311f579e0851933aae0992","unresolved":true,"context_lines":[{"line_number":6,"context_line":"    the ``hostname`` is able to be specified. This consists of creating an"},{"line_number":7,"context_line":"    instance (``POST /servers``), updating an instance"},{"line_number":8,"context_line":"    (``PUT /servers/{id}``), or rebuilding an instance"},{"line_number":9,"context_line":"    (``POST /servers/{server_id}/action (rebuild)``). Using an FQDN as the"},{"line_number":10,"context_line":"    instance hostname is mutually exclusive with setting the ``[api]dhcp_domain``"},{"line_number":11,"context_line":"    configuration option. If the latter is set and FQDN hostnames are used, the"},{"line_number":12,"context_line":"    hostname in the metadata API will be incorrect."}],"source_content_type":"text/x-yaml","patch_set":4,"id":"b5647700_401ae93e","line":12,"range":{"start_line":9,"start_character":54,"end_line":12,"end_character":51},"updated":"2023-01-14 13:24:35.000000000","message":"[3/3] Or just leave this in the release note and count on operators to unset [api]dhcp_domain if they want to use FQDN? It\u0027s kinda weird to set an empty string value though (there\u0027s a default \u0027novalocal\u0027 value, so omitting the config option entirely is not possible).","commit_id":"3553ac57c0ea96b513cb0d9a3ba4d55b680fe86b"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"7ee344ad1cc549dcdf27774f77d6f1d052bfba91","unresolved":false,"context_lines":[{"line_number":6,"context_line":"    the ``hostname`` is able to be specified. This consists of creating an"},{"line_number":7,"context_line":"    instance (``POST /servers``), updating an instance"},{"line_number":8,"context_line":"    (``PUT /servers/{id}``), or rebuilding an instance"},{"line_number":9,"context_line":"    (``POST /servers/{server_id}/action (rebuild)``). Using an FQDN as the"},{"line_number":10,"context_line":"    instance hostname is mutually exclusive with setting the ``[api]dhcp_domain``"},{"line_number":11,"context_line":"    configuration option. If the latter is set and FQDN hostnames are used, the"},{"line_number":12,"context_line":"    hostname in the metadata API will be incorrect."}],"source_content_type":"text/x-yaml","patch_set":4,"id":"e2a24d26_b0fd85ae","line":12,"range":{"start_line":9,"start_character":54,"end_line":12,"end_character":51},"in_reply_to":"701de78c_9ac92f49","updated":"2023-01-18 06:14:05.000000000","message":"Ack","commit_id":"3553ac57c0ea96b513cb0d9a3ba4d55b680fe86b"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"5e738a23047fa49a01ad9fa16d7e22780bde4625","unresolved":true,"context_lines":[{"line_number":6,"context_line":"    the ``hostname`` is able to be specified. This consists of creating an"},{"line_number":7,"context_line":"    instance (``POST /servers``), updating an instance"},{"line_number":8,"context_line":"    (``PUT /servers/{id}``), or rebuilding an instance"},{"line_number":9,"context_line":"    (``POST /servers/{server_id}/action (rebuild)``). Using an FQDN as the"},{"line_number":10,"context_line":"    instance hostname is mutually exclusive with setting the ``[api]dhcp_domain``"},{"line_number":11,"context_line":"    configuration option. If the latter is set and FQDN hostnames are used, the"},{"line_number":12,"context_line":"    hostname in the metadata API will be incorrect."}],"source_content_type":"text/x-yaml","patch_set":4,"id":"701de78c_9ac92f49","line":12,"range":{"start_line":9,"start_character":54,"end_line":12,"end_character":51},"in_reply_to":"b5647700_401ae93e","updated":"2023-01-14 22:34:03.000000000","message":"setting it to empty string is already somthing at least some operators use.\nmel can confim but im pretty sure she said yahoo used to deploy with it set to empty string explictly to disable it.","commit_id":"3553ac57c0ea96b513cb0d9a3ba4d55b680fe86b"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"4e422c7cc27fdb685175df153cf3ebf004a0d1ca","unresolved":true,"context_lines":[{"line_number":7,"context_line":"    instance (``POST /servers``), updating an instance"},{"line_number":8,"context_line":"    (``PUT /servers/{id}``), or rebuilding an instance"},{"line_number":9,"context_line":"    (``POST /servers/{server_id}/action (rebuild)``). Using an FQDN as the"},{"line_number":10,"context_line":"    instance hostname is mutually exclusive with setting the ``[api]dhcp_domain``"},{"line_number":11,"context_line":"    configuration option. If the latter is set and FQDN hostnames are used, the"},{"line_number":12,"context_line":"    hostname in the metadata API will be incorrect."}],"source_content_type":"text/x-yaml","patch_set":5,"id":"408fc36f_25fc28a0","line":10,"range":{"start_line":10,"start_character":22,"end_line":10,"end_character":43},"updated":"2023-01-17 14:28:09.000000000","message":"well, it\u0027s not automatically exclusive, right? Operators have to modify their clouds in order to do this after upgrading.","commit_id":"59bfdb723c70af2b2f12c0211ed293bd6978603a"},{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"947fbcecea4d7610252c504a4033f5da140223d7","unresolved":true,"context_lines":[{"line_number":7,"context_line":"    instance (``POST /servers``), updating an instance"},{"line_number":8,"context_line":"    (``PUT /servers/{id}``), or rebuilding an instance"},{"line_number":9,"context_line":"    (``POST /servers/{server_id}/action (rebuild)``). Using an FQDN as the"},{"line_number":10,"context_line":"    instance hostname is mutually exclusive with setting the ``[api]dhcp_domain``"},{"line_number":11,"context_line":"    configuration option. If the latter is set and FQDN hostnames are used, the"},{"line_number":12,"context_line":"    hostname in the metadata API will be incorrect."}],"source_content_type":"text/x-yaml","patch_set":5,"id":"79734652_aacc529e","line":10,"range":{"start_line":10,"start_character":22,"end_line":10,"end_character":43},"in_reply_to":"408fc36f_25fc28a0","updated":"2023-01-17 14:47:31.000000000","message":"OK, let me reword this.","commit_id":"59bfdb723c70af2b2f12c0211ed293bd6978603a"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"7ee344ad1cc549dcdf27774f77d6f1d052bfba91","unresolved":false,"context_lines":[{"line_number":7,"context_line":"    instance (``POST /servers``), updating an instance"},{"line_number":8,"context_line":"    (``PUT /servers/{id}``), or rebuilding an instance"},{"line_number":9,"context_line":"    (``POST /servers/{server_id}/action (rebuild)``). Using an FQDN as the"},{"line_number":10,"context_line":"    instance hostname is mutually exclusive with setting the ``[api]dhcp_domain``"},{"line_number":11,"context_line":"    configuration option. If the latter is set and FQDN hostnames are used, the"},{"line_number":12,"context_line":"    hostname in the metadata API will be incorrect."}],"source_content_type":"text/x-yaml","patch_set":5,"id":"21ce3810_a5d72875","line":10,"range":{"start_line":10,"start_character":22,"end_line":10,"end_character":43},"in_reply_to":"79734652_aacc529e","updated":"2023-01-18 06:14:05.000000000","message":"Done","commit_id":"59bfdb723c70af2b2f12c0211ed293bd6978603a"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"4e422c7cc27fdb685175df153cf3ebf004a0d1ca","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":5,"id":"76ff3129_2086e0a3","line":13,"updated":"2023-01-17 14:28:09.000000000","message":"there could be an upgrade note to add : once operators upgrade to Antelope, users could ask for FQDN-styled hostnames which would break if dhcp_domain is set. They would need to consider removing this if they want to.","commit_id":"59bfdb723c70af2b2f12c0211ed293bd6978603a"},{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"947fbcecea4d7610252c504a4033f5da140223d7","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":5,"id":"64ece3b0_92a88017","line":13,"in_reply_to":"76ff3129_2086e0a3","updated":"2023-01-17 14:47:31.000000000","message":"Done","commit_id":"59bfdb723c70af2b2f12c0211ed293bd6978603a"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"b04a22ef3fe7bd7c891433549a4692f705aaa881","unresolved":true,"context_lines":[{"line_number":19,"context_line":"    incorrect, as it will include the value of ``[api]dhcp_domain`` appended to"},{"line_number":20,"context_line":"    the instance\u0027s FQDN. Note that simply not setting ``[api]dhcp_domain`` is"},{"line_number":21,"context_line":"    not enough, as it has a default value of ``novalocal``. It must explicitly"},{"line_number":22,"context_line":"    be set to the empty string."}],"source_content_type":"text/x-yaml","patch_set":6,"id":"d1e7f08e_2de0e1c3","line":22,"updated":"2023-01-20 14:20:16.000000000","message":"++","commit_id":"9980b9ad52a24998bc36fc191118a3d924b0a880"}]}
