)]}'
{"specs/approved/expose-hardware-indicators.rst":[{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"24efd80bc9bd546a983628ff8463c97a4878ef16","unresolved":false,"context_lines":[{"line_number":101,"context_line":"      {"},{"line_number":102,"context_line":"        \"system\": [\"power\", \"alert\"],"},{"line_number":103,"context_line":"        \"chassis\": [\"power\"],"},{"line_number":104,"context_line":"        \"drive\": [\"ssd0\", \"ssd1\"]"},{"line_number":105,"context_line":"      }"},{"line_number":106,"context_line":""},{"line_number":107,"context_line":"* ``GET /v1/nodes/\u003cnode_ident\u003e/management/indicators/\u003ccomponent\u003e/\u003cind_ident\u003e``"}],"source_content_type":"text/x-rst","patch_set":2,"id":"ffb9cba7_3d2c2701","line":104,"updated":"2019-04-25 15:25:39.000000000","message":"This needs links to subresources, so it should probably look like\n\n {\"indicators\": [\n   {\"name\": \"system\",\n    \"links\": [...]}\n }\n\n(annoying, but consistent). check other resources for how it\u0027s done.","commit_id":"8ca227f608af50d096525c6cb7fdcc8b79d9770c"},{"author":{"_account_id":26340,"name":"Ilya Etingof","email":"etingof@gmail.com","username":"etingof"},"change_message_id":"f6b2e9ea7c115cff25b18c6cddc18e79fffa4ca8","unresolved":false,"context_lines":[{"line_number":101,"context_line":"      {"},{"line_number":102,"context_line":"        \"system\": [\"power\", \"alert\"],"},{"line_number":103,"context_line":"        \"chassis\": [\"power\"],"},{"line_number":104,"context_line":"        \"drive\": [\"ssd0\", \"ssd1\"]"},{"line_number":105,"context_line":"      }"},{"line_number":106,"context_line":""},{"line_number":107,"context_line":"* ``GET /v1/nodes/\u003cnode_ident\u003e/management/indicators/\u003ccomponent\u003e/\u003cind_ident\u003e``"}],"source_content_type":"text/x-rst","patch_set":2,"id":"ffb9cba7_b614a64f","line":104,"in_reply_to":"ffb9cba7_3d2c2701","updated":"2019-04-26 13:25:22.000000000","message":"Done","commit_id":"8ca227f608af50d096525c6cb7fdcc8b79d9770c"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"24efd80bc9bd546a983628ff8463c97a4878ef16","unresolved":false,"context_lines":[{"line_number":103,"context_line":"        \"chassis\": [\"power\"],"},{"line_number":104,"context_line":"        \"drive\": [\"ssd0\", \"ssd1\"]"},{"line_number":105,"context_line":"      }"},{"line_number":106,"context_line":""},{"line_number":107,"context_line":"* ``GET /v1/nodes/\u003cnode_ident\u003e/management/indicators/\u003ccomponent\u003e/\u003cind_ident\u003e``"},{"line_number":108,"context_line":""},{"line_number":109,"context_line":"  Retrieves indicator state. Returns a JSON object representing current state"}],"source_content_type":"text/x-rst","patch_set":2,"id":"ffb9cba7_5d2f9bf5","line":106,"updated":"2019-04-25 15:25:39.000000000","message":"missing GET for /\u003ccomponent\u003e (without ind_ident)","commit_id":"8ca227f608af50d096525c6cb7fdcc8b79d9770c"},{"author":{"_account_id":26340,"name":"Ilya Etingof","email":"etingof@gmail.com","username":"etingof"},"change_message_id":"f6b2e9ea7c115cff25b18c6cddc18e79fffa4ca8","unresolved":false,"context_lines":[{"line_number":103,"context_line":"        \"chassis\": [\"power\"],"},{"line_number":104,"context_line":"        \"drive\": [\"ssd0\", \"ssd1\"]"},{"line_number":105,"context_line":"      }"},{"line_number":106,"context_line":""},{"line_number":107,"context_line":"* ``GET /v1/nodes/\u003cnode_ident\u003e/management/indicators/\u003ccomponent\u003e/\u003cind_ident\u003e``"},{"line_number":108,"context_line":""},{"line_number":109,"context_line":"  Retrieves indicator state. Returns a JSON object representing current state"}],"source_content_type":"text/x-rst","patch_set":2,"id":"ffb9cba7_d15a8428","line":106,"in_reply_to":"ffb9cba7_5d2f9bf5","updated":"2019-04-26 13:25:22.000000000","message":"Done","commit_id":"8ca227f608af50d096525c6cb7fdcc8b79d9770c"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"24efd80bc9bd546a983628ff8463c97a4878ef16","unresolved":false,"context_lines":[{"line_number":163,"context_line":""},{"line_number":164,"context_line":".. code-block:: bash"},{"line_number":165,"context_line":""},{"line_number":166,"context_line":"    openstack baremetal indicator list"},{"line_number":167,"context_line":"    openstack baremetal indicator get \u003ccomponent\u003e indicator"},{"line_number":168,"context_line":"    openstack baremetal indicator set \u003ccomponent\u003e \u003cindicator\u003e {ON,OFF,BLINKING}"},{"line_number":169,"context_line":""}],"source_content_type":"text/x-rst","patch_set":2,"id":"ffb9cba7_fd352f47","line":166,"updated":"2019-04-25 15:25:39.000000000","message":"I\u0027m not sure how to reflect the fact that we have two-part structure here..\n\n openstack baremetal indicator list \u003ccomponent\u003e\n\n?","commit_id":"8ca227f608af50d096525c6cb7fdcc8b79d9770c"},{"author":{"_account_id":26340,"name":"Ilya Etingof","email":"etingof@gmail.com","username":"etingof"},"change_message_id":"f6b2e9ea7c115cff25b18c6cddc18e79fffa4ca8","unresolved":false,"context_lines":[{"line_number":163,"context_line":""},{"line_number":164,"context_line":".. code-block:: bash"},{"line_number":165,"context_line":""},{"line_number":166,"context_line":"    openstack baremetal indicator list"},{"line_number":167,"context_line":"    openstack baremetal indicator get \u003ccomponent\u003e indicator"},{"line_number":168,"context_line":"    openstack baremetal indicator set \u003ccomponent\u003e \u003cindicator\u003e {ON,OFF,BLINKING}"},{"line_number":169,"context_line":""}],"source_content_type":"text/x-rst","patch_set":2,"id":"ffb9cba7_f19b08c6","line":166,"in_reply_to":"ffb9cba7_fd352f47","updated":"2019-04-26 13:25:22.000000000","message":"Let\u0027s make [component] optional?","commit_id":"8ca227f608af50d096525c6cb7fdcc8b79d9770c"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"24efd80bc9bd546a983628ff8463c97a4878ef16","unresolved":false,"context_lines":[{"line_number":165,"context_line":""},{"line_number":166,"context_line":"    openstack baremetal indicator list"},{"line_number":167,"context_line":"    openstack baremetal indicator get \u003ccomponent\u003e indicator"},{"line_number":168,"context_line":"    openstack baremetal indicator set \u003ccomponent\u003e \u003cindicator\u003e {ON,OFF,BLINKING}"},{"line_number":169,"context_line":""},{"line_number":170,"context_line":"RPC API impact"},{"line_number":171,"context_line":"--------------"}],"source_content_type":"text/x-rst","patch_set":2,"id":"ffb9cba7_1d392340","line":168,"updated":"2019-04-25 15:25:39.000000000","message":"should be --state ON, I think","commit_id":"8ca227f608af50d096525c6cb7fdcc8b79d9770c"},{"author":{"_account_id":26340,"name":"Ilya Etingof","email":"etingof@gmail.com","username":"etingof"},"change_message_id":"f6b2e9ea7c115cff25b18c6cddc18e79fffa4ca8","unresolved":false,"context_lines":[{"line_number":165,"context_line":""},{"line_number":166,"context_line":"    openstack baremetal indicator list"},{"line_number":167,"context_line":"    openstack baremetal indicator get \u003ccomponent\u003e indicator"},{"line_number":168,"context_line":"    openstack baremetal indicator set \u003ccomponent\u003e \u003cindicator\u003e {ON,OFF,BLINKING}"},{"line_number":169,"context_line":""},{"line_number":170,"context_line":"RPC API impact"},{"line_number":171,"context_line":"--------------"}],"source_content_type":"text/x-rst","patch_set":2,"id":"ffb9cba7_119fbcb4","line":168,"in_reply_to":"ffb9cba7_1d392340","updated":"2019-04-26 13:25:22.000000000","message":"Done","commit_id":"8ca227f608af50d096525c6cb7fdcc8b79d9770c"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"24efd80bc9bd546a983628ff8463c97a4878ef16","unresolved":false,"context_lines":[{"line_number":320,"context_line":"Dependencies"},{"line_number":321,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":322,"context_line":""},{"line_number":323,"context_line":"Reasonably fresh ``sushy`` library needs to be used to allow Redfish access"},{"line_number":324,"context_line":"to the indicator resources."},{"line_number":325,"context_line":""},{"line_number":326,"context_line":"Testing"}],"source_content_type":"text/x-rst","patch_set":2,"id":"ffb9cba7_bd3fb723","line":323,"updated":"2019-04-25 15:25:39.000000000","message":"nit: it\u0027s an action item, not a dependency. sushy is within our control :)","commit_id":"8ca227f608af50d096525c6cb7fdcc8b79d9770c"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"90789f4dd7ac795f6cf8482a9796eac862a42c09","unresolved":false,"context_lines":[{"line_number":103,"context_line":"        \"indicators\": ["},{"line_number":104,"context_line":"            {"},{"line_number":105,"context_line":"                \"component\": \"system\","},{"line_number":106,"context_line":"                \"indicator\": \"power\","},{"line_number":107,"context_line":"                \"links\": ["},{"line_number":108,"context_line":"                    {"},{"line_number":109,"context_line":"                        \"href\": \"http://127.0.0.1:6385/v1/nodes/Compute0/"}],"source_content_type":"text/x-rst","patch_set":4,"id":"ffb9cba7_a3b223e5","line":106,"updated":"2019-04-26 14:45:40.000000000","message":"I suggest we make it a bit more restful (although also more annoying):\n\n GET /v1/nodes/\u003cnode\u003e/management/indicators\n\nlinks to each item in\n\n GET /v1/nodes/\u003cnode\u003e/management/indicators/\u003ccomponent\u003e\n\nin turn links to each indicator in\n\n GET /v1/nodes/\u003cnode\u003e/management/indicators/\u003ccomponent\u003e/\u003cindicator\u003e\n\nA completely different approach (closer to what you\u0027re trying to do would be)\n\n GET /v1/nodes/\u003cnode\u003e/management/indicators[?component\u003dsystem]\n\nThen the response would be exactly as you put it here. However, you\u0027ll need to solve the problem of unique \u003cindicator\u003e\n\n GET /v1/nodes/\u003cnode\u003e/management/indicators/\u003cindicator\u003e\n\nmaybe be including component right in it with something like \"system:power\".","commit_id":"276717fa5922c4a190020c6254b26ac430b959b6"},{"author":{"_account_id":26340,"name":"Ilya Etingof","email":"etingof@gmail.com","username":"etingof"},"change_message_id":"1a73bd7752b917bab683a3aea55c04f50bb3775c","unresolved":false,"context_lines":[{"line_number":103,"context_line":"        \"indicators\": ["},{"line_number":104,"context_line":"            {"},{"line_number":105,"context_line":"                \"component\": \"system\","},{"line_number":106,"context_line":"                \"indicator\": \"power\","},{"line_number":107,"context_line":"                \"links\": ["},{"line_number":108,"context_line":"                    {"},{"line_number":109,"context_line":"                        \"href\": \"http://127.0.0.1:6385/v1/nodes/Compute0/"}],"source_content_type":"text/x-rst","patch_set":4,"id":"ffb9cba7_c8dcf2e5","line":106,"in_reply_to":"ffb9cba7_a3b223e5","updated":"2019-04-29 16:08:36.000000000","message":"Done","commit_id":"276717fa5922c4a190020c6254b26ac430b959b6"},{"author":{"_account_id":11076,"name":"Shivanand Tendulker","email":"stendulker@gmail.com","username":"stendulker"},"change_message_id":"118b2d40f9b535d93286d69e35c7ba25291712b1","unresolved":false,"context_lines":[{"line_number":153,"context_line":"    {"},{"line_number":154,"context_line":"        \"indicators\": ["},{"line_number":155,"context_line":"            {"},{"line_number":156,"context_line":"                \"name\": \"power\","},{"line_number":157,"context_line":"                \"links\": ["},{"line_number":158,"context_line":"                    {"},{"line_number":159,"context_line":"                        \"href\": \"http://127.0.0.1:6385/v1/nodes/Compute0/"}],"source_content_type":"text/x-rst","patch_set":5,"id":"ffb9cba7_4c5ec476","line":156,"range":{"start_line":156,"start_character":16,"end_line":156,"end_character":32},"updated":"2019-04-30 19:10:31.000000000","message":"It would be useful to have attribute:-\n1. to indicate whether the indicator state is editable.\n2. to list of indicator states supported or all would always  support ``OFF``,  ``ON``, ``BLINKING`` or ``UNKNOWN`` ?","commit_id":"12e0e649b83344513886ffd04e11fc30aec5a746"},{"author":{"_account_id":26340,"name":"Ilya Etingof","email":"etingof@gmail.com","username":"etingof"},"change_message_id":"d6413d3f6e36e08bfa23daecc8b076656389c37f","unresolved":false,"context_lines":[{"line_number":153,"context_line":"    {"},{"line_number":154,"context_line":"        \"indicators\": ["},{"line_number":155,"context_line":"            {"},{"line_number":156,"context_line":"                \"name\": \"power\","},{"line_number":157,"context_line":"                \"links\": ["},{"line_number":158,"context_line":"                    {"},{"line_number":159,"context_line":"                        \"href\": \"http://127.0.0.1:6385/v1/nodes/Compute0/"}],"source_content_type":"text/x-rst","patch_set":5,"id":"dfbec78f_5dcfd27e","line":156,"range":{"start_line":156,"start_character":16,"end_line":156,"end_character":32},"in_reply_to":"ffb9cba7_4c5ec476","updated":"2019-05-06 09:39:49.000000000","message":"Done","commit_id":"12e0e649b83344513886ffd04e11fc30aec5a746"},{"author":{"_account_id":11076,"name":"Shivanand Tendulker","email":"stendulker@gmail.com","username":"stendulker"},"change_message_id":"118b2d40f9b535d93286d69e35c7ba25291712b1","unresolved":false,"context_lines":[{"line_number":227,"context_line":"  .. note::"},{"line_number":228,"context_line":""},{"line_number":229,"context_line":"      A shortcut option could be to also support"},{"line_number":230,"context_line":"      ``PUT /v1/nodes/\u003cnode_ident\u003e/management/indicators/\u003ccomponent\u003e`` endpoint"},{"line_number":231,"context_line":"      which would operate on **all** available indicators of the component at"},{"line_number":232,"context_line":"      once."},{"line_number":233,"context_line":""}],"source_content_type":"text/x-rst","patch_set":5,"id":"ffb9cba7_ace1809d","line":230,"range":{"start_line":230,"start_character":8,"end_line":230,"end_character":68},"updated":"2019-04-30 19:10:31.000000000","message":"A component may have mix of LEDs which could be indicted or read-only. How would be the behavior in that case? Update all that supports change of \u0027state\u0027?","commit_id":"12e0e649b83344513886ffd04e11fc30aec5a746"},{"author":{"_account_id":26340,"name":"Ilya Etingof","email":"etingof@gmail.com","username":"etingof"},"change_message_id":"d6413d3f6e36e08bfa23daecc8b076656389c37f","unresolved":false,"context_lines":[{"line_number":227,"context_line":"  .. note::"},{"line_number":228,"context_line":""},{"line_number":229,"context_line":"      A shortcut option could be to also support"},{"line_number":230,"context_line":"      ``PUT /v1/nodes/\u003cnode_ident\u003e/management/indicators/\u003ccomponent\u003e`` endpoint"},{"line_number":231,"context_line":"      which would operate on **all** available indicators of the component at"},{"line_number":232,"context_line":"      once."},{"line_number":233,"context_line":""}],"source_content_type":"text/x-rst","patch_set":5,"id":"dfbec78f_dda0a2a8","line":230,"range":{"start_line":230,"start_character":8,"end_line":230,"end_character":68},"in_reply_to":"ffb9cba7_ace1809d","updated":"2019-05-06 09:39:49.000000000","message":"Right, let\u0027s drop this shortcut for clarity. Then user can now gather all available indicator IDs along with their settability and supported values, then apply the desired state to each of the indicators.","commit_id":"12e0e649b83344513886ffd04e11fc30aec5a746"},{"author":{"_account_id":11076,"name":"Shivanand Tendulker","email":"stendulker@gmail.com","username":"stendulker"},"change_message_id":"118b2d40f9b535d93286d69e35c7ba25291712b1","unresolved":false,"context_lines":[{"line_number":305,"context_line":""},{"line_number":306,"context_line":"  .. code-block:: python"},{"line_number":307,"context_line":""},{"line_number":308,"context_line":"      def get_supported_indicators(self, task):"},{"line_number":309,"context_line":"          \"\"\"Get a map of the supported indicators (e.g. LEDs)."},{"line_number":310,"context_line":""},{"line_number":311,"context_line":"          :param task: A task from TaskManager."}],"source_content_type":"text/x-rst","patch_set":5,"id":"ffb9cba7_0c752ccb","line":308,"range":{"start_line":308,"start_character":41,"end_line":308,"end_character":45},"updated":"2019-04-30 19:10:31.000000000","message":"May be we can add an optional parameter \u0027component\u0027 to support retrieving for given component.\nGET /v1/nodes/\u003cnode_ident\u003e/management/indicators/\u003ccomponent\u003e","commit_id":"12e0e649b83344513886ffd04e11fc30aec5a746"},{"author":{"_account_id":10206,"name":"Madhuri Kumari","email":"madhuri.kumari@intel.com","username":"Madhuri"},"change_message_id":"c3b720d37d0ce44b43d6637f6925914481475555","unresolved":false,"context_lines":[{"line_number":305,"context_line":""},{"line_number":306,"context_line":"  .. code-block:: python"},{"line_number":307,"context_line":""},{"line_number":308,"context_line":"      def get_supported_indicators(self, task):"},{"line_number":309,"context_line":"          \"\"\"Get a map of the supported indicators (e.g. LEDs)."},{"line_number":310,"context_line":""},{"line_number":311,"context_line":"          :param task: A task from TaskManager."}],"source_content_type":"text/x-rst","patch_set":5,"id":"ffb9cba7_6b903996","line":308,"range":{"start_line":308,"start_character":41,"end_line":308,"end_character":45},"in_reply_to":"ffb9cba7_0c752ccb","updated":"2019-05-02 09:28:16.000000000","message":"+1","commit_id":"12e0e649b83344513886ffd04e11fc30aec5a746"},{"author":{"_account_id":26340,"name":"Ilya Etingof","email":"etingof@gmail.com","username":"etingof"},"change_message_id":"d6413d3f6e36e08bfa23daecc8b076656389c37f","unresolved":false,"context_lines":[{"line_number":305,"context_line":""},{"line_number":306,"context_line":"  .. code-block:: python"},{"line_number":307,"context_line":""},{"line_number":308,"context_line":"      def get_supported_indicators(self, task):"},{"line_number":309,"context_line":"          \"\"\"Get a map of the supported indicators (e.g. LEDs)."},{"line_number":310,"context_line":""},{"line_number":311,"context_line":"          :param task: A task from TaskManager."}],"source_content_type":"text/x-rst","patch_set":5,"id":"dfbec78f_fda566b6","line":308,"range":{"start_line":308,"start_character":41,"end_line":308,"end_character":45},"in_reply_to":"ffb9cba7_0c752ccb","updated":"2019-05-06 09:39:49.000000000","message":"Done","commit_id":"12e0e649b83344513886ffd04e11fc30aec5a746"},{"author":{"_account_id":26340,"name":"Ilya Etingof","email":"etingof@gmail.com","username":"etingof"},"change_message_id":"d6413d3f6e36e08bfa23daecc8b076656389c37f","unresolved":false,"context_lines":[{"line_number":305,"context_line":""},{"line_number":306,"context_line":"  .. code-block:: python"},{"line_number":307,"context_line":""},{"line_number":308,"context_line":"      def get_supported_indicators(self, task):"},{"line_number":309,"context_line":"          \"\"\"Get a map of the supported indicators (e.g. LEDs)."},{"line_number":310,"context_line":""},{"line_number":311,"context_line":"          :param task: A task from TaskManager."}],"source_content_type":"text/x-rst","patch_set":5,"id":"dfbec78f_9daa2a83","line":308,"range":{"start_line":308,"start_character":41,"end_line":308,"end_character":45},"in_reply_to":"ffb9cba7_6b903996","updated":"2019-05-06 09:39:49.000000000","message":"Done","commit_id":"12e0e649b83344513886ffd04e11fc30aec5a746"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"11019bcd4c9d56032d41e99009cf1a8e109a1840","unresolved":false,"context_lines":[{"line_number":233,"context_line":"  .. code-block:: json"},{"line_number":234,"context_line":""},{"line_number":235,"context_line":"      {"},{"line_number":236,"context_line":"        \"state\", \"ON\""},{"line_number":237,"context_line":"      }"},{"line_number":238,"context_line":""},{"line_number":239,"context_line":"Client (CLI) impact"}],"source_content_type":"text/x-rst","patch_set":6,"id":"bfb3d3c7_53e10a9a","line":236,"updated":"2019-05-20 10:08:07.000000000","message":", -\u003e :\n\nand we should probably include \"links\" here for consistency","commit_id":"56cf9f1b3e9f48fe8cabf1792de284e7a4ec5ef1"},{"author":{"_account_id":26340,"name":"Ilya Etingof","email":"etingof@gmail.com","username":"etingof"},"change_message_id":"90060b76706cf02b6d40453b8c2ada22988505a0","unresolved":false,"context_lines":[{"line_number":233,"context_line":"  .. code-block:: json"},{"line_number":234,"context_line":""},{"line_number":235,"context_line":"      {"},{"line_number":236,"context_line":"        \"state\", \"ON\""},{"line_number":237,"context_line":"      }"},{"line_number":238,"context_line":""},{"line_number":239,"context_line":"Client (CLI) impact"}],"source_content_type":"text/x-rst","patch_set":6,"id":"bfb3d3c7_55f9e77d","line":236,"in_reply_to":"bfb3d3c7_53e10a9a","updated":"2019-05-20 17:15:42.000000000","message":"Done.\n\nWhat do you mean \"include links\"? This is the same resource as GET on line #200 (which does not have links) and this is PUT which semantically replaces the entire resource.\n\nPractically speaking, it\u0027s a nuisance for the client to build proper links even though links should not be under client control....\n\nPerhaps I misunderstood your suggestion.","commit_id":"56cf9f1b3e9f48fe8cabf1792de284e7a4ec5ef1"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"11019bcd4c9d56032d41e99009cf1a8e109a1840","unresolved":false,"context_lines":[{"line_number":252,"context_line":".. code-block:: bash"},{"line_number":253,"context_line":""},{"line_number":254,"context_line":"    openstack baremetal indicator list [component]"},{"line_number":255,"context_line":"    openstack baremetal indicator get \u003ccomponent\u003e indicator"},{"line_number":256,"context_line":"    openstack baremetal indicator set \u003ccomponent\u003e \u003cindicator\u003e --state {ON,OFF,BLINKING}"},{"line_number":257,"context_line":""},{"line_number":258,"context_line":"RPC API impact"}],"source_content_type":"text/x-rst","patch_set":6,"id":"bfb3d3c7_f3efde84","line":255,"updated":"2019-05-20 10:08:07.000000000","message":"s/get/show/ (OSC convention)","commit_id":"56cf9f1b3e9f48fe8cabf1792de284e7a4ec5ef1"},{"author":{"_account_id":26340,"name":"Ilya Etingof","email":"etingof@gmail.com","username":"etingof"},"change_message_id":"90060b76706cf02b6d40453b8c2ada22988505a0","unresolved":false,"context_lines":[{"line_number":252,"context_line":".. code-block:: bash"},{"line_number":253,"context_line":""},{"line_number":254,"context_line":"    openstack baremetal indicator list [component]"},{"line_number":255,"context_line":"    openstack baremetal indicator get \u003ccomponent\u003e indicator"},{"line_number":256,"context_line":"    openstack baremetal indicator set \u003ccomponent\u003e \u003cindicator\u003e --state {ON,OFF,BLINKING}"},{"line_number":257,"context_line":""},{"line_number":258,"context_line":"RPC API impact"}],"source_content_type":"text/x-rst","patch_set":6,"id":"bfb3d3c7_d52ab7e5","line":255,"in_reply_to":"bfb3d3c7_f3efde84","updated":"2019-05-20 17:15:42.000000000","message":"Ah, must be wrong coffee!","commit_id":"56cf9f1b3e9f48fe8cabf1792de284e7a4ec5ef1"},{"author":{"_account_id":2472,"name":"Doug Hellmann","email":"dhellmann@redhat.com","username":"doug-hellmann"},"change_message_id":"d8b03fadfa2060ad9dc57a25db83321ecfd5ce8c","unresolved":false,"context_lines":[{"line_number":46,"context_line":""},{"line_number":47,"context_line":"#. An API client can choose to discover available node indicators by sending"},{"line_number":48,"context_line":"   ``GET /v1/nodes/\u003cnode_ident\u003e/management/indicators`` request. This step"},{"line_number":49,"context_line":"   is optional."},{"line_number":50,"context_line":""},{"line_number":51,"context_line":"#. An API client reads the indicator on the chosen component of the"},{"line_number":52,"context_line":"   bare metal node by sending"}],"source_content_type":"text/x-rst","patch_set":7,"id":"bfb3d3c7_7c2e2ffb","line":49,"updated":"2019-05-22 12:18:22.000000000","message":"Will this information also be included in the inspection data, or does the client have to make the separate call?","commit_id":"748b4fd583b376b1aea58d2c10b00b367e724bd1"},{"author":{"_account_id":26340,"name":"Ilya Etingof","email":"etingof@gmail.com","username":"etingof"},"change_message_id":"7e57016616745caa0b3e9221f71291762c668d3a","unresolved":false,"context_lines":[{"line_number":46,"context_line":""},{"line_number":47,"context_line":"#. An API client can choose to discover available node indicators by sending"},{"line_number":48,"context_line":"   ``GET /v1/nodes/\u003cnode_ident\u003e/management/indicators`` request. This step"},{"line_number":49,"context_line":"   is optional."},{"line_number":50,"context_line":""},{"line_number":51,"context_line":"#. An API client reads the indicator on the chosen component of the"},{"line_number":52,"context_line":"   bare metal node by sending"}],"source_content_type":"text/x-rst","patch_set":7,"id":"bfb3d3c7_5f7becbc","line":49,"in_reply_to":"bfb3d3c7_7c2e2ffb","updated":"2019-05-24 16:14:01.000000000","message":"We can only get indicators to the introspection data if Redfish OOB inspection has been used (as opposed to in-band inspection). So the availability of indicators info in the introspection data would be conditional.\n\nOtherwise it should be possible to implement. Perhaps separately?","commit_id":"748b4fd583b376b1aea58d2c10b00b367e724bd1"},{"author":{"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},"change_message_id":"0d376b3101addeefb9c4024d196febe50de73889","unresolved":false,"context_lines":[{"line_number":51,"context_line":"#. An API client reads the indicator on the chosen component of the"},{"line_number":52,"context_line":"   bare metal node by sending"},{"line_number":53,"context_line":"   ``GET /v1/nodes/\u003cnode_ident\u003e/management/indicators/\u003ccomponent\u003e/\u003cind_ident\u003e``"},{"line_number":54,"context_line":"   request and presenting current indicator state to the user."},{"line_number":55,"context_line":""},{"line_number":56,"context_line":"#. The API client can change the state of the indicator(s) on the given"},{"line_number":57,"context_line":"   component by sending"}],"source_content_type":"text/x-rst","patch_set":7,"id":"bfb3d3c7_7f7393b2","line":54,"range":{"start_line":54,"start_character":57,"end_line":54,"end_character":61},"updated":"2019-05-21 16:53:33.000000000","message":"OSC will be modified to draw an ASCII art server with appropriately coloured indicators (just kidding)","commit_id":"748b4fd583b376b1aea58d2c10b00b367e724bd1"},{"author":{"_account_id":26340,"name":"Ilya Etingof","email":"etingof@gmail.com","username":"etingof"},"change_message_id":"7e57016616745caa0b3e9221f71291762c668d3a","unresolved":false,"context_lines":[{"line_number":51,"context_line":"#. An API client reads the indicator on the chosen component of the"},{"line_number":52,"context_line":"   bare metal node by sending"},{"line_number":53,"context_line":"   ``GET /v1/nodes/\u003cnode_ident\u003e/management/indicators/\u003ccomponent\u003e/\u003cind_ident\u003e``"},{"line_number":54,"context_line":"   request and presenting current indicator state to the user."},{"line_number":55,"context_line":""},{"line_number":56,"context_line":"#. The API client can change the state of the indicator(s) on the given"},{"line_number":57,"context_line":"   component by sending"}],"source_content_type":"text/x-rst","patch_set":7,"id":"bfb3d3c7_5f1c4cc0","line":54,"range":{"start_line":54,"start_character":57,"end_line":54,"end_character":61},"in_reply_to":"bfb3d3c7_7f7393b2","updated":"2019-05-24 16:14:01.000000000","message":"+1 ;-)","commit_id":"748b4fd583b376b1aea58d2c10b00b367e724bd1"},{"author":{"_account_id":2472,"name":"Doug Hellmann","email":"dhellmann@redhat.com","username":"doug-hellmann"},"change_message_id":"d8b03fadfa2060ad9dc57a25db83321ecfd5ce8c","unresolved":false,"context_lines":[{"line_number":70,"context_line":""},{"line_number":71,"context_line":"Due to the interactive nature of indicator information, it seem that"},{"line_number":72,"context_line":"user-indicator link should be as immediate as possible, having it cached by"},{"line_number":73,"context_line":"the database can make indicators confusing."},{"line_number":74,"context_line":""},{"line_number":75,"context_line":"State Machine Impact"},{"line_number":76,"context_line":"--------------------"}],"source_content_type":"text/x-rst","patch_set":7,"id":"bfb3d3c7_5c79ebf9","line":73,"updated":"2019-05-22 12:18:22.000000000","message":"So each REST API call for status is going to cause Ironic to query the BMC immediately? Does that mean there may be times when it is not possible to read or change the status of the indicators (where the API would return a \"busy\" error code)?","commit_id":"748b4fd583b376b1aea58d2c10b00b367e724bd1"},{"author":{"_account_id":26340,"name":"Ilya Etingof","email":"etingof@gmail.com","username":"etingof"},"change_message_id":"7e57016616745caa0b3e9221f71291762c668d3a","unresolved":false,"context_lines":[{"line_number":70,"context_line":""},{"line_number":71,"context_line":"Due to the interactive nature of indicator information, it seem that"},{"line_number":72,"context_line":"user-indicator link should be as immediate as possible, having it cached by"},{"line_number":73,"context_line":"the database can make indicators confusing."},{"line_number":74,"context_line":""},{"line_number":75,"context_line":"State Machine Impact"},{"line_number":76,"context_line":"--------------------"}],"source_content_type":"text/x-rst","patch_set":7,"id":"bfb3d3c7_8214ab45","line":73,"in_reply_to":"bfb3d3c7_5c79ebf9","updated":"2019-05-24 16:14:01.000000000","message":"Yes, exactly! That\u0027s because we can\u0027t cache indicators data, it should be almost immediate. The more we delay state propagation, the more unreliable and confusing indicators would become. That\u0027s my subjective take on this matter. ;-)","commit_id":"748b4fd583b376b1aea58d2c10b00b367e724bd1"},{"author":{"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},"change_message_id":"0d376b3101addeefb9c4024d196febe50de73889","unresolved":false,"context_lines":[{"line_number":154,"context_line":"    {"},{"line_number":155,"context_line":"        \"indicators\": ["},{"line_number":156,"context_line":"            {"},{"line_number":157,"context_line":"                \"name\": \"power\","},{"line_number":158,"context_line":"                \"readonly\": true,"},{"line_number":159,"context_line":"                \"states\": ["},{"line_number":160,"context_line":"                    \"OFF\","},{"line_number":161,"context_line":"                    \"ON\""},{"line_number":162,"context_line":"                ],"},{"line_number":163,"context_line":"                \"links\": ["},{"line_number":164,"context_line":"                    {"},{"line_number":165,"context_line":"                        \"href\": \"http://127.0.0.1:6385/v1/nodes/Compute0/"}],"source_content_type":"text/x-rst","patch_set":7,"id":"bfb3d3c7_7f5dd3e7","line":162,"range":{"start_line":157,"start_character":0,"end_line":162,"end_character":18},"updated":"2019-05-21 16:53:33.000000000","message":"I assume these field names and possible values a standardised part of the API?","commit_id":"748b4fd583b376b1aea58d2c10b00b367e724bd1"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"317eb96ed48b7e22b57cf88f44acb1b80d785c1f","unresolved":false,"context_lines":[{"line_number":154,"context_line":"    {"},{"line_number":155,"context_line":"        \"indicators\": ["},{"line_number":156,"context_line":"            {"},{"line_number":157,"context_line":"                \"name\": \"power\","},{"line_number":158,"context_line":"                \"readonly\": true,"},{"line_number":159,"context_line":"                \"states\": ["},{"line_number":160,"context_line":"                    \"OFF\","},{"line_number":161,"context_line":"                    \"ON\""},{"line_number":162,"context_line":"                ],"},{"line_number":163,"context_line":"                \"links\": ["},{"line_number":164,"context_line":"                    {"},{"line_number":165,"context_line":"                        \"href\": \"http://127.0.0.1:6385/v1/nodes/Compute0/"}],"source_content_type":"text/x-rst","patch_set":7,"id":"bfb3d3c7_ff8d43d3","line":162,"range":{"start_line":157,"start_character":0,"end_line":162,"end_character":18},"in_reply_to":"bfb3d3c7_3f68bb1f","updated":"2019-05-21 17:10:29.000000000","message":"I think this is going to come out of the driver sadly because I think we know of at least one BMC that has a few different blink patterns that can be triggered via IPMI.","commit_id":"748b4fd583b376b1aea58d2c10b00b367e724bd1"},{"author":{"_account_id":26340,"name":"Ilya Etingof","email":"etingof@gmail.com","username":"etingof"},"change_message_id":"7e57016616745caa0b3e9221f71291762c668d3a","unresolved":false,"context_lines":[{"line_number":154,"context_line":"    {"},{"line_number":155,"context_line":"        \"indicators\": ["},{"line_number":156,"context_line":"            {"},{"line_number":157,"context_line":"                \"name\": \"power\","},{"line_number":158,"context_line":"                \"readonly\": true,"},{"line_number":159,"context_line":"                \"states\": ["},{"line_number":160,"context_line":"                    \"OFF\","},{"line_number":161,"context_line":"                    \"ON\""},{"line_number":162,"context_line":"                ],"},{"line_number":163,"context_line":"                \"links\": ["},{"line_number":164,"context_line":"                    {"},{"line_number":165,"context_line":"                        \"href\": \"http://127.0.0.1:6385/v1/nodes/Compute0/"}],"source_content_type":"text/x-rst","patch_set":7,"id":"bfb3d3c7_2254dffe","line":162,"range":{"start_line":157,"start_character":0,"end_line":162,"end_character":18},"in_reply_to":"bfb3d3c7_5cc7ab13","updated":"2019-05-24 16:14:01.000000000","message":"May be we should have a superset of reasonable indicator states standardised, then either report those supported by the driver/hardware to ironic client or fail softly if the client tries to set indicator to an unsupported value?","commit_id":"748b4fd583b376b1aea58d2c10b00b367e724bd1"},{"author":{"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},"change_message_id":"b39b94bdbfcd841926c99b33d9b4e54ff9c28150","unresolved":false,"context_lines":[{"line_number":154,"context_line":"    {"},{"line_number":155,"context_line":"        \"indicators\": ["},{"line_number":156,"context_line":"            {"},{"line_number":157,"context_line":"                \"name\": \"power\","},{"line_number":158,"context_line":"                \"readonly\": true,"},{"line_number":159,"context_line":"                \"states\": ["},{"line_number":160,"context_line":"                    \"OFF\","},{"line_number":161,"context_line":"                    \"ON\""},{"line_number":162,"context_line":"                ],"},{"line_number":163,"context_line":"                \"links\": ["},{"line_number":164,"context_line":"                    {"},{"line_number":165,"context_line":"                        \"href\": \"http://127.0.0.1:6385/v1/nodes/Compute0/"}],"source_content_type":"text/x-rst","patch_set":7,"id":"bfb3d3c7_3f68bb1f","line":162,"range":{"start_line":157,"start_character":0,"end_line":162,"end_character":18},"in_reply_to":"bfb3d3c7_7f5dd3e7","updated":"2019-05-21 16:58:45.000000000","message":"Looking at the proposed implementation, there do appear to be standardised values.","commit_id":"748b4fd583b376b1aea58d2c10b00b367e724bd1"},{"author":{"_account_id":2472,"name":"Doug Hellmann","email":"dhellmann@redhat.com","username":"doug-hellmann"},"change_message_id":"d8b03fadfa2060ad9dc57a25db83321ecfd5ce8c","unresolved":false,"context_lines":[{"line_number":154,"context_line":"    {"},{"line_number":155,"context_line":"        \"indicators\": ["},{"line_number":156,"context_line":"            {"},{"line_number":157,"context_line":"                \"name\": \"power\","},{"line_number":158,"context_line":"                \"readonly\": true,"},{"line_number":159,"context_line":"                \"states\": ["},{"line_number":160,"context_line":"                    \"OFF\","},{"line_number":161,"context_line":"                    \"ON\""},{"line_number":162,"context_line":"                ],"},{"line_number":163,"context_line":"                \"links\": ["},{"line_number":164,"context_line":"                    {"},{"line_number":165,"context_line":"                        \"href\": \"http://127.0.0.1:6385/v1/nodes/Compute0/"}],"source_content_type":"text/x-rst","patch_set":7,"id":"bfb3d3c7_5cc7ab13","line":162,"range":{"start_line":157,"start_character":0,"end_line":162,"end_character":18},"in_reply_to":"bfb3d3c7_ff8d43d3","updated":"2019-05-22 12:18:22.000000000","message":"As a consumer of this API, I would love if we could standardize on what values are supported overall, even if that means some indicators do not support some values. So if we define the union of all values and then have the API include the possible values for each indicator, the client can discover what is supported and pass a valid value.","commit_id":"748b4fd583b376b1aea58d2c10b00b367e724bd1"},{"author":{"_account_id":2472,"name":"Doug Hellmann","email":"dhellmann@redhat.com","username":"doug-hellmann"},"change_message_id":"d8b03fadfa2060ad9dc57a25db83321ecfd5ce8c","unresolved":false,"context_lines":[{"line_number":176,"context_line":"            {"},{"line_number":177,"context_line":"                \"name\": \"alert\","},{"line_number":178,"context_line":"                \"readonly\": false,"},{"line_number":179,"context_line":"                \"states\": ["},{"line_number":180,"context_line":"                    \"OFF\","},{"line_number":181,"context_line":"                    \"BLINKING\","},{"line_number":182,"context_line":"                    \"UNKNOWN\""}],"source_content_type":"text/x-rst","patch_set":7,"id":"bfb3d3c7_7cf38f74","line":179,"updated":"2019-05-22 12:18:22.000000000","message":"It would be nice if one of the values returned here was the current state. That would save a zillion calls to build that data up by iterating over all of the indicators.","commit_id":"748b4fd583b376b1aea58d2c10b00b367e724bd1"},{"author":{"_account_id":26340,"name":"Ilya Etingof","email":"etingof@gmail.com","username":"etingof"},"change_message_id":"7e57016616745caa0b3e9221f71291762c668d3a","unresolved":false,"context_lines":[{"line_number":176,"context_line":"            {"},{"line_number":177,"context_line":"                \"name\": \"alert\","},{"line_number":178,"context_line":"                \"readonly\": false,"},{"line_number":179,"context_line":"                \"states\": ["},{"line_number":180,"context_line":"                    \"OFF\","},{"line_number":181,"context_line":"                    \"BLINKING\","},{"line_number":182,"context_line":"                    \"UNKNOWN\""}],"source_content_type":"text/x-rst","patch_set":7,"id":"bfb3d3c7_e2800749","line":179,"in_reply_to":"bfb3d3c7_7cf38f74","updated":"2019-05-24 16:14:01.000000000","message":"I would argue that pulling all states would require ironic to go out and do the same zillion of calls (at least with Redfish). While it indeed simplifies life for the client (if the client wants all these immediate states), what if the states aren\u0027t needed? \n\nShould there be a way for the client to opt-out of gathering the actual states then?\n\nCould there be situations when the client does not need to watch all the indicators, but just a select of them?","commit_id":"748b4fd583b376b1aea58d2c10b00b367e724bd1"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"109808098913026f836ada94239a20cc6e14b2da","unresolved":false,"context_lines":[{"line_number":215,"context_line":"  .. code-block:: json"},{"line_number":216,"context_line":""},{"line_number":217,"context_line":"      {"},{"line_number":218,"context_line":"        \"state\": \"ON\""},{"line_number":219,"context_line":"      }"},{"line_number":220,"context_line":""},{"line_number":221,"context_line":"* ``PUT /v1/nodes/\u003cnode_ident\u003e/management/indicators/\u003ccomponent\u003e/\u003cind_ident\u003e``"}],"source_content_type":"text/x-rst","patch_set":7,"id":"bfb3d3c7_d19e3d06","line":218,"updated":"2019-05-21 10:32:41.000000000","message":"Sorry for confusion on the previous patch, I should have commented here, not on PUT. Probably we need to include the \"links\" structure with a self-referencing link, but it\u0027s not blocking.","commit_id":"748b4fd583b376b1aea58d2c10b00b367e724bd1"},{"author":{"_account_id":26340,"name":"Ilya Etingof","email":"etingof@gmail.com","username":"etingof"},"change_message_id":"7e57016616745caa0b3e9221f71291762c668d3a","unresolved":false,"context_lines":[{"line_number":215,"context_line":"  .. code-block:: json"},{"line_number":216,"context_line":""},{"line_number":217,"context_line":"      {"},{"line_number":218,"context_line":"        \"state\": \"ON\""},{"line_number":219,"context_line":"      }"},{"line_number":220,"context_line":""},{"line_number":221,"context_line":"* ``PUT /v1/nodes/\u003cnode_ident\u003e/management/indicators/\u003ccomponent\u003e/\u003cind_ident\u003e``"}],"source_content_type":"text/x-rst","patch_set":7,"id":"bfb3d3c7_a2968f92","line":218,"in_reply_to":"bfb3d3c7_2c9ae213","updated":"2019-05-24 16:14:01.000000000","message":"Done","commit_id":"748b4fd583b376b1aea58d2c10b00b367e724bd1"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"450a9276d2388b5596849d268e56ad8988673c2b","unresolved":false,"context_lines":[{"line_number":215,"context_line":"  .. code-block:: json"},{"line_number":216,"context_line":""},{"line_number":217,"context_line":"      {"},{"line_number":218,"context_line":"        \"state\": \"ON\""},{"line_number":219,"context_line":"      }"},{"line_number":220,"context_line":""},{"line_number":221,"context_line":"* ``PUT /v1/nodes/\u003cnode_ident\u003e/management/indicators/\u003ccomponent\u003e/\u003cind_ident\u003e``"}],"source_content_type":"text/x-rst","patch_set":7,"id":"bfb3d3c7_2c9ae213","line":218,"in_reply_to":"bfb3d3c7_4ce4f6ac","updated":"2019-05-21 11:17:33.000000000","message":"For the pure restful standpoint, yes. Which make me question is it\u0027s actually needed (I don\u0027t think we do it for node states). Feel free to ignore this comment.","commit_id":"748b4fd583b376b1aea58d2c10b00b367e724bd1"},{"author":{"_account_id":26340,"name":"Ilya Etingof","email":"etingof@gmail.com","username":"etingof"},"change_message_id":"9ad3bbe76a6654f612dcf4b1a7d78da98b21910b","unresolved":false,"context_lines":[{"line_number":215,"context_line":"  .. code-block:: json"},{"line_number":216,"context_line":""},{"line_number":217,"context_line":"      {"},{"line_number":218,"context_line":"        \"state\": \"ON\""},{"line_number":219,"context_line":"      }"},{"line_number":220,"context_line":""},{"line_number":221,"context_line":"* ``PUT /v1/nodes/\u003cnode_ident\u003e/management/indicators/\u003ccomponent\u003e/\u003cind_ident\u003e``"}],"source_content_type":"text/x-rst","patch_set":7,"id":"bfb3d3c7_4ce4f6ac","line":218,"in_reply_to":"bfb3d3c7_d19e3d06","updated":"2019-05-21 11:16:34.000000000","message":"If we do that for GET, would that require PUT against the same resource (at #L221) to supply the same \"links\" structure to remain RESTful?","commit_id":"748b4fd583b376b1aea58d2c10b00b367e724bd1"},{"author":{"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},"change_message_id":"0d376b3101addeefb9c4024d196febe50de73889","unresolved":false,"context_lines":[{"line_number":251,"context_line":""},{"line_number":252,"context_line":".. code-block:: bash"},{"line_number":253,"context_line":""},{"line_number":254,"context_line":"    openstack baremetal indicator list [component]"},{"line_number":255,"context_line":"    openstack baremetal indicator show \u003ccomponent\u003e indicator"},{"line_number":256,"context_line":"    openstack baremetal indicator set \u003ccomponent\u003e \u003cindicator\u003e --state {ON,OFF,BLINKING}"},{"line_number":257,"context_line":""}],"source_content_type":"text/x-rst","patch_set":7,"id":"bfb3d3c7_3fc75b48","line":254,"updated":"2019-05-21 16:53:33.000000000","message":"Without specifying a component, will this list the indicators in all components, or just the components? The latter might be confusing.","commit_id":"748b4fd583b376b1aea58d2c10b00b367e724bd1"},{"author":{"_account_id":26340,"name":"Ilya Etingof","email":"etingof@gmail.com","username":"etingof"},"change_message_id":"7e57016616745caa0b3e9221f71291762c668d3a","unresolved":false,"context_lines":[{"line_number":251,"context_line":""},{"line_number":252,"context_line":".. code-block:: bash"},{"line_number":253,"context_line":""},{"line_number":254,"context_line":"    openstack baremetal indicator list [component]"},{"line_number":255,"context_line":"    openstack baremetal indicator show \u003ccomponent\u003e indicator"},{"line_number":256,"context_line":"    openstack baremetal indicator set \u003ccomponent\u003e \u003cindicator\u003e --state {ON,OFF,BLINKING}"},{"line_number":257,"context_line":""}],"source_content_type":"text/x-rst","patch_set":7,"id":"bfb3d3c7_38e40e3c","line":254,"in_reply_to":"bfb3d3c7_3fc75b48","updated":"2019-05-24 16:14:01.000000000","message":"I think it should list all indicators for all components. I\u0027ve added that note.","commit_id":"748b4fd583b376b1aea58d2c10b00b367e724bd1"},{"author":{"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},"change_message_id":"0d376b3101addeefb9c4024d196febe50de73889","unresolved":false,"context_lines":[{"line_number":253,"context_line":""},{"line_number":254,"context_line":"    openstack baremetal indicator list [component]"},{"line_number":255,"context_line":"    openstack baremetal indicator show \u003ccomponent\u003e indicator"},{"line_number":256,"context_line":"    openstack baremetal indicator set \u003ccomponent\u003e \u003cindicator\u003e --state {ON,OFF,BLINKING}"},{"line_number":257,"context_line":""},{"line_number":258,"context_line":"RPC API impact"},{"line_number":259,"context_line":"--------------"}],"source_content_type":"text/x-rst","patch_set":7,"id":"bfb3d3c7_df1b9f18","line":256,"updated":"2019-05-21 16:53:33.000000000","message":"Since these belong to a node, should it be openstack baremetal node indicator ...?\n\nWill also need to add \u003cnode\u003e as the first argument to each.","commit_id":"748b4fd583b376b1aea58d2c10b00b367e724bd1"},{"author":{"_account_id":26340,"name":"Ilya Etingof","email":"etingof@gmail.com","username":"etingof"},"change_message_id":"7e57016616745caa0b3e9221f71291762c668d3a","unresolved":false,"context_lines":[{"line_number":253,"context_line":""},{"line_number":254,"context_line":"    openstack baremetal indicator list [component]"},{"line_number":255,"context_line":"    openstack baremetal indicator show \u003ccomponent\u003e indicator"},{"line_number":256,"context_line":"    openstack baremetal indicator set \u003ccomponent\u003e \u003cindicator\u003e --state {ON,OFF,BLINKING}"},{"line_number":257,"context_line":""},{"line_number":258,"context_line":"RPC API impact"},{"line_number":259,"context_line":"--------------"}],"source_content_type":"text/x-rst","patch_set":7,"id":"bfb3d3c7_386bae85","line":256,"in_reply_to":"bfb3d3c7_5f46cf7e","updated":"2019-05-24 16:14:01.000000000","message":"Done","commit_id":"748b4fd583b376b1aea58d2c10b00b367e724bd1"},{"author":{"_account_id":26340,"name":"Ilya Etingof","email":"etingof@gmail.com","username":"etingof"},"change_message_id":"7e57016616745caa0b3e9221f71291762c668d3a","unresolved":false,"context_lines":[{"line_number":253,"context_line":""},{"line_number":254,"context_line":"    openstack baremetal indicator list [component]"},{"line_number":255,"context_line":"    openstack baremetal indicator show \u003ccomponent\u003e indicator"},{"line_number":256,"context_line":"    openstack baremetal indicator set \u003ccomponent\u003e \u003cindicator\u003e --state {ON,OFF,BLINKING}"},{"line_number":257,"context_line":""},{"line_number":258,"context_line":"RPC API impact"},{"line_number":259,"context_line":"--------------"}],"source_content_type":"text/x-rst","patch_set":7,"id":"bfb3d3c7_5868e285","line":256,"in_reply_to":"bfb3d3c7_df1b9f18","updated":"2019-05-24 16:14:01.000000000","message":"Done","commit_id":"748b4fd583b376b1aea58d2c10b00b367e724bd1"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"317eb96ed48b7e22b57cf88f44acb1b80d785c1f","unresolved":false,"context_lines":[{"line_number":253,"context_line":""},{"line_number":254,"context_line":"    openstack baremetal indicator list [component]"},{"line_number":255,"context_line":"    openstack baremetal indicator show \u003ccomponent\u003e indicator"},{"line_number":256,"context_line":"    openstack baremetal indicator set \u003ccomponent\u003e \u003cindicator\u003e --state {ON,OFF,BLINKING}"},{"line_number":257,"context_line":""},{"line_number":258,"context_line":"RPC API impact"},{"line_number":259,"context_line":"--------------"}],"source_content_type":"text/x-rst","patch_set":7,"id":"bfb3d3c7_5f46cf7e","line":256,"in_reply_to":"bfb3d3c7_df1b9f18","updated":"2019-05-21 17:10:29.000000000","message":"I\u0027m thinking openstack baremetal node indicator x y z, but I think part of this is missing the fact that there are nodes. This part definitely needs to be revised FWIW.","commit_id":"748b4fd583b376b1aea58d2c10b00b367e724bd1"}]}
