)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"4bcbf63218944a833d5e174df3bbf1fc92da209c","unresolved":false,"context_lines":[{"line_number":30,"context_line":"  File \"/opt/stack/bifrost/lib/python2.7/site-packages/keystoneauth1/loading/base.py\", line 187, in load_from_options_getter"},{"line_number":31,"context_line":"    return self.load_from_options(**kwargs)"},{"line_number":32,"context_line":"  File \"/opt/stack/bifrost/lib/python2.7/site-packages/keystoneauth1/loading/base.py\", line 162, in load_from_options"},{"line_number":33,"context_line":"    raise exceptions.MissingRequiredOptions(missing_required)"},{"line_number":34,"context_line":"MissingRequiredOptions: Auth plugin requires parameters which were not given: auth_url"},{"line_number":35,"context_line":""},{"line_number":36,"context_line":"Fixes: I2e7ec02fdeeea21ef43136ddeabc98d499a8ba7f"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":4,"id":"3fa0c359_05a51fb5","line":33,"updated":"2018-02-08 17:51:58.000000000","message":"I\u0027d prefer to not paste the whole traceback here, only the error message","commit_id":"d04fd0556d7968bec53de0f3ab39b125c1d9c8e2"},{"author":{"_account_id":23163,"name":"Markos Chandras (hwoarang)","email":"markos@chandras.me","username":"mchandras"},"change_message_id":"8325e4b4e6feddc538dea90ec9f581889516e657","unresolved":false,"context_lines":[{"line_number":30,"context_line":"  File \"/opt/stack/bifrost/lib/python2.7/site-packages/keystoneauth1/loading/base.py\", line 187, in load_from_options_getter"},{"line_number":31,"context_line":"    return self.load_from_options(**kwargs)"},{"line_number":32,"context_line":"  File \"/opt/stack/bifrost/lib/python2.7/site-packages/keystoneauth1/loading/base.py\", line 162, in load_from_options"},{"line_number":33,"context_line":"    raise exceptions.MissingRequiredOptions(missing_required)"},{"line_number":34,"context_line":"MissingRequiredOptions: Auth plugin requires parameters which were not given: auth_url"},{"line_number":35,"context_line":""},{"line_number":36,"context_line":"Fixes: I2e7ec02fdeeea21ef43136ddeabc98d499a8ba7f"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":4,"id":"3fa0c359_40f9d54a","line":33,"in_reply_to":"3fa0c359_05a51fb5","updated":"2018-02-08 18:41:38.000000000","message":"Done","commit_id":"d04fd0556d7968bec53de0f3ab39b125c1d9c8e2"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"4bcbf63218944a833d5e174df3bbf1fc92da209c","unresolved":false,"context_lines":[{"line_number":33,"context_line":"    raise exceptions.MissingRequiredOptions(missing_required)"},{"line_number":34,"context_line":"MissingRequiredOptions: Auth plugin requires parameters which were not given: auth_url"},{"line_number":35,"context_line":""},{"line_number":36,"context_line":"Fixes: I2e7ec02fdeeea21ef43136ddeabc98d499a8ba7f"},{"line_number":37,"context_line":"Change-Id: I875e2b17f5c6829ad81f86c32959cb106bf57e53"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":4,"id":"3fa0c359_a5ab0b87","line":36,"updated":"2018-02-08 17:51:58.000000000","message":"Not sure if \"Fixes\" syntax is a thing, but you need a launchpad bug reported and linked here as \n\n Closes-Bug: #XXXXXX\n\nEspecially since you\u0027ll want to backport this bug fix.","commit_id":"d04fd0556d7968bec53de0f3ab39b125c1d9c8e2"},{"author":{"_account_id":23163,"name":"Markos Chandras (hwoarang)","email":"markos@chandras.me","username":"mchandras"},"change_message_id":"8325e4b4e6feddc538dea90ec9f581889516e657","unresolved":false,"context_lines":[{"line_number":33,"context_line":"    raise exceptions.MissingRequiredOptions(missing_required)"},{"line_number":34,"context_line":"MissingRequiredOptions: Auth plugin requires parameters which were not given: auth_url"},{"line_number":35,"context_line":""},{"line_number":36,"context_line":"Fixes: I2e7ec02fdeeea21ef43136ddeabc98d499a8ba7f"},{"line_number":37,"context_line":"Change-Id: I875e2b17f5c6829ad81f86c32959cb106bf57e53"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":4,"id":"3fa0c359_608971c8","line":36,"in_reply_to":"3fa0c359_a5ab0b87","updated":"2018-02-08 18:41:38.000000000","message":"Done","commit_id":"d04fd0556d7968bec53de0f3ab39b125c1d9c8e2"}],"ironic_inspector/common/ironic.py":[{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"f3666ecc50325a1de8d1324d590eac56ffdb1fa7","unresolved":false,"context_lines":[{"line_number":83,"context_line":"               api_version\u003dDEFAULT_IRONIC_API_VERSION):  # pragma: no cover"},{"line_number":84,"context_line":"    \"\"\"Get Ironic client instance.\"\"\""},{"line_number":85,"context_line":"    global IRONIC_SESSION"},{"line_number":86,"context_line":"    if not IRONIC_SESSION and not CONF.ironic.auth_strategy \u003d\u003d \u0027noauth\u0027:"},{"line_number":87,"context_line":"        IRONIC_SESSION \u003d keystone.get_session(\u0027ironic\u0027)"},{"line_number":88,"context_line":""},{"line_number":89,"context_line":"    args \u003d {"},{"line_number":90,"context_line":"        \u0027os_ironic_api_version\u0027: api_version,"}],"source_content_type":"text/x-python","patch_set":2,"id":"3fa0c359_b9dd7d43","line":87,"range":{"start_line":86,"start_character":0,"end_line":87,"end_character":55},"updated":"2018-02-08 14:17:57.000000000","message":"maybe move it under line 102?","commit_id":"731bf5f675b2a18539d1109c7ff2935729ac9496"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"4bcbf63218944a833d5e174df3bbf1fc92da209c","unresolved":false,"context_lines":[{"line_number":98,"context_line":"    if CONF.ironic.auth_strategy \u003d\u003d \u0027noauth\u0027:"},{"line_number":99,"context_line":"        CONF.set_override(\u0027auth_type\u0027, \u0027none\u0027, group\u003d\u0027ironic\u0027)"},{"line_number":100,"context_line":"    else:"},{"line_number":101,"context_line":"        IRONIC_SESSION \u003d keystone.get_session(\u0027ironic\u0027)"},{"line_number":102,"context_line":"        # TODO(pas-ha) use service auth with incoming token"},{"line_number":103,"context_line":"        if token is None:"},{"line_number":104,"context_line":"            args[\u0027session\u0027] \u003d IRONIC_SESSION"}],"source_content_type":"text/x-python","patch_set":4,"id":"3fa0c359_c5ae5797","line":101,"updated":"2018-02-08 17:51:58.000000000","message":"you still need \"if not IRONIC_SESSION\" bit otherwise you\u0027re not caching it any more","commit_id":"d04fd0556d7968bec53de0f3ab39b125c1d9c8e2"},{"author":{"_account_id":23163,"name":"Markos Chandras (hwoarang)","email":"markos@chandras.me","username":"mchandras"},"change_message_id":"8325e4b4e6feddc538dea90ec9f581889516e657","unresolved":false,"context_lines":[{"line_number":98,"context_line":"    if CONF.ironic.auth_strategy \u003d\u003d \u0027noauth\u0027:"},{"line_number":99,"context_line":"        CONF.set_override(\u0027auth_type\u0027, \u0027none\u0027, group\u003d\u0027ironic\u0027)"},{"line_number":100,"context_line":"    else:"},{"line_number":101,"context_line":"        IRONIC_SESSION \u003d keystone.get_session(\u0027ironic\u0027)"},{"line_number":102,"context_line":"        # TODO(pas-ha) use service auth with incoming token"},{"line_number":103,"context_line":"        if token is None:"},{"line_number":104,"context_line":"            args[\u0027session\u0027] \u003d IRONIC_SESSION"}],"source_content_type":"text/x-python","patch_set":4,"id":"3fa0c359_407c75b4","line":101,"in_reply_to":"3fa0c359_c5ae5797","updated":"2018-02-08 18:41:38.000000000","message":"Done","commit_id":"d04fd0556d7968bec53de0f3ab39b125c1d9c8e2"},{"author":{"_account_id":9542,"name":"Pavlo Shchelokovskyy","email":"pshchelokovskyy@mirantis.com","username":"pshchelo"},"change_message_id":"1dba56dc3ff0b231932e79a4d7c1e0b85e650d1a","unresolved":false,"context_lines":[{"line_number":95,"context_line":"    # TODO(pas-ha) remove handling of deprecated opts in Rocky"},{"line_number":96,"context_line":"    # TODO(pas-ha) rewrite when ironicclient natively supports \u0027none\u0027 auth"},{"line_number":97,"context_line":"    # via sessions https://review.openstack.org/#/c/359061/"},{"line_number":98,"context_line":"    if CONF.ironic.auth_strategy \u003d\u003d \u0027noauth\u0027:"},{"line_number":99,"context_line":"        CONF.set_override(\u0027auth_type\u0027, \u0027none\u0027, group\u003d\u0027ironic\u0027)"},{"line_number":100,"context_line":"    else:"},{"line_number":101,"context_line":"        if not IRONIC_SESSION:"},{"line_number":102,"context_line":"            IRONIC_SESSION \u003d keystone.get_session(\u0027ironic\u0027)"}],"source_content_type":"text/x-python","patch_set":5,"id":"3fa0c359_b6449f1c","line":99,"range":{"start_line":98,"start_character":1,"end_line":99,"end_character":62},"updated":"2018-02-08 19:43:52.000000000","message":"this should be simply moved at the very start of this method.","commit_id":"339e1f23ceb140ecddb20f3a56a831e2af53a884"},{"author":{"_account_id":23163,"name":"Markos Chandras (hwoarang)","email":"markos@chandras.me","username":"mchandras"},"change_message_id":"16ee8dc8a897a63f8bdf631b3dc6dbdc8fd1a9fd","unresolved":false,"context_lines":[{"line_number":95,"context_line":"    # TODO(pas-ha) remove handling of deprecated opts in Rocky"},{"line_number":96,"context_line":"    # TODO(pas-ha) rewrite when ironicclient natively supports \u0027none\u0027 auth"},{"line_number":97,"context_line":"    # via sessions https://review.openstack.org/#/c/359061/"},{"line_number":98,"context_line":"    if CONF.ironic.auth_strategy \u003d\u003d \u0027noauth\u0027:"},{"line_number":99,"context_line":"        CONF.set_override(\u0027auth_type\u0027, \u0027none\u0027, group\u003d\u0027ironic\u0027)"},{"line_number":100,"context_line":"    else:"},{"line_number":101,"context_line":"        if not IRONIC_SESSION:"},{"line_number":102,"context_line":"            IRONIC_SESSION \u003d keystone.get_session(\u0027ironic\u0027)"}],"source_content_type":"text/x-python","patch_set":5,"id":"3fa0c359_ec1b307e","line":99,"range":{"start_line":98,"start_character":1,"end_line":99,"end_character":62},"in_reply_to":"3fa0c359_b6449f1c","updated":"2018-02-09 06:16:56.000000000","message":"Not sure I understand the suggestion since this is an if/else clause.","commit_id":"339e1f23ceb140ecddb20f3a56a831e2af53a884"},{"author":{"_account_id":9542,"name":"Pavlo Shchelokovskyy","email":"pshchelokovskyy@mirantis.com","username":"pshchelo"},"change_message_id":"c0d8370a6559ea27481c885d0a331e5e51889930","unresolved":false,"context_lines":[{"line_number":102,"context_line":"    adapter_opts \u003d dict()"},{"line_number":103,"context_line":""},{"line_number":104,"context_line":"    # TODO(pas-ha) use service auth with incoming token"},{"line_number":105,"context_line":"    if token is None:"},{"line_number":106,"context_line":"        args[\u0027session\u0027] \u003d IRONIC_SESSION"},{"line_number":107,"context_line":"    else:"},{"line_number":108,"context_line":"        args[\u0027token\u0027] \u003d token"},{"line_number":109,"context_line":""},{"line_number":110,"context_line":"    # TODO(pas-ha): remove handling of deprecated options in Rocky"},{"line_number":111,"context_line":"    if CONF.ironic.os_region and not CONF.ironic.region_name:"}],"source_content_type":"text/x-python","patch_set":9,"id":"3fa0c359_18a32bb4","line":108,"range":{"start_line":105,"start_character":0,"end_line":108,"end_character":29},"updated":"2018-02-09 12:48:24.000000000","message":"still not sure if it works - ironicclient has different code path depending on whether a session was passed (see TODO comment on L89-90)\n\nSo in order to keep the current logic this still should be wrapped in smth like \n\n  if CONF.ironic.auth_type !\u003d \u0027none\u0027:\n     ....","commit_id":"a197a09e3b0cc5b4f8520297ae352637367da340"}],"ironic_inspector/test/unit/test_common_ironic.py":[{"author":{"_account_id":9542,"name":"Pavlo Shchelokovskyy","email":"pshchelokovskyy@mirantis.com","username":"pshchelo"},"change_message_id":"c7888cbf134954daf7920d4ddef01835c1c86456","unresolved":false,"context_lines":[{"line_number":27,"context_line":"CONF \u003d cfg.CONF"},{"line_number":28,"context_line":""},{"line_number":29,"context_line":""},{"line_number":30,"context_line":"class TestGetClientBase:"},{"line_number":31,"context_line":"    def test_get_client_with_auth_token(self, mock_client, mock_load,"},{"line_number":32,"context_line":"                                        mock_opts, mock_adapter):"},{"line_number":33,"context_line":"        fake_token \u003d \u0027token\u0027"}],"source_content_type":"text/x-python","patch_set":8,"id":"3fa0c359_78e10f2a","line":30,"updated":"2018-02-09 12:35:48.000000000","message":"pep8 is not happy about not using object as base class","commit_id":"b23f47f863fb95c1ddcc0274a45eae0f2e382df7"}],"releasenotes/notes/keystone-noauth-9ba5ad9884c6273c.yaml":[{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"4bcbf63218944a833d5e174df3bbf1fc92da209c","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"fixes:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Fix an Ironic introspection traceback when the \u0027noauth\u0027 authentication"},{"line_number":5,"context_line":"    plugin was used."},{"line_number":6,"context_line":""}],"source_content_type":"text/x-yaml","patch_set":4,"id":"3fa0c359_65950340","line":4,"updated":"2018-02-08 17:51:58.000000000","message":"s/traceback/failure/? also s/Fix/Fixes/ (just a convention)","commit_id":"d04fd0556d7968bec53de0f3ab39b125c1d9c8e2"},{"author":{"_account_id":23163,"name":"Markos Chandras (hwoarang)","email":"markos@chandras.me","username":"mchandras"},"change_message_id":"8325e4b4e6feddc538dea90ec9f581889516e657","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"fixes:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Fix an Ironic introspection traceback when the \u0027noauth\u0027 authentication"},{"line_number":5,"context_line":"    plugin was used."},{"line_number":6,"context_line":""}],"source_content_type":"text/x-yaml","patch_set":4,"id":"3fa0c359_e0634119","line":4,"in_reply_to":"3fa0c359_65950340","updated":"2018-02-08 18:41:38.000000000","message":"Done","commit_id":"d04fd0556d7968bec53de0f3ab39b125c1d9c8e2"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"4bcbf63218944a833d5e174df3bbf1fc92da209c","unresolved":false,"context_lines":[{"line_number":2,"context_line":"fixes:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Fix an Ironic introspection traceback when the \u0027noauth\u0027 authentication"},{"line_number":5,"context_line":"    plugin was used."},{"line_number":6,"context_line":""}],"source_content_type":"text/x-yaml","patch_set":4,"id":"3fa0c359_85904f50","line":5,"updated":"2018-02-08 17:51:58.000000000","message":"s/was/is/","commit_id":"d04fd0556d7968bec53de0f3ab39b125c1d9c8e2"},{"author":{"_account_id":23163,"name":"Markos Chandras (hwoarang)","email":"markos@chandras.me","username":"mchandras"},"change_message_id":"8325e4b4e6feddc538dea90ec9f581889516e657","unresolved":false,"context_lines":[{"line_number":2,"context_line":"fixes:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Fix an Ironic introspection traceback when the \u0027noauth\u0027 authentication"},{"line_number":5,"context_line":"    plugin was used."},{"line_number":6,"context_line":""}],"source_content_type":"text/x-yaml","patch_set":4,"id":"3fa0c359_00674d27","line":5,"in_reply_to":"3fa0c359_85904f50","updated":"2018-02-08 18:41:38.000000000","message":"Done","commit_id":"d04fd0556d7968bec53de0f3ab39b125c1d9c8e2"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"a717c21e7c2a7f0663122abb71f4d2d2db528d7a","unresolved":false,"context_lines":[{"line_number":2,"context_line":"fixes:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Fixes an Ironic introspection failure when the \u0027noauth\u0027 authentication"},{"line_number":5,"context_line":"    plugin is used."},{"line_number":6,"context_line":""}],"source_content_type":"text/x-yaml","patch_set":7,"id":"3fa0c359_8116eef0","line":5,"updated":"2018-02-09 09:23:05.000000000","message":"better wording: \"No longer tries to access the Identity service if the ``auth_strategy`` option is set to ``noauth`` and the ``auth_type`` option is not set to ``none``.\"","commit_id":"2ffb96851d95b1ecfd7a9cea48e256a9de7a255a"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"3a86ad2bc5abef1ab2f5990ac6b6cc218c154e96","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"fixes:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Ironic introspection no longer tries to access the Identity service if the"},{"line_number":5,"context_line":"    ``auth_strategy`` option is set to ``noauth`` and the ``auth_type`` option"},{"line_number":6,"context_line":"    is not set to ``none``."}],"source_content_type":"text/x-yaml","patch_set":9,"id":"3fa0c359_38c3875f","line":4,"updated":"2018-02-09 12:46:22.000000000","message":"nit: \"Ironic introspection\" is redundant, just \"Introspection\"","commit_id":"a197a09e3b0cc5b4f8520297ae352637367da340"}]}
