)]}'
{"neutron/opts.py":[{"author":{"_account_id":5948,"name":"Oleg Bondarev","email":"obondarev@mirantis.com","username":"obondarev"},"change_message_id":"94825b6e4a929ec4b416459eba747b3962d2f581","unresolved":true,"context_lines":[{"line_number":322,"context_line":"    ]"},{"line_number":323,"context_line":""},{"line_number":324,"context_line":""},{"line_number":325,"context_line":"def list_auth_opts():"},{"line_number":326,"context_line":"    opt_list \u003d copy.deepcopy(_nova_options)"},{"line_number":327,"context_line":"    opt_list.insert(0, ks_loading.get_auth_common_conf_options()[0])"},{"line_number":328,"context_line":"    # NOTE(mhickey): There are a lot of auth plugins, we just generate"},{"line_number":329,"context_line":"    # the config options for a few common ones"},{"line_number":330,"context_line":"    plugins \u003d [\u0027password\u0027, \u0027v2password\u0027, \u0027v3password\u0027]"},{"line_number":331,"context_line":"    for name in plugins:"},{"line_number":332,"context_line":"        for plugin_option in ks_loading.get_auth_plugin_conf_options(name):"},{"line_number":333,"context_line":"            if all(option.name !\u003d plugin_option.name for option in opt_list):"},{"line_number":334,"context_line":"                opt_list.append(plugin_option)"},{"line_number":335,"context_line":"    opt_list.sort(key\u003doperator.attrgetter(\u0027name\u0027))"},{"line_number":336,"context_line":"    return [(NOVA_GROUP, opt_list)]"},{"line_number":337,"context_line":""},{"line_number":338,"context_line":""},{"line_number":339,"context_line":"def list_ironic_auth_opts():"},{"line_number":340,"context_line":"    opt_list \u003d copy.deepcopy(_ironic_options)"},{"line_number":341,"context_line":"    opt_list.insert(0, ks_loading.get_auth_common_conf_options()[0])"},{"line_number":342,"context_line":"    # NOTE(mhickey): There are a lot of auth plugins, we just generate"},{"line_number":343,"context_line":"    # the config options for a few common ones"},{"line_number":344,"context_line":"    plugins \u003d [\u0027password\u0027, \u0027v2password\u0027, \u0027v3password\u0027]"},{"line_number":345,"context_line":"    for name in plugins:"},{"line_number":346,"context_line":"        for plugin_option in ks_loading.get_auth_plugin_conf_options(name):"},{"line_number":347,"context_line":"            if all(option.name !\u003d plugin_option.name for option in opt_list):"},{"line_number":348,"context_line":"                opt_list.append(plugin_option)"},{"line_number":349,"context_line":"    opt_list.sort(key\u003doperator.attrgetter(\u0027name\u0027))"},{"line_number":350,"context_line":"    return [(IRONIC_GROUP, opt_list)]"},{"line_number":351,"context_line":""},{"line_number":352,"context_line":""},{"line_number":353,"context_line":"def list_placement_auth_opts():"},{"line_number":354,"context_line":"    opt_list \u003d copy.deepcopy(_placement_options)"},{"line_number":355,"context_line":"    opt_list.insert(0, ks_loading.get_auth_common_conf_options()[0])"},{"line_number":356,"context_line":"    # NOTE(mhickey): There are a lot of auth plugins, we just generate"},{"line_number":357,"context_line":"    # the config options for a few common ones"},{"line_number":358,"context_line":"    plugins \u003d [\u0027password\u0027, \u0027v2password\u0027, \u0027v3password\u0027]"},{"line_number":359,"context_line":"    for name in plugins:"},{"line_number":360,"context_line":"        for plugin_option in ks_loading.get_auth_plugin_conf_options(name):"},{"line_number":361,"context_line":"            if all(option.name !\u003d plugin_option.name for option in opt_list):"},{"line_number":362,"context_line":"                opt_list.append(plugin_option)"},{"line_number":363,"context_line":"    opt_list.sort(key\u003doperator.attrgetter(\u0027name\u0027))"},{"line_number":364,"context_line":"    return [(PLACEMENT_GROUP, opt_list)]"}],"source_content_type":"text/x-python","patch_set":2,"id":"158433a9_ad01943d","line":364,"range":{"start_line":325,"start_character":0,"end_line":364,"end_character":40},"updated":"2021-05-05 06:39:56.000000000","message":"should be refactored into one function (or one private func and 3 public 1-liner funcs)","commit_id":"9ac56e76d2fc3c49522b953f9698b3ee663e209e"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"64037690cc107fa92944227e2c96ff26715e94c8","unresolved":true,"context_lines":[{"line_number":61,"context_line":"import neutron.wsgi"},{"line_number":62,"context_line":""},{"line_number":63,"context_line":""},{"line_number":64,"context_line":"auth_groups_opts \u003d {"},{"line_number":65,"context_line":"    \u0027nova\u0027: {"},{"line_number":66,"context_line":"        \u0027deprecations\u0027: {"},{"line_number":67,"context_line":"            \u0027nova.cafile\u0027: ["}],"source_content_type":"text/x-python","patch_set":4,"id":"bb939edb_a39d7d51","line":64,"range":{"start_line":64,"start_character":0,"end_line":64,"end_character":16},"updated":"2021-05-07 13:57:04.000000000","message":"nit: better in upper case","commit_id":"097024c1f03ac996e4bafa154295ea3f490c5c96"},{"author":{"_account_id":27419,"name":"David Vallee Delisle","email":"me@dvd.dev","username":"dvd"},"change_message_id":"220052e97854d514088d2689d0c6a521c67388e6","unresolved":false,"context_lines":[{"line_number":61,"context_line":"import neutron.wsgi"},{"line_number":62,"context_line":""},{"line_number":63,"context_line":""},{"line_number":64,"context_line":"auth_groups_opts \u003d {"},{"line_number":65,"context_line":"    \u0027nova\u0027: {"},{"line_number":66,"context_line":"        \u0027deprecations\u0027: {"},{"line_number":67,"context_line":"            \u0027nova.cafile\u0027: ["}],"source_content_type":"text/x-python","patch_set":4,"id":"bd5f34d7_2704327a","line":64,"range":{"start_line":64,"start_character":0,"end_line":64,"end_character":16},"in_reply_to":"bb939edb_a39d7d51","updated":"2021-05-10 17:08:43.000000000","message":"Done","commit_id":"097024c1f03ac996e4bafa154295ea3f490c5c96"},{"author":{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},"change_message_id":"936700160c2d773907fc3837ad68a84e739847f0","unresolved":true,"context_lines":[{"line_number":95,"context_line":"    opt_list.insert(0, ks_loading.get_auth_common_conf_options()[0])"},{"line_number":96,"context_line":"    # NOTE(mhickey): There are a lot of auth plugins, we just generate"},{"line_number":97,"context_line":"    # the config options for a few common ones"},{"line_number":98,"context_line":"    plugins \u003d [\u0027password\u0027, \u0027v2password\u0027, \u0027v3password\u0027]"},{"line_number":99,"context_line":"    for name in plugins:"},{"line_number":100,"context_line":"        for plugin_option in ks_loading.get_auth_plugin_conf_options(name):"},{"line_number":101,"context_line":"            if all(option.name !\u003d plugin_option.name for option in opt_list):"}],"source_content_type":"text/x-python","patch_set":5,"id":"30ae45d1_b594b8f8","line":98,"range":{"start_line":98,"start_character":28,"end_line":98,"end_character":38},"updated":"2021-07-14 01:11:23.000000000","message":"Do we still expect usage of v2password ? IIUC this is for Keystone v2 API which was already removed.\n\nI have submitted another commit to remove this[1].\n\n[1] https://review.opendev.org/c/openstack/neutron/+/800736","commit_id":"89fd50d0f90fa83c615b235476f60249a1bca0c2"}]}
