)]}'
{"doc/source/user/config/configuration.rst":[{"author":{"_account_id":13252,"name":"Dr. Jens Harbott","display_name":"Jens Harbott (frickler)","email":"frickler@offenerstapel.de","username":"jrosenboom"},"change_message_id":"1f4dfcf035c33eebaf9ec2e36ff817a9eca6c93e","unresolved":false,"context_lines":[{"line_number":258,"context_line":"supports it and if your local network supports it. Both of those are"},{"line_number":259,"context_line":"easily detectable and all friendly software should do the right thing."},{"line_number":260,"context_line":""},{"line_number":261,"context_line":"However, sometimes a cloud API may return IPv6 information that it is"},{"line_number":262,"context_line":"not useful to a production deployment.  For example, the API may"},{"line_number":263,"context_line":"provide an IPv6 address for a server, but not provide that to the host"},{"line_number":264,"context_line":"instance via metadata (configdrive) or standard IPv6 autoconfiguration"}],"source_content_type":"text/x-rst","patch_set":1,"id":"bf51134e_907c7321","line":261,"range":{"start_line":261,"start_character":64,"end_line":261,"end_character":66},"updated":"2020-07-03 06:20:03.000000000","message":"\"... that is not useful ...\"?","commit_id":"c81e58e32c267e584188f28d976356f5632d944d"},{"author":{"_account_id":7118,"name":"Ian Wienand","email":"iwienand@redhat.com","username":"iwienand"},"change_message_id":"980de90aa5f609047fa87fe31c281aa6cd4671a8","unresolved":false,"context_lines":[{"line_number":258,"context_line":"supports it and if your local network supports it. Both of those are"},{"line_number":259,"context_line":"easily detectable and all friendly software should do the right thing."},{"line_number":260,"context_line":""},{"line_number":261,"context_line":"However, sometimes a cloud API may return IPv6 information that it is"},{"line_number":262,"context_line":"not useful to a production deployment.  For example, the API may"},{"line_number":263,"context_line":"provide an IPv6 address for a server, but not provide that to the host"},{"line_number":264,"context_line":"instance via metadata (configdrive) or standard IPv6 autoconfiguration"}],"source_content_type":"text/x-rst","patch_set":1,"id":"bf51134e_90263316","line":261,"range":{"start_line":261,"start_character":64,"end_line":261,"end_character":66},"in_reply_to":"bf51134e_907c7321","updated":"2020-07-03 06:33:35.000000000","message":"Done","commit_id":"c81e58e32c267e584188f28d976356f5632d944d"},{"author":{"_account_id":13252,"name":"Dr. Jens Harbott","display_name":"Jens Harbott (frickler)","email":"frickler@offenerstapel.de","username":"jrosenboom"},"change_message_id":"1f4dfcf035c33eebaf9ec2e36ff817a9eca6c93e","unresolved":false,"context_lines":[{"line_number":265,"context_line":"methods (i.e. the host either needs to make a bespoke API call, or"},{"line_number":266,"context_line":"otherwise statically configure itself)."},{"line_number":267,"context_line":""},{"line_number":268,"context_line":"For such situations, you can set the `force_ipv4`, or `OS_FORCE_IPV4`"},{"line_number":269,"context_line":"boolean environment variable.  For example:"},{"line_number":270,"context_line":""},{"line_number":271,"context_line":".. code-block:: yaml"}],"source_content_type":"text/x-rst","patch_set":1,"id":"bf51134e_b0eff7ae","line":268,"range":{"start_line":268,"start_character":37,"end_line":268,"end_character":68},"updated":"2020-07-03 06:20:03.000000000","message":"This seems broken through most of this document, but make these quotes double backticks, too?","commit_id":"c81e58e32c267e584188f28d976356f5632d944d"},{"author":{"_account_id":7118,"name":"Ian Wienand","email":"iwienand@redhat.com","username":"iwienand"},"change_message_id":"980de90aa5f609047fa87fe31c281aa6cd4671a8","unresolved":false,"context_lines":[{"line_number":265,"context_line":"methods (i.e. the host either needs to make a bespoke API call, or"},{"line_number":266,"context_line":"otherwise statically configure itself)."},{"line_number":267,"context_line":""},{"line_number":268,"context_line":"For such situations, you can set the `force_ipv4`, or `OS_FORCE_IPV4`"},{"line_number":269,"context_line":"boolean environment variable.  For example:"},{"line_number":270,"context_line":""},{"line_number":271,"context_line":".. code-block:: yaml"}],"source_content_type":"text/x-rst","patch_set":1,"id":"bf51134e_70239f06","line":268,"range":{"start_line":268,"start_character":37,"end_line":268,"end_character":68},"in_reply_to":"bf51134e_b0eff7ae","updated":"2020-07-03 06:33:35.000000000","message":"Done","commit_id":"c81e58e32c267e584188f28d976356f5632d944d"},{"author":{"_account_id":13252,"name":"Dr. Jens Harbott","display_name":"Jens Harbott (frickler)","email":"frickler@offenerstapel.de","username":"jrosenboom"},"change_message_id":"1f4dfcf035c33eebaf9ec2e36ff817a9eca6c93e","unresolved":false,"context_lines":[{"line_number":270,"context_line":""},{"line_number":271,"context_line":".. code-block:: yaml"},{"line_number":272,"context_line":""},{"line_number":273,"context_line":"  client:"},{"line_number":274,"context_line":"    force_ipv4: true"},{"line_number":275,"context_line":"  clouds:"},{"line_number":276,"context_line":"    mtvexx:"},{"line_number":277,"context_line":"      profile: vexxhost"}],"source_content_type":"text/x-rst","patch_set":1,"id":"bf51134e_50981b69","line":274,"range":{"start_line":273,"start_character":0,"end_line":274,"end_character":20},"updated":"2020-07-03 06:20:03.000000000","message":"Not immediately related to this patch, but I\u0027d like to see some note also about why this is added to the client section. From my understanding, this should be a per cloud parameter. What if I have two clouds and only one of them needs this workaround? Does that mean that I cannot handle the two of them in the same clouds.yaml?","commit_id":"c81e58e32c267e584188f28d976356f5632d944d"},{"author":{"_account_id":7118,"name":"Ian Wienand","email":"iwienand@redhat.com","username":"iwienand"},"change_message_id":"980de90aa5f609047fa87fe31c281aa6cd4671a8","unresolved":false,"context_lines":[{"line_number":270,"context_line":""},{"line_number":271,"context_line":".. code-block:: yaml"},{"line_number":272,"context_line":""},{"line_number":273,"context_line":"  client:"},{"line_number":274,"context_line":"    force_ipv4: true"},{"line_number":275,"context_line":"  clouds:"},{"line_number":276,"context_line":"    mtvexx:"},{"line_number":277,"context_line":"      profile: vexxhost"}],"source_content_type":"text/x-rst","patch_set":1,"id":"bf51134e_90547356","line":274,"range":{"start_line":273,"start_character":0,"end_line":274,"end_character":20},"in_reply_to":"bf51134e_50981b69","updated":"2020-07-03 06:33:35.000000000","message":"I think this can be set at both levels.  I\u0027ve updated the example.","commit_id":"c81e58e32c267e584188f28d976356f5632d944d"},{"author":{"_account_id":13252,"name":"Dr. Jens Harbott","display_name":"Jens Harbott (frickler)","email":"frickler@offenerstapel.de","username":"jrosenboom"},"change_message_id":"b4feff56949737e7be4f22429c3397318ad369f3","unresolved":false,"context_lines":[{"line_number":272,"context_line":""},{"line_number":273,"context_line":"  clouds:"},{"line_number":274,"context_line":"    mtvexx:"},{"line_number":275,"context_line":"      profile: vexxhost"},{"line_number":276,"context_line":"      auth:"},{"line_number":277,"context_line":"        username: mordred@inaugust.com"},{"line_number":278,"context_line":"        password: XXXXXXXXX"}],"source_content_type":"text/x-rst","patch_set":2,"id":"bf51134e_03bbffe4","line":275,"updated":"2020-07-03 07:30:32.000000000","message":"If you start anonymizing thing, make this \"barprovider\", too?","commit_id":"661a0eb4b514c079f4388fc32850e05b3de045c7"},{"author":{"_account_id":7118,"name":"Ian Wienand","email":"iwienand@redhat.com","username":"iwienand"},"change_message_id":"b6460bfe0218c36593de5b0bb8f9d14f4cf83f96","unresolved":false,"context_lines":[{"line_number":272,"context_line":""},{"line_number":273,"context_line":"  clouds:"},{"line_number":274,"context_line":"    mtvexx:"},{"line_number":275,"context_line":"      profile: vexxhost"},{"line_number":276,"context_line":"      auth:"},{"line_number":277,"context_line":"        username: mordred@inaugust.com"},{"line_number":278,"context_line":"        password: XXXXXXXXX"}],"source_content_type":"text/x-rst","patch_set":2,"id":"bf51134e_9c55ac20","line":275,"in_reply_to":"bf51134e_03bbffe4","updated":"2020-07-03 12:52:03.000000000","message":"Yeah my thought was this had a bit of a negative connotation to it (ipv6 is broken) so didn\u0027t want to put a real provider next to it :)","commit_id":"661a0eb4b514c079f4388fc32850e05b3de045c7"}],"openstack/cloud/meta.py":[{"author":{"_account_id":13252,"name":"Dr. Jens Harbott","display_name":"Jens Harbott (frickler)","email":"frickler@offenerstapel.de","username":"jrosenboom"},"change_message_id":"1f4dfcf035c33eebaf9ec2e36ff817a9eca6c93e","unresolved":false,"context_lines":[{"line_number":449,"context_line":"    # not exist to remain consistent with the pre-existing missing values"},{"line_number":450,"context_line":"    server[\u0027addresses\u0027] \u003d _get_supplemental_addresses(cloud, server)"},{"line_number":451,"context_line":"    server[\u0027public_v4\u0027] \u003d get_server_external_ipv4(cloud, server) or \u0027\u0027"},{"line_number":452,"context_line":"    # If we\u0027re forcing ipv4, then don\u0027t report ipv6 interfaces which"},{"line_number":453,"context_line":"    # are likely to be unconfigured."},{"line_number":454,"context_line":"    if cloud.force_ipv4:"},{"line_number":455,"context_line":"        server[\u0027public_v6\u0027] \u003d \u0027\u0027"}],"source_content_type":"text/x-python","patch_set":1,"id":"bf51134e_10b7c3da","line":452,"updated":"2020-07-03 06:20:03.000000000","message":"Nit: IPv4/6","commit_id":"c81e58e32c267e584188f28d976356f5632d944d"},{"author":{"_account_id":7118,"name":"Ian Wienand","email":"iwienand@redhat.com","username":"iwienand"},"change_message_id":"980de90aa5f609047fa87fe31c281aa6cd4671a8","unresolved":false,"context_lines":[{"line_number":449,"context_line":"    # not exist to remain consistent with the pre-existing missing values"},{"line_number":450,"context_line":"    server[\u0027addresses\u0027] \u003d _get_supplemental_addresses(cloud, server)"},{"line_number":451,"context_line":"    server[\u0027public_v4\u0027] \u003d get_server_external_ipv4(cloud, server) or \u0027\u0027"},{"line_number":452,"context_line":"    # If we\u0027re forcing ipv4, then don\u0027t report ipv6 interfaces which"},{"line_number":453,"context_line":"    # are likely to be unconfigured."},{"line_number":454,"context_line":"    if cloud.force_ipv4:"},{"line_number":455,"context_line":"        server[\u0027public_v6\u0027] \u003d \u0027\u0027"}],"source_content_type":"text/x-python","patch_set":1,"id":"bf51134e_d04eebbf","line":452,"in_reply_to":"bf51134e_10b7c3da","updated":"2020-07-03 06:33:35.000000000","message":"Done","commit_id":"c81e58e32c267e584188f28d976356f5632d944d"},{"author":{"_account_id":28522,"name":"Hervé Beraud","email":"herveberaud.pro@gmail.com","username":"hberaud"},"change_message_id":"fca5fcc24625f8fc53015617b9a3c4279ca29c87","unresolved":false,"context_lines":[{"line_number":280,"context_line":"    :param server: the server from which we want to get an IPv6 address"},{"line_number":281,"context_line":"    :return: a string containing the IPv6 address or None"},{"line_number":282,"context_line":"    \"\"\""},{"line_number":283,"context_line":"    # Don\u0027t return ipv6 interfaces if forcing IPv4"},{"line_number":284,"context_line":"    if server[\u0027accessIPv6\u0027]:"},{"line_number":285,"context_line":"        return server[\u0027accessIPv6\u0027]"},{"line_number":286,"context_line":"    addresses \u003d find_nova_addresses(addresses\u003dserver[\u0027addresses\u0027], version\u003d6)"}],"source_content_type":"text/x-python","patch_set":2,"id":"bf51134e_9cf92c4f","line":283,"range":{"start_line":283,"start_character":4,"end_line":283,"end_character":50},"updated":"2020-07-03 12:42:38.000000000","message":"Hmmm this comment is a bit ambiguous, we don\u0027t need to check `cloud.force_ipv4` here too?","commit_id":"661a0eb4b514c079f4388fc32850e05b3de045c7"},{"author":{"_account_id":7118,"name":"Ian Wienand","email":"iwienand@redhat.com","username":"iwienand"},"change_message_id":"b9a2953f5756c8a63cbefb1eef7e1a3d204fedb1","unresolved":false,"context_lines":[{"line_number":280,"context_line":"    :param server: the server from which we want to get an IPv6 address"},{"line_number":281,"context_line":"    :return: a string containing the IPv6 address or None"},{"line_number":282,"context_line":"    \"\"\""},{"line_number":283,"context_line":"    # Don\u0027t return ipv6 interfaces if forcing IPv4"},{"line_number":284,"context_line":"    if server[\u0027accessIPv6\u0027]:"},{"line_number":285,"context_line":"        return server[\u0027accessIPv6\u0027]"},{"line_number":286,"context_line":"    addresses \u003d find_nova_addresses(addresses\u003dserver[\u0027addresses\u0027], version\u003d6)"}],"source_content_type":"text/x-python","patch_set":2,"id":"bf51134e_bc06b01f","line":283,"range":{"start_line":283,"start_character":4,"end_line":283,"end_character":50},"in_reply_to":"bf51134e_3cb74089","updated":"2020-07-03 12:53:54.000000000","message":"Oh sorry, I meant to delete that line, I moved the check into the other function because this is mocked in tests","commit_id":"661a0eb4b514c079f4388fc32850e05b3de045c7"},{"author":{"_account_id":28522,"name":"Hervé Beraud","email":"herveberaud.pro@gmail.com","username":"hberaud"},"change_message_id":"3b6b164c5fc669802d330b5396f95ce95795c953","unresolved":false,"context_lines":[{"line_number":280,"context_line":"    :param server: the server from which we want to get an IPv6 address"},{"line_number":281,"context_line":"    :return: a string containing the IPv6 address or None"},{"line_number":282,"context_line":"    \"\"\""},{"line_number":283,"context_line":"    # Don\u0027t return ipv6 interfaces if forcing IPv4"},{"line_number":284,"context_line":"    if server[\u0027accessIPv6\u0027]:"},{"line_number":285,"context_line":"        return server[\u0027accessIPv6\u0027]"},{"line_number":286,"context_line":"    addresses \u003d find_nova_addresses(addresses\u003dserver[\u0027addresses\u0027], version\u003d6)"}],"source_content_type":"text/x-python","patch_set":2,"id":"bf51134e_3cb74089","line":283,"range":{"start_line":283,"start_character":4,"end_line":283,"end_character":50},"in_reply_to":"bf51134e_9cf92c4f","updated":"2020-07-03 12:44:48.000000000","message":"I mean check this on line bellow.","commit_id":"661a0eb4b514c079f4388fc32850e05b3de045c7"}]}
