)]}'
{"specs/approved/graphical-console.rst":[{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"e52e4086cdf0d9ef5388735406cf8bca22ca1779","unresolved":false,"context_lines":[{"line_number":5,"context_line":" http://creativecommons.org/licenses/by/3.0/legalcode"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":8,"context_line":"Graphical console"},{"line_number":9,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":10,"context_line":""},{"line_number":11,"context_line":"https://bugs.launchpad.net/ironic/+bug/1567629"}],"source_content_type":"text/x-rst","patch_set":1,"id":"1a95cdbc_f1e2702e","line":8,"updated":"2016-10-06 19:17:42.000000000","message":"Maybe it is obvious,  but I\u0027d put s/Graphical/VNC graphical/","commit_id":"56255d4d0986ed201f49ebf24c65b5b2e2a6f4bd"},{"author":{"_account_id":7080,"name":"Mathieu Mitchell","email":"mat128@gmail.com","username":"mat128"},"change_message_id":"17be7d58627e16c17eabc1365f86162aaa448bfa","unresolved":false,"context_lines":[{"line_number":5,"context_line":" http://creativecommons.org/licenses/by/3.0/legalcode"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":8,"context_line":"Graphical console"},{"line_number":9,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":10,"context_line":""},{"line_number":11,"context_line":"https://bugs.launchpad.net/ironic/+bug/1567629"}],"source_content_type":"text/x-rst","patch_set":1,"id":"fa6399be_11722511","line":8,"in_reply_to":"1a95cdbc_f1e2702e","updated":"2016-10-19 12:57:09.000000000","message":"Done","commit_id":"56255d4d0986ed201f49ebf24c65b5b2e2a6f4bd"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"e52e4086cdf0d9ef5388735406cf8bca22ca1779","unresolved":false,"context_lines":[{"line_number":10,"context_line":""},{"line_number":11,"context_line":"https://bugs.launchpad.net/ironic/+bug/1567629"},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"In addition to a serial console, offer a graphical console for Ironic nodes."},{"line_number":14,"context_line":""},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"Problem description"}],"source_content_type":"text/x-rst","patch_set":1,"id":"1a95cdbc_2e6557b4","line":13,"updated":"2016-10-06 19:17:42.000000000","message":"do you envision allowing access to both serial and graphic consoles at the same time (for the same node)?","commit_id":"56255d4d0986ed201f49ebf24c65b5b2e2a6f4bd"},{"author":{"_account_id":7080,"name":"Mathieu Mitchell","email":"mat128@gmail.com","username":"mat128"},"change_message_id":"17be7d58627e16c17eabc1365f86162aaa448bfa","unresolved":false,"context_lines":[{"line_number":10,"context_line":""},{"line_number":11,"context_line":"https://bugs.launchpad.net/ironic/+bug/1567629"},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"In addition to a serial console, offer a graphical console for Ironic nodes."},{"line_number":14,"context_line":""},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"Problem description"}],"source_content_type":"text/x-rst","patch_set":1,"id":"fa6399be_d1526d66","line":13,"in_reply_to":"1a95cdbc_2e6557b4","updated":"2016-10-19 12:57:09.000000000","message":"Reworded in an attempt to clarify this, but yes, both serial and graphical at the same time (most hardware can do both).","commit_id":"56255d4d0986ed201f49ebf24c65b5b2e2a6f4bd"},{"author":{"_account_id":16530,"name":"Wajdi Al-Hawari","email":"w.hawari@gmail.com","username":"wajdi"},"change_message_id":"624c07d18a833e49254a228a24cf5cb9d099a6fb","unresolved":false,"context_lines":[{"line_number":16,"context_line":"Problem description"},{"line_number":17,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"End users often have to troubleshoot their instances, they might have broken"},{"line_number":20,"context_line":"their boot configuration or locked themselves out with a firewall."},{"line_number":21,"context_line":"Keyboard-Video-Mouse (KVM) access is often required for troubleshooting."},{"line_number":22,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"9a89bdaa_2814eaf3","line":19,"updated":"2016-09-03 01:50:27.000000000","message":"instances, because they...","commit_id":"56255d4d0986ed201f49ebf24c65b5b2e2a6f4bd"},{"author":{"_account_id":7080,"name":"Mathieu Mitchell","email":"mat128@gmail.com","username":"mat128"},"change_message_id":"17be7d58627e16c17eabc1365f86162aaa448bfa","unresolved":false,"context_lines":[{"line_number":16,"context_line":"Problem description"},{"line_number":17,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"End users often have to troubleshoot their instances, they might have broken"},{"line_number":20,"context_line":"their boot configuration or locked themselves out with a firewall."},{"line_number":21,"context_line":"Keyboard-Video-Mouse (KVM) access is often required for troubleshooting."},{"line_number":22,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"fa6399be_31cac91b","line":19,"in_reply_to":"9a89bdaa_2814eaf3","updated":"2016-10-19 12:57:09.000000000","message":"Done","commit_id":"56255d4d0986ed201f49ebf24c65b5b2e2a6f4bd"},{"author":{"_account_id":16530,"name":"Wajdi Al-Hawari","email":"w.hawari@gmail.com","username":"wajdi"},"change_message_id":"624c07d18a833e49254a228a24cf5cb9d099a6fb","unresolved":false,"context_lines":[{"line_number":18,"context_line":""},{"line_number":19,"context_line":"End users often have to troubleshoot their instances, they might have broken"},{"line_number":20,"context_line":"their boot configuration or locked themselves out with a firewall."},{"line_number":21,"context_line":"Keyboard-Video-Mouse (KVM) access is often required for troubleshooting."},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"Currently, Ironic does not expose a node\u0027s KVM capabilities. As such, admin"},{"line_number":24,"context_line":"users and deployers have to find alternatives to provide KVM access to their"}],"source_content_type":"text/x-rst","patch_set":1,"id":"9a89bdaa_a8c55a5c","line":21,"updated":"2016-09-03 01:50:27.000000000","message":"troubleshooting these types of issues.","commit_id":"56255d4d0986ed201f49ebf24c65b5b2e2a6f4bd"},{"author":{"_account_id":7080,"name":"Mathieu Mitchell","email":"mat128@gmail.com","username":"mat128"},"change_message_id":"17be7d58627e16c17eabc1365f86162aaa448bfa","unresolved":false,"context_lines":[{"line_number":18,"context_line":""},{"line_number":19,"context_line":"End users often have to troubleshoot their instances, they might have broken"},{"line_number":20,"context_line":"their boot configuration or locked themselves out with a firewall."},{"line_number":21,"context_line":"Keyboard-Video-Mouse (KVM) access is often required for troubleshooting."},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"Currently, Ironic does not expose a node\u0027s KVM capabilities. As such, admin"},{"line_number":24,"context_line":"users and deployers have to find alternatives to provide KVM access to their"}],"source_content_type":"text/x-rst","patch_set":1,"id":"fa6399be_51cd7d2f","line":21,"in_reply_to":"9a89bdaa_a8c55a5c","updated":"2016-10-19 12:57:09.000000000","message":"Done","commit_id":"56255d4d0986ed201f49ebf24c65b5b2e2a6f4bd"},{"author":{"_account_id":16530,"name":"Wajdi Al-Hawari","email":"w.hawari@gmail.com","username":"wajdi"},"change_message_id":"624c07d18a833e49254a228a24cf5cb9d099a6fb","unresolved":false,"context_lines":[{"line_number":28,"context_line":"Proposed change"},{"line_number":29,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":30,"context_line":""},{"line_number":31,"context_line":"This change introduces the concept of graphical console to Ironic."},{"line_number":32,"context_line":""},{"line_number":33,"context_line":"The general idea is to have Ironic provide a VNC console through a mechanism"},{"line_number":34,"context_line":"similar to the currently available serial console."}],"source_content_type":"text/x-rst","patch_set":1,"id":"9a89bdaa_c8a0dea8","line":31,"updated":"2016-09-03 01:50:27.000000000","message":"concept of a graphical....","commit_id":"56255d4d0986ed201f49ebf24c65b5b2e2a6f4bd"},{"author":{"_account_id":16530,"name":"Wajdi Al-Hawari","email":"w.hawari@gmail.com","username":"wajdi"},"change_message_id":"624c07d18a833e49254a228a24cf5cb9d099a6fb","unresolved":false,"context_lines":[{"line_number":54,"context_line":"REST API impact"},{"line_number":55,"context_line":"---------------"},{"line_number":56,"context_line":""},{"line_number":57,"context_line":"* Introduce a new API call to enable graphical console. It will follow the same"},{"line_number":58,"context_line":"  contract that set-console-mode already uses."},{"line_number":59,"context_line":""},{"line_number":60,"context_line":"* Introduce a new API call to get graphical console details. It will follow the"}],"source_content_type":"text/x-rst","patch_set":1,"id":"9a89bdaa_e8a5a2b5","line":57,"updated":"2016-09-03 01:50:27.000000000","message":"enable the graphical console.","commit_id":"56255d4d0986ed201f49ebf24c65b5b2e2a6f4bd"},{"author":{"_account_id":7080,"name":"Mathieu Mitchell","email":"mat128@gmail.com","username":"mat128"},"change_message_id":"17be7d58627e16c17eabc1365f86162aaa448bfa","unresolved":false,"context_lines":[{"line_number":54,"context_line":"REST API impact"},{"line_number":55,"context_line":"---------------"},{"line_number":56,"context_line":""},{"line_number":57,"context_line":"* Introduce a new API call to enable graphical console. It will follow the same"},{"line_number":58,"context_line":"  contract that set-console-mode already uses."},{"line_number":59,"context_line":""},{"line_number":60,"context_line":"* Introduce a new API call to get graphical console details. It will follow the"}],"source_content_type":"text/x-rst","patch_set":1,"id":"fa6399be_f1e4d1ac","line":57,"in_reply_to":"9a89bdaa_e8a5a2b5","updated":"2016-10-19 12:57:09.000000000","message":"Done","commit_id":"56255d4d0986ed201f49ebf24c65b5b2e2a6f4bd"},{"author":{"_account_id":20902,"name":"Félix Bouliane","email":"fbouliane@inap.com","username":"fbouliane"},"change_message_id":"8b289b8600d613208c05b45531b55a1f4bc36e35","unresolved":false,"context_lines":[{"line_number":60,"context_line":"* Introduce a new API call to get graphical console details. It will follow the"},{"line_number":61,"context_line":"  same contract that get-console already uses."},{"line_number":62,"context_line":""},{"line_number":63,"context_line":"The API microversion will probably need to be bumped."},{"line_number":64,"context_line":""},{"line_number":65,"context_line":""},{"line_number":66,"context_line":"Client (CLI) impact"}],"source_content_type":"text/x-rst","patch_set":1,"id":"1a122d0e_3fd3b9d6","line":63,"range":{"start_line":63,"start_character":26,"end_line":63,"end_character":34},"updated":"2016-04-27 17:26:01.000000000","message":"s/ probably//","commit_id":"56255d4d0986ed201f49ebf24c65b5b2e2a6f4bd"},{"author":{"_account_id":7080,"name":"Mathieu Mitchell","email":"mat128@gmail.com","username":"mat128"},"change_message_id":"17be7d58627e16c17eabc1365f86162aaa448bfa","unresolved":false,"context_lines":[{"line_number":60,"context_line":"* Introduce a new API call to get graphical console details. It will follow the"},{"line_number":61,"context_line":"  same contract that get-console already uses."},{"line_number":62,"context_line":""},{"line_number":63,"context_line":"The API microversion will probably need to be bumped."},{"line_number":64,"context_line":""},{"line_number":65,"context_line":""},{"line_number":66,"context_line":"Client (CLI) impact"}],"source_content_type":"text/x-rst","patch_set":1,"id":"fa6399be_d1d98df4","line":63,"range":{"start_line":63,"start_character":26,"end_line":63,"end_character":34},"in_reply_to":"1a122d0e_3fd3b9d6","updated":"2016-10-19 12:57:09.000000000","message":"Done","commit_id":"56255d4d0986ed201f49ebf24c65b5b2e2a6f4bd"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"e52e4086cdf0d9ef5388735406cf8bca22ca1779","unresolved":false,"context_lines":[{"line_number":70,"context_line":"  console state."},{"line_number":71,"context_line":""},{"line_number":72,"context_line":"* Introduce a new ``node-get-graphical-console`` to fetch graphical console"},{"line_number":73,"context_line":"  details."},{"line_number":74,"context_line":""},{"line_number":75,"context_line":""},{"line_number":76,"context_line":"RPC API impact"}],"source_content_type":"text/x-rst","patch_set":1,"id":"1a95cdbc_8b273dc9","line":73,"updated":"2016-10-06 19:17:42.000000000","message":"we can bikeshed about these later. I am thinking node-get|set-console* --graphical (or --serial, the default)","commit_id":"56255d4d0986ed201f49ebf24c65b5b2e2a6f4bd"},{"author":{"_account_id":9542,"name":"Pavlo Shchelokovskyy","email":"pshchelokovskyy@mirantis.com","username":"pshchelo"},"change_message_id":"16aaa777765c835c91d8c6469fd18d819ac8fa0c","unresolved":false,"context_lines":[{"line_number":70,"context_line":"  console state."},{"line_number":71,"context_line":""},{"line_number":72,"context_line":"* Introduce a new ``node-get-graphical-console`` to fetch graphical console"},{"line_number":73,"context_line":"  details."},{"line_number":74,"context_line":""},{"line_number":75,"context_line":""},{"line_number":76,"context_line":"RPC API impact"}],"source_content_type":"text/x-rst","patch_set":1,"id":"fa6399be_73f662fa","line":73,"in_reply_to":"1a95cdbc_8b273dc9","updated":"2016-10-13 13:43:21.000000000","message":"+1","commit_id":"56255d4d0986ed201f49ebf24c65b5b2e2a6f4bd"},{"author":{"_account_id":7080,"name":"Mathieu Mitchell","email":"mat128@gmail.com","username":"mat128"},"change_message_id":"17be7d58627e16c17eabc1365f86162aaa448bfa","unresolved":false,"context_lines":[{"line_number":70,"context_line":"  console state."},{"line_number":71,"context_line":""},{"line_number":72,"context_line":"* Introduce a new ``node-get-graphical-console`` to fetch graphical console"},{"line_number":73,"context_line":"  details."},{"line_number":74,"context_line":""},{"line_number":75,"context_line":""},{"line_number":76,"context_line":"RPC API impact"}],"source_content_type":"text/x-rst","patch_set":1,"id":"fa6399be_b105f946","line":73,"in_reply_to":"fa6399be_73f662fa","updated":"2016-10-19 12:57:09.000000000","message":"Very good idea indeed :)\nfixed.","commit_id":"56255d4d0986ed201f49ebf24c65b5b2e2a6f4bd"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"e52e4086cdf0d9ef5388735406cf8bca22ca1779","unresolved":false,"context_lines":[{"line_number":82,"context_line":"Driver API impact"},{"line_number":83,"context_line":"-----------------"},{"line_number":84,"context_line":""},{"line_number":85,"context_line":"* Introduce a new ``GraphicalConsoleInterface``"},{"line_number":86,"context_line":""},{"line_number":87,"context_line":"* Introduce a new member for drivers, ``graphical_console``"},{"line_number":88,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"1a95cdbc_11dfdc0d","line":85,"updated":"2016-10-06 19:17:42.000000000","message":"is this a new base.GraphicalConsoleInterface? If it is needed, I\u0027d prefer that it was subclassed from base.ConsoleInterface. Although maybe base.ConsoleInterface could be used. What methods/diffs do you envision between base.ConsoleInterface and this new GraphicalConsoleInterface?","commit_id":"56255d4d0986ed201f49ebf24c65b5b2e2a6f4bd"},{"author":{"_account_id":7080,"name":"Mathieu Mitchell","email":"mat128@gmail.com","username":"mat128"},"change_message_id":"17be7d58627e16c17eabc1365f86162aaa448bfa","unresolved":false,"context_lines":[{"line_number":82,"context_line":"Driver API impact"},{"line_number":83,"context_line":"-----------------"},{"line_number":84,"context_line":""},{"line_number":85,"context_line":"* Introduce a new ``GraphicalConsoleInterface``"},{"line_number":86,"context_line":""},{"line_number":87,"context_line":"* Introduce a new member for drivers, ``graphical_console``"},{"line_number":88,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"fa6399be_91a1d548","line":85,"in_reply_to":"1a95cdbc_11dfdc0d","updated":"2016-10-19 12:57:09.000000000","message":"Agreed, it\u0027s probably the same base. Removing.","commit_id":"56255d4d0986ed201f49ebf24c65b5b2e2a6f4bd"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"e52e4086cdf0d9ef5388735406cf8bca22ca1779","unresolved":false,"context_lines":[{"line_number":84,"context_line":""},{"line_number":85,"context_line":"* Introduce a new ``GraphicalConsoleInterface``"},{"line_number":86,"context_line":""},{"line_number":87,"context_line":"* Introduce a new member for drivers, ``graphical_console``"},{"line_number":88,"context_line":""},{"line_number":89,"context_line":"* A graphical_console driver will be written for the current SSH driver to"},{"line_number":90,"context_line":"  allow testing within devstack. It will be added to ``AgentAndSSHDriver``,"}],"source_content_type":"text/x-rst","patch_set":1,"id":"1a95cdbc_b1af0829","line":87,"updated":"2016-10-06 19:17:42.000000000","message":"Hmm... I\u0027m concerned about adding a new member. Could we use the same console member, but make it a mixin? This may depend on how we allow specification of which graphical or serial console to be used for a particular node.","commit_id":"56255d4d0986ed201f49ebf24c65b5b2e2a6f4bd"},{"author":{"_account_id":7080,"name":"Mathieu Mitchell","email":"mat128@gmail.com","username":"mat128"},"change_message_id":"17be7d58627e16c17eabc1365f86162aaa448bfa","unresolved":false,"context_lines":[{"line_number":84,"context_line":""},{"line_number":85,"context_line":"* Introduce a new ``GraphicalConsoleInterface``"},{"line_number":86,"context_line":""},{"line_number":87,"context_line":"* Introduce a new member for drivers, ``graphical_console``"},{"line_number":88,"context_line":""},{"line_number":89,"context_line":"* A graphical_console driver will be written for the current SSH driver to"},{"line_number":90,"context_line":"  allow testing within devstack. It will be added to ``AgentAndSSHDriver``,"}],"source_content_type":"text/x-rst","patch_set":1,"id":"fa6399be_b17a59bb","line":87,"in_reply_to":"1a95cdbc_b1af0829","updated":"2016-10-19 12:57:09.000000000","message":"Given that we are allowing both serial and graphical consoles for nodes at the same time, I think this is required, otherwise the current \"console\" will need to be something other than ConsoleInterface and it would dispatch to the right console driver (serial/graphical). Another option is to make GraphicalConsole implement different methods ({start,stop}_graphical_console and get_graphical_console). If we did that, console could be a mixin between a serial/graphical, but it would require a new base.","commit_id":"56255d4d0986ed201f49ebf24c65b5b2e2a6f4bd"},{"author":{"_account_id":9542,"name":"Pavlo Shchelokovskyy","email":"pshchelokovskyy@mirantis.com","username":"pshchelo"},"change_message_id":"460ef610453c569667cab5931881591124be5184","unresolved":false,"context_lines":[{"line_number":84,"context_line":""},{"line_number":85,"context_line":"* Introduce a new ``GraphicalConsoleInterface``"},{"line_number":86,"context_line":""},{"line_number":87,"context_line":"* Introduce a new member for drivers, ``graphical_console``"},{"line_number":88,"context_line":""},{"line_number":89,"context_line":"* A graphical_console driver will be written for the current SSH driver to"},{"line_number":90,"context_line":"  allow testing within devstack. It will be added to ``AgentAndSSHDriver``,"}],"source_content_type":"text/x-rst","patch_set":1,"id":"fa6399be_abf7fdf3","line":87,"in_reply_to":"1a95cdbc_b1af0829","updated":"2016-10-18 10:16:46.000000000","message":"Ruby, while we could probably use the same base.ConsoleInterface for VNC consoles and reuse the existing console-related API (e.g. by adding a graphical\u003dTrue/False switch to the REST/RPC APIs) I think a separate entity of \"graphical_console\" is justified - text and graphical consoles are quite different things, and IMO we should not restrict users to choose only one or another based on driver assigned to the node.","commit_id":"56255d4d0986ed201f49ebf24c65b5b2e2a6f4bd"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"e52e4086cdf0d9ef5388735406cf8bca22ca1779","unresolved":false,"context_lines":[{"line_number":86,"context_line":""},{"line_number":87,"context_line":"* Introduce a new member for drivers, ``graphical_console``"},{"line_number":88,"context_line":""},{"line_number":89,"context_line":"* A graphical_console driver will be written for the current SSH driver to"},{"line_number":90,"context_line":"  allow testing within devstack. It will be added to ``AgentAndSSHDriver``,"},{"line_number":91,"context_line":"  ``FakeSSHDriver`` and ``PXEAndSSHDriver``. This will obviously be simplified"},{"line_number":92,"context_line":"  with the Driver composition reform [#]_. This SSH graphical console driver"}],"source_content_type":"text/x-rst","patch_set":1,"id":"1a95cdbc_b439b6d9","line":89,"updated":"2016-10-06 19:17:42.000000000","message":"if we/ironic isn\u0027t supporting ssh, should we be doing this?","commit_id":"56255d4d0986ed201f49ebf24c65b5b2e2a6f4bd"},{"author":{"_account_id":9542,"name":"Pavlo Shchelokovskyy","email":"pshchelokovskyy@mirantis.com","username":"pshchelo"},"change_message_id":"16aaa777765c835c91d8c6469fd18d819ac8fa0c","unresolved":false,"context_lines":[{"line_number":86,"context_line":""},{"line_number":87,"context_line":"* Introduce a new member for drivers, ``graphical_console``"},{"line_number":88,"context_line":""},{"line_number":89,"context_line":"* A graphical_console driver will be written for the current SSH driver to"},{"line_number":90,"context_line":"  allow testing within devstack. It will be added to ``AgentAndSSHDriver``,"},{"line_number":91,"context_line":"  ``FakeSSHDriver`` and ``PXEAndSSHDriver``. This will obviously be simplified"},{"line_number":92,"context_line":"  with the Driver composition reform [#]_. This SSH graphical console driver"}],"source_content_type":"text/x-rst","patch_set":1,"id":"fa6399be_530ddee6","line":89,"in_reply_to":"1a95cdbc_b439b6d9","updated":"2016-10-13 13:43:21.000000000","message":"+1, ssh driver is about to be deprecated in favor of testing ipmitool-based drivers with the help of virtualbmc. Probably extending virtualbmc to support getting the libvirt\u0027s VNC console will be needed.","commit_id":"56255d4d0986ed201f49ebf24c65b5b2e2a6f4bd"},{"author":{"_account_id":7080,"name":"Mathieu Mitchell","email":"mat128@gmail.com","username":"mat128"},"change_message_id":"17be7d58627e16c17eabc1365f86162aaa448bfa","unresolved":false,"context_lines":[{"line_number":86,"context_line":""},{"line_number":87,"context_line":"* Introduce a new member for drivers, ``graphical_console``"},{"line_number":88,"context_line":""},{"line_number":89,"context_line":"* A graphical_console driver will be written for the current SSH driver to"},{"line_number":90,"context_line":"  allow testing within devstack. It will be added to ``AgentAndSSHDriver``,"},{"line_number":91,"context_line":"  ``FakeSSHDriver`` and ``PXEAndSSHDriver``. This will obviously be simplified"},{"line_number":92,"context_line":"  with the Driver composition reform [#]_. This SSH graphical console driver"}],"source_content_type":"text/x-rst","patch_set":1,"id":"fa6399be_b1617907","line":89,"in_reply_to":"fa6399be_530ddee6","updated":"2016-10-19 12:57:09.000000000","message":"Agreed. At the time of writing ssh driver was a common thing. Adjusted to \"ipmi\".\nAlso noted VirtualBMC will need to simulate a BMC that provides a graphical console.","commit_id":"56255d4d0986ed201f49ebf24c65b5b2e2a6f4bd"},{"author":{"_account_id":20902,"name":"Félix Bouliane","email":"fbouliane@inap.com","username":"fbouliane"},"change_message_id":"8b289b8600d613208c05b45531b55a1f4bc36e35","unresolved":false,"context_lines":[{"line_number":90,"context_line":"  allow testing within devstack. It will be added to ``AgentAndSSHDriver``,"},{"line_number":91,"context_line":"  ``FakeSSHDriver`` and ``PXEAndSSHDriver``. This will obviously be simplified"},{"line_number":92,"context_line":"  with the Driver composition reform [#]_. This SSH graphical console driver"},{"line_number":93,"context_line":"  should be implemented whereever SSHPower and SSHManagement are used."},{"line_number":94,"context_line":""},{"line_number":95,"context_line":""},{"line_number":96,"context_line":"Nova driver impact"}],"source_content_type":"text/x-rst","patch_set":1,"id":"1a122d0e_9fd2cdfe","line":93,"range":{"start_line":93,"start_character":24,"end_line":93,"end_character":33},"updated":"2016-04-27 17:26:01.000000000","message":"s/whereever/wherever","commit_id":"56255d4d0986ed201f49ebf24c65b5b2e2a6f4bd"},{"author":{"_account_id":7080,"name":"Mathieu Mitchell","email":"mat128@gmail.com","username":"mat128"},"change_message_id":"17be7d58627e16c17eabc1365f86162aaa448bfa","unresolved":false,"context_lines":[{"line_number":90,"context_line":"  allow testing within devstack. It will be added to ``AgentAndSSHDriver``,"},{"line_number":91,"context_line":"  ``FakeSSHDriver`` and ``PXEAndSSHDriver``. This will obviously be simplified"},{"line_number":92,"context_line":"  with the Driver composition reform [#]_. This SSH graphical console driver"},{"line_number":93,"context_line":"  should be implemented whereever SSHPower and SSHManagement are used."},{"line_number":94,"context_line":""},{"line_number":95,"context_line":""},{"line_number":96,"context_line":"Nova driver impact"}],"source_content_type":"text/x-rst","patch_set":1,"id":"fa6399be_d15c2d4d","line":93,"range":{"start_line":93,"start_character":24,"end_line":93,"end_character":33},"in_reply_to":"1a122d0e_9fd2cdfe","updated":"2016-10-19 12:57:09.000000000","message":"Done","commit_id":"56255d4d0986ed201f49ebf24c65b5b2e2a6f4bd"},{"author":{"_account_id":20902,"name":"Félix Bouliane","email":"fbouliane@inap.com","username":"fbouliane"},"change_message_id":"8b289b8600d613208c05b45531b55a1f4bc36e35","unresolved":false,"context_lines":[{"line_number":96,"context_line":"Nova driver impact"},{"line_number":97,"context_line":"------------------"},{"line_number":98,"context_line":""},{"line_number":99,"context_line":"Nova impacts are fully described in the `VNC console support for Ironic driver`"},{"line_number":100,"context_line":"spec in Nova."},{"line_number":101,"context_line":""},{"line_number":102,"context_line":"Essentially, the Ironic virt driver will have to implement ``get_vnc_console``"}],"source_content_type":"text/x-rst","patch_set":1,"id":"1a122d0e_1f199d88","line":99,"range":{"start_line":99,"start_character":41,"end_line":99,"end_character":78},"updated":"2016-04-27 17:26:01.000000000","message":"Add reference to the blueprint\nhttps://blueprints.launchpad.net/nova/+spec/ironic-vnc-console","commit_id":"56255d4d0986ed201f49ebf24c65b5b2e2a6f4bd"},{"author":{"_account_id":9542,"name":"Pavlo Shchelokovskyy","email":"pshchelokovskyy@mirantis.com","username":"pshchelo"},"change_message_id":"16aaa777765c835c91d8c6469fd18d819ac8fa0c","unresolved":false,"context_lines":[{"line_number":96,"context_line":"Nova driver impact"},{"line_number":97,"context_line":"------------------"},{"line_number":98,"context_line":""},{"line_number":99,"context_line":"Nova impacts are fully described in the `VNC console support for Ironic driver`"},{"line_number":100,"context_line":"spec in Nova."},{"line_number":101,"context_line":""},{"line_number":102,"context_line":"Essentially, the Ironic virt driver will have to implement ``get_vnc_console``"}],"source_content_type":"text/x-rst","patch_set":1,"id":"fa6399be_f39a726d","line":99,"range":{"start_line":99,"start_character":41,"end_line":99,"end_character":78},"in_reply_to":"1a122d0e_1f199d88","updated":"2016-10-13 13:43:21.000000000","message":"Not sure in the nova-specs process, but I\u0027d suspect you might need a proper spec for that too.","commit_id":"56255d4d0986ed201f49ebf24c65b5b2e2a6f4bd"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"e52e4086cdf0d9ef5388735406cf8bca22ca1779","unresolved":false,"context_lines":[{"line_number":97,"context_line":"------------------"},{"line_number":98,"context_line":""},{"line_number":99,"context_line":"Nova impacts are fully described in the `VNC console support for Ironic driver`"},{"line_number":100,"context_line":"spec in Nova."},{"line_number":101,"context_line":""},{"line_number":102,"context_line":"Essentially, the Ironic virt driver will have to implement ``get_vnc_console``"},{"line_number":103,"context_line":"and call Ironic\u0027s new graphical console methods."}],"source_content_type":"text/x-rst","patch_set":1,"id":"1a95cdbc_114c3c9d","line":100,"updated":"2016-10-06 19:17:42.000000000","message":"this is bringing back memories of the serial console work and how we got that done in ironic, but not nova, in the newton cycle. where is that spec and what state is it in? I suspect/hope that the nova-related work would be fairly straightforward.","commit_id":"56255d4d0986ed201f49ebf24c65b5b2e2a6f4bd"},{"author":{"_account_id":9542,"name":"Pavlo Shchelokovskyy","email":"pshchelokovskyy@mirantis.com","username":"pshchelo"},"change_message_id":"16aaa777765c835c91d8c6469fd18d819ac8fa0c","unresolved":false,"context_lines":[{"line_number":97,"context_line":"------------------"},{"line_number":98,"context_line":""},{"line_number":99,"context_line":"Nova impacts are fully described in the `VNC console support for Ironic driver`"},{"line_number":100,"context_line":"spec in Nova."},{"line_number":101,"context_line":""},{"line_number":102,"context_line":"Essentially, the Ironic virt driver will have to implement ``get_vnc_console``"},{"line_number":103,"context_line":"and call Ironic\u0027s new graphical console methods."}],"source_content_type":"text/x-rst","patch_set":1,"id":"fa6399be_13b8c6c7","line":100,"in_reply_to":"1a95cdbc_114c3c9d","updated":"2016-10-13 13:43:21.000000000","message":"Also, I think it worth mentioning that (however obvious) Nova changes will not land until all the Ironic + Ironicclient changes (at least in Python API) land.","commit_id":"56255d4d0986ed201f49ebf24c65b5b2e2a6f4bd"},{"author":{"_account_id":7080,"name":"Mathieu Mitchell","email":"mat128@gmail.com","username":"mat128"},"change_message_id":"17be7d58627e16c17eabc1365f86162aaa448bfa","unresolved":false,"context_lines":[{"line_number":97,"context_line":"------------------"},{"line_number":98,"context_line":""},{"line_number":99,"context_line":"Nova impacts are fully described in the `VNC console support for Ironic driver`"},{"line_number":100,"context_line":"spec in Nova."},{"line_number":101,"context_line":""},{"line_number":102,"context_line":"Essentially, the Ironic virt driver will have to implement ``get_vnc_console``"},{"line_number":103,"context_line":"and call Ironic\u0027s new graphical console methods."}],"source_content_type":"text/x-rst","patch_set":1,"id":"fa6399be_7111a15c","line":100,"in_reply_to":"fa6399be_13b8c6c7","updated":"2016-10-19 12:57:09.000000000","message":"Added as a reminder to future readers.","commit_id":"56255d4d0986ed201f49ebf24c65b5b2e2a6f4bd"}],"specs/approved/vnc-graphical-console.rst":[{"author":{"_account_id":14614,"name":"Kyrylo Romanenko","display_name":"K.Romanenko","email":"romanenko-kv@hotmail.com","username":"kromanenko"},"change_message_id":"074114a5f1ae3ddad13dec9b82d171a0c3846fab","unresolved":false,"context_lines":[{"line_number":31,"context_line":"Proposed change"},{"line_number":32,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":33,"context_line":""},{"line_number":34,"context_line":"This change introduces the concept of a graphical console to Ironic."},{"line_number":35,"context_line":""},{"line_number":36,"context_line":"The general idea is to have Ironic provide a VNC console through a mechanism"},{"line_number":37,"context_line":"similar to the currently available serial console."}],"source_content_type":"text/x-rst","patch_set":2,"id":"fa6399be_d915a849","line":34,"range":{"start_line":34,"start_character":0,"end_line":34,"end_character":68},"updated":"2016-10-19 16:07:41.000000000","message":"Is it intended to provide only linux terminals via VNC protocol or graphical X server will be supported too?","commit_id":"229b6c50a28d39cf27bbd834986ddf0bc8bd6ff2"},{"author":{"_account_id":7080,"name":"Mathieu Mitchell","email":"mat128@gmail.com","username":"mat128"},"change_message_id":"7ac09a6bde8f932b0a4fcefc175e08efdaa98ecd","unresolved":false,"context_lines":[{"line_number":31,"context_line":"Proposed change"},{"line_number":32,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":33,"context_line":""},{"line_number":34,"context_line":"This change introduces the concept of a graphical console to Ironic."},{"line_number":35,"context_line":""},{"line_number":36,"context_line":"The general idea is to have Ironic provide a VNC console through a mechanism"},{"line_number":37,"context_line":"similar to the currently available serial console."}],"source_content_type":"text/x-rst","patch_set":2,"id":"fa6399be_c096674b","line":34,"range":{"start_line":34,"start_character":0,"end_line":34,"end_character":68},"in_reply_to":"fa6399be_d915a849","updated":"2016-10-21 03:27:44.000000000","message":"The idea is to display whatever the server is displaying on it\u0027s monitor, but drivers are essentially free to display anything.","commit_id":"229b6c50a28d39cf27bbd834986ddf0bc8bd6ff2"},{"author":{"_account_id":7711,"name":"Yuriy Zveryanskyy","email":"yzveryanskyy@mirantis.com","username":"yuriyz"},"change_message_id":"5b1c17e0b5d99dcf4463a775bb370df505bdf3fc","unresolved":false,"context_lines":[{"line_number":41,"context_line":"------------"},{"line_number":42,"context_line":""},{"line_number":43,"context_line":"- Accept this limitation and only offer a serial console."},{"line_number":44,"context_line":""},{"line_number":45,"context_line":""},{"line_number":46,"context_line":"Data model impact"},{"line_number":47,"context_line":"-----------------"}],"source_content_type":"text/x-rst","patch_set":2,"id":"fa6399be_2582f994","line":44,"updated":"2016-10-19 15:11:18.000000000","message":"Use KVM access provided by administrator without ironic support.","commit_id":"229b6c50a28d39cf27bbd834986ddf0bc8bd6ff2"},{"author":{"_account_id":7080,"name":"Mathieu Mitchell","email":"mat128@gmail.com","username":"mat128"},"change_message_id":"7ac09a6bde8f932b0a4fcefc175e08efdaa98ecd","unresolved":false,"context_lines":[{"line_number":41,"context_line":"------------"},{"line_number":42,"context_line":""},{"line_number":43,"context_line":"- Accept this limitation and only offer a serial console."},{"line_number":44,"context_line":""},{"line_number":45,"context_line":""},{"line_number":46,"context_line":"Data model impact"},{"line_number":47,"context_line":"-----------------"}],"source_content_type":"text/x-rst","patch_set":2,"id":"fa6399be_2071e344","line":44,"in_reply_to":"fa6399be_2582f994","updated":"2016-10-21 03:27:44.000000000","message":"Indeed. Fixed.","commit_id":"229b6c50a28d39cf27bbd834986ddf0bc8bd6ff2"},{"author":{"_account_id":9542,"name":"Pavlo Shchelokovskyy","email":"pshchelokovskyy@mirantis.com","username":"pshchelo"},"change_message_id":"993a2760ce9300333f8e10b9922dfef25b01052c","unresolved":false,"context_lines":[{"line_number":46,"context_line":"Data model impact"},{"line_number":47,"context_line":"-----------------"},{"line_number":48,"context_line":""},{"line_number":49,"context_line":"None."},{"line_number":50,"context_line":""},{"line_number":51,"context_line":"State Machine Impact"},{"line_number":52,"context_line":"--------------------"}],"source_content_type":"text/x-rst","patch_set":2,"id":"fa6399be_d1085f30","line":49,"updated":"2016-10-18 12:51:43.000000000","message":"what about \"node.console_enabled\" field? it seems if we in principle want to support (if available in given HW) both serial and graphical consoles in the same driver, we either have to:\n\n- add a new Node object field \u0027graphical_console_enabled\u0027\n- or change node.console_enabled to dict like {\u0027serial\u0027: \u003cbool\u003e, \u0027graphical\u0027: \u003cbool\u003e} and change all the code to deal with it (seems quite intrusive for sure)\n\nAnyway, any of those options require data model change.","commit_id":"229b6c50a28d39cf27bbd834986ddf0bc8bd6ff2"},{"author":{"_account_id":7080,"name":"Mathieu Mitchell","email":"mat128@gmail.com","username":"mat128"},"change_message_id":"7ac09a6bde8f932b0a4fcefc175e08efdaa98ecd","unresolved":false,"context_lines":[{"line_number":46,"context_line":"Data model impact"},{"line_number":47,"context_line":"-----------------"},{"line_number":48,"context_line":""},{"line_number":49,"context_line":"None."},{"line_number":50,"context_line":""},{"line_number":51,"context_line":"State Machine Impact"},{"line_number":52,"context_line":"--------------------"}],"source_content_type":"text/x-rst","patch_set":2,"id":"fa6399be_60667b52","line":49,"in_reply_to":"fa6399be_489b8472","updated":"2016-10-21 03:27:44.000000000","message":"Done","commit_id":"229b6c50a28d39cf27bbd834986ddf0bc8bd6ff2"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"bf0ea606da36050625b9a3e7501d38d38bab3ad3","unresolved":false,"context_lines":[{"line_number":46,"context_line":"Data model impact"},{"line_number":47,"context_line":"-----------------"},{"line_number":48,"context_line":""},{"line_number":49,"context_line":"None."},{"line_number":50,"context_line":""},{"line_number":51,"context_line":"State Machine Impact"},{"line_number":52,"context_line":"--------------------"}],"source_content_type":"text/x-rst","patch_set":2,"id":"fa6399be_357f59ac","line":49,"in_reply_to":"fa6399be_489b8472","updated":"2016-10-20 17:40:33.000000000","message":"we have node.console_enabled \u0026 node.console_info. We\u0027ll need to figure out how to support the graphical consoles too.","commit_id":"229b6c50a28d39cf27bbd834986ddf0bc8bd6ff2"},{"author":{"_account_id":7711,"name":"Yuriy Zveryanskyy","email":"yzveryanskyy@mirantis.com","username":"yuriyz"},"change_message_id":"5b1c17e0b5d99dcf4463a775bb370df505bdf3fc","unresolved":false,"context_lines":[{"line_number":46,"context_line":"Data model impact"},{"line_number":47,"context_line":"-----------------"},{"line_number":48,"context_line":""},{"line_number":49,"context_line":"None."},{"line_number":50,"context_line":""},{"line_number":51,"context_line":"State Machine Impact"},{"line_number":52,"context_line":"--------------------"}],"source_content_type":"text/x-rst","patch_set":2,"id":"fa6399be_489b8472","line":49,"in_reply_to":"fa6399be_d1085f30","updated":"2016-10-19 15:11:18.000000000","message":"+1 because these types of consoles can be enabled/disabled separately.","commit_id":"229b6c50a28d39cf27bbd834986ddf0bc8bd6ff2"},{"author":{"_account_id":9542,"name":"Pavlo Shchelokovskyy","email":"pshchelokovskyy@mirantis.com","username":"pshchelo"},"change_message_id":"993a2760ce9300333f8e10b9922dfef25b01052c","unresolved":false,"context_lines":[{"line_number":57,"context_line":"REST API impact"},{"line_number":58,"context_line":"---------------"},{"line_number":59,"context_line":""},{"line_number":60,"context_line":"* Introduce a new API call to enable the graphical console. It will follow the"},{"line_number":61,"context_line":"  same contract that set-console-mode already uses."},{"line_number":62,"context_line":""},{"line_number":63,"context_line":"* Introduce a new API call to get graphical console details. It will follow the"}],"source_content_type":"text/x-rst","patch_set":2,"id":"fa6399be_a76729e9","line":60,"updated":"2016-10-18 12:51:43.000000000","message":"Have you considered re-using the existing REST API by just adding a new flag to pass to API (e.g. \u0027graphical\u0027, defaults to False)? IMO this is doable, and will minimize the changes to the API.\n\nBut may be I am missing something important here...","commit_id":"229b6c50a28d39cf27bbd834986ddf0bc8bd6ff2"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"bf0ea606da36050625b9a3e7501d38d38bab3ad3","unresolved":false,"context_lines":[{"line_number":57,"context_line":"REST API impact"},{"line_number":58,"context_line":"---------------"},{"line_number":59,"context_line":""},{"line_number":60,"context_line":"* Introduce a new API call to enable the graphical console. It will follow the"},{"line_number":61,"context_line":"  same contract that set-console-mode already uses."},{"line_number":62,"context_line":""},{"line_number":63,"context_line":"* Introduce a new API call to get graphical console details. It will follow the"}],"source_content_type":"text/x-rst","patch_set":2,"id":"fa6399be_95f4a55b","line":60,"in_reply_to":"fa6399be_02851258","updated":"2016-10-20 17:40:33.000000000","message":"+1. It is mentioned at the CLI level, but yeah, a similar thing should be done at the REST API level too.","commit_id":"229b6c50a28d39cf27bbd834986ddf0bc8bd6ff2"},{"author":{"_account_id":13295,"name":"Mario Villaplana","email":"mario.villaplana@gmail.com","username":"mariojv"},"change_message_id":"6d33c94c12efcd0208540659bc129dccd69c8bbe","unresolved":false,"context_lines":[{"line_number":57,"context_line":"REST API impact"},{"line_number":58,"context_line":"---------------"},{"line_number":59,"context_line":""},{"line_number":60,"context_line":"* Introduce a new API call to enable the graphical console. It will follow the"},{"line_number":61,"context_line":"  same contract that set-console-mode already uses."},{"line_number":62,"context_line":""},{"line_number":63,"context_line":"* Introduce a new API call to get graphical console details. It will follow the"}],"source_content_type":"text/x-rst","patch_set":2,"id":"fa6399be_02851258","line":60,"in_reply_to":"fa6399be_a76729e9","updated":"2016-10-18 19:41:14.000000000","message":"I think this suggestion s a better solution if there\u0027s no other technical limitation. This would make it easier for operators to use either a graphical or serial console depending on their needs and minimizes unnecessary API expansion.","commit_id":"229b6c50a28d39cf27bbd834986ddf0bc8bd6ff2"},{"author":{"_account_id":13295,"name":"Mario Villaplana","email":"mario.villaplana@gmail.com","username":"mariojv"},"change_message_id":"6d33c94c12efcd0208540659bc129dccd69c8bbe","unresolved":false,"context_lines":[{"line_number":60,"context_line":"* Introduce a new API call to enable the graphical console. It will follow the"},{"line_number":61,"context_line":"  same contract that set-console-mode already uses."},{"line_number":62,"context_line":""},{"line_number":63,"context_line":"* Introduce a new API call to get graphical console details. It will follow the"},{"line_number":64,"context_line":"  same contract that get-console already uses."},{"line_number":65,"context_line":""},{"line_number":66,"context_line":"The API microversion will need to be bumped."}],"source_content_type":"text/x-rst","patch_set":2,"id":"fa6399be_a290e696","line":63,"updated":"2016-10-18 19:41:14.000000000","message":"ditto, same question as L60","commit_id":"229b6c50a28d39cf27bbd834986ddf0bc8bd6ff2"},{"author":{"_account_id":12356,"name":"Vladyslav Drok","email":"vdrok@mirantis.com","username":"vdrok"},"change_message_id":"b11d21d126785881c29ded51279c8f8fb7cacaff","unresolved":false,"context_lines":[{"line_number":70,"context_line":"-------------------"},{"line_number":71,"context_line":""},{"line_number":72,"context_line":"* Extend ``node-set-console-mode`` call to allow configuring the graphical"},{"line_number":73,"context_line":"  console with a ``--graphical`` parameter. This call would default to"},{"line_number":74,"context_line":"  ``--serial`` to stay backwards compatible."},{"line_number":75,"context_line":""},{"line_number":76,"context_line":"* Extend ``node-get-console`` to fetch graphical console details when used with"}],"source_content_type":"text/x-rst","patch_set":2,"id":"fa6399be_18e53737","line":73,"updated":"2016-10-20 13:32:57.000000000","message":"Need the same for openstack client plugin.","commit_id":"229b6c50a28d39cf27bbd834986ddf0bc8bd6ff2"},{"author":{"_account_id":7080,"name":"Mathieu Mitchell","email":"mat128@gmail.com","username":"mat128"},"change_message_id":"dd7843d2b57362a2ed34dbef2e7e7adb0b3254c3","unresolved":false,"context_lines":[{"line_number":70,"context_line":"-------------------"},{"line_number":71,"context_line":""},{"line_number":72,"context_line":"* Extend ``node-set-console-mode`` call to allow configuring the graphical"},{"line_number":73,"context_line":"  console with a ``--graphical`` parameter. This call would default to"},{"line_number":74,"context_line":"  ``--serial`` to stay backwards compatible."},{"line_number":75,"context_line":""},{"line_number":76,"context_line":"* Extend ``node-get-console`` to fetch graphical console details when used with"}],"source_content_type":"text/x-rst","patch_set":2,"id":"da6895a0_271419f4","line":73,"in_reply_to":"fa6399be_18e53737","updated":"2016-10-21 04:12:31.000000000","message":"Done","commit_id":"229b6c50a28d39cf27bbd834986ddf0bc8bd6ff2"},{"author":{"_account_id":13295,"name":"Mario Villaplana","email":"mario.villaplana@gmail.com","username":"mariojv"},"change_message_id":"6d33c94c12efcd0208540659bc129dccd69c8bbe","unresolved":false,"context_lines":[{"line_number":74,"context_line":"  ``--serial`` to stay backwards compatible."},{"line_number":75,"context_line":""},{"line_number":76,"context_line":"* Extend ``node-get-console`` to fetch graphical console details when used with"},{"line_number":77,"context_line":"  a ``--graphical`` parameter. This call would default to ``--serial`` to stay"},{"line_number":78,"context_line":"  backwards compatible."},{"line_number":79,"context_line":""},{"line_number":80,"context_line":""}],"source_content_type":"text/x-rst","patch_set":2,"id":"fa6399be_225856fa","line":77,"updated":"2016-10-18 19:41:14.000000000","message":"just as a note, I don\u0027t think --serial is an option currently: https://github.com/openstack/python-ironicclient/search?utf8\u003d%E2%9C%93\u0026q\u003dserial\u0026type\u003dCode\n\nIs it possible to have both a graphical and serial console on a node at the same time? If not, why not make the client a bit less complex and just pass back console info for whichever type is enabled?","commit_id":"229b6c50a28d39cf27bbd834986ddf0bc8bd6ff2"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"bf0ea606da36050625b9a3e7501d38d38bab3ad3","unresolved":false,"context_lines":[{"line_number":74,"context_line":"  ``--serial`` to stay backwards compatible."},{"line_number":75,"context_line":""},{"line_number":76,"context_line":"* Extend ``node-get-console`` to fetch graphical console details when used with"},{"line_number":77,"context_line":"  a ``--graphical`` parameter. This call would default to ``--serial`` to stay"},{"line_number":78,"context_line":"  backwards compatible."},{"line_number":79,"context_line":""},{"line_number":80,"context_line":""}],"source_content_type":"text/x-rst","patch_set":2,"id":"fa6399be_f555e14f","line":77,"in_reply_to":"fa6399be_225856fa","updated":"2016-10-20 17:40:33.000000000","message":"@Mario, --serial would be new/added as part of this work. Probably needs to be explicitly mentioned.","commit_id":"229b6c50a28d39cf27bbd834986ddf0bc8bd6ff2"},{"author":{"_account_id":7080,"name":"Mathieu Mitchell","email":"mat128@gmail.com","username":"mat128"},"change_message_id":"dd7843d2b57362a2ed34dbef2e7e7adb0b3254c3","unresolved":false,"context_lines":[{"line_number":74,"context_line":"  ``--serial`` to stay backwards compatible."},{"line_number":75,"context_line":""},{"line_number":76,"context_line":"* Extend ``node-get-console`` to fetch graphical console details when used with"},{"line_number":77,"context_line":"  a ``--graphical`` parameter. This call would default to ``--serial`` to stay"},{"line_number":78,"context_line":"  backwards compatible."},{"line_number":79,"context_line":""},{"line_number":80,"context_line":""}],"source_content_type":"text/x-rst","patch_set":2,"id":"da6895a0_870325b8","line":77,"in_reply_to":"fa6399be_f555e14f","updated":"2016-10-21 04:12:31.000000000","message":"Exactly. Latest PS calls for --type and is more explicit.","commit_id":"229b6c50a28d39cf27bbd834986ddf0bc8bd6ff2"},{"author":{"_account_id":9542,"name":"Pavlo Shchelokovskyy","email":"pshchelokovskyy@mirantis.com","username":"pshchelo"},"change_message_id":"993a2760ce9300333f8e10b9922dfef25b01052c","unresolved":false,"context_lines":[{"line_number":81,"context_line":"RPC API impact"},{"line_number":82,"context_line":"--------------"},{"line_number":83,"context_line":""},{"line_number":84,"context_line":"* Implement the new calls to reach the driver."},{"line_number":85,"context_line":""},{"line_number":86,"context_line":""},{"line_number":87,"context_line":"Driver API impact"}],"source_content_type":"text/x-rst","patch_set":2,"id":"fa6399be_2781594e","line":84,"updated":"2016-10-18 12:51:43.000000000","message":"Same comment on re-use of existing methods by adding a new optional \u0027graphical\u0027 flag.\n\nThe existing RPC methods in manager then can decide on what driver interface to act (console or graphical_console) based on the value of this flag.","commit_id":"229b6c50a28d39cf27bbd834986ddf0bc8bd6ff2"},{"author":{"_account_id":7711,"name":"Yuriy Zveryanskyy","email":"yzveryanskyy@mirantis.com","username":"yuriyz"},"change_message_id":"5b1c17e0b5d99dcf4463a775bb370df505bdf3fc","unresolved":false,"context_lines":[{"line_number":87,"context_line":"Driver API impact"},{"line_number":88,"context_line":"-----------------"},{"line_number":89,"context_line":""},{"line_number":90,"context_line":"* Introduce a new member for drivers, ``graphical_console``"},{"line_number":91,"context_line":""},{"line_number":92,"context_line":"* A graphical_console driver will be written for the current IPMI drivers to"},{"line_number":93,"context_line":"  allow testing within devstack. It will be added to"}],"source_content_type":"text/x-rst","patch_set":2,"id":"fa6399be_28e650b4","line":90,"range":{"start_line":90,"start_character":2,"end_line":90,"end_character":59},"updated":"2016-10-19 15:11:18.000000000","message":"Sorry, I don\u0027t understand this. Do you plan to extend existing driver\u0027s console interface? Please describe all new methods.","commit_id":"229b6c50a28d39cf27bbd834986ddf0bc8bd6ff2"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"bf0ea606da36050625b9a3e7501d38d38bab3ad3","unresolved":false,"context_lines":[{"line_number":87,"context_line":"Driver API impact"},{"line_number":88,"context_line":"-----------------"},{"line_number":89,"context_line":""},{"line_number":90,"context_line":"* Introduce a new member for drivers, ``graphical_console``"},{"line_number":91,"context_line":""},{"line_number":92,"context_line":"* A graphical_console driver will be written for the current IPMI drivers to"},{"line_number":93,"context_line":"  allow testing within devstack. It will be added to"}],"source_content_type":"text/x-rst","patch_set":2,"id":"fa6399be_55edadb5","line":90,"range":{"start_line":90,"start_character":2,"end_line":90,"end_character":59},"in_reply_to":"fa6399be_28e650b4","updated":"2016-10-20 17:40:33.000000000","message":"I think he means add a new console interface that is similar to the existing BaseDriver.console [1].\n\n[1] https://github.com/openstack/ironic/blob/fb70e05ae9cd33d74122460dff073251afac9db0/ironic/drivers/base.py#L75","commit_id":"229b6c50a28d39cf27bbd834986ddf0bc8bd6ff2"},{"author":{"_account_id":7080,"name":"Mathieu Mitchell","email":"mat128@gmail.com","username":"mat128"},"change_message_id":"dd7843d2b57362a2ed34dbef2e7e7adb0b3254c3","unresolved":false,"context_lines":[{"line_number":87,"context_line":"Driver API impact"},{"line_number":88,"context_line":"-----------------"},{"line_number":89,"context_line":""},{"line_number":90,"context_line":"* Introduce a new member for drivers, ``graphical_console``"},{"line_number":91,"context_line":""},{"line_number":92,"context_line":"* A graphical_console driver will be written for the current IPMI drivers to"},{"line_number":93,"context_line":"  allow testing within devstack. It will be added to"}],"source_content_type":"text/x-rst","patch_set":2,"id":"da6895a0_272b3932","line":90,"range":{"start_line":90,"start_character":2,"end_line":90,"end_character":59},"in_reply_to":"fa6399be_55edadb5","updated":"2016-10-21 04:12:31.000000000","message":"That\u0027s correct. Latest PS changes it all though.","commit_id":"229b6c50a28d39cf27bbd834986ddf0bc8bd6ff2"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"bf0ea606da36050625b9a3e7501d38d38bab3ad3","unresolved":false,"context_lines":[{"line_number":95,"context_line":"  ``PXEAndIPMIToolDriver``. This will obviously be simplified with the Driver"},{"line_number":96,"context_line":"  composition reform [#]_. VirtualBMC will need to be adjusted to simulate a"},{"line_number":97,"context_line":"  BMC that provides a graphical console."},{"line_number":98,"context_line":""},{"line_number":99,"context_line":""},{"line_number":100,"context_line":"Nova driver impact"},{"line_number":101,"context_line":"------------------"}],"source_content_type":"text/x-rst","patch_set":2,"id":"fa6399be_95d9055a","line":98,"updated":"2016-10-20 17:40:33.000000000","message":"I thought it was clear when I read this spec the first time, but now it isn\u0027t. I am wondering how this change relates/coexists with the driver composition reform work. We currently have some ConsoleInterfaces: ipmitool.IPMIShellinaboxConsole, ipmitool.IPMISocatConsole, ipminative.NativeIPMIShellinaboxConsole, ssh.ShellinaboxConsole, ...\n\nWe\u0027re going to add this new ConsoleInterface, something like ipmitool.VNCConsole. The existing AgentAndIPMIToolDriver.console \u003d ipmitool.IPMIShellinaboxConsole. You\u0027re proposing adding AgentAndIPMIToolDriver.graphical_console. This concerns me; it seems like we should be able to support this with one driver.console \u003d . Have we discussed this before in the context of driver reform, I\u0027m not sure. How to indicate that a particular driver can support more than one A, B capability for a particular interface, that those capabilities could occur for a node at the same time, and that it is up to the end user (not the operator) to choose when/if they want that.\n\nDo we create some sort of mixin ConsoleInterface?\n\nOoo, this is juicy.","commit_id":"229b6c50a28d39cf27bbd834986ddf0bc8bd6ff2"},{"author":{"_account_id":7080,"name":"Mathieu Mitchell","email":"mat128@gmail.com","username":"mat128"},"change_message_id":"dd7843d2b57362a2ed34dbef2e7e7adb0b3254c3","unresolved":false,"context_lines":[{"line_number":95,"context_line":"  ``PXEAndIPMIToolDriver``. This will obviously be simplified with the Driver"},{"line_number":96,"context_line":"  composition reform [#]_. VirtualBMC will need to be adjusted to simulate a"},{"line_number":97,"context_line":"  BMC that provides a graphical console."},{"line_number":98,"context_line":""},{"line_number":99,"context_line":""},{"line_number":100,"context_line":"Nova driver impact"},{"line_number":101,"context_line":"------------------"}],"source_content_type":"text/x-rst","patch_set":2,"id":"da6895a0_671d310f","line":98,"in_reply_to":"da6895a0_4c54d253","updated":"2016-10-21 04:12:31.000000000","message":"I think I solved the backwards compat problem. See latest PS :)","commit_id":"229b6c50a28d39cf27bbd834986ddf0bc8bd6ff2"},{"author":{"_account_id":7080,"name":"Mathieu Mitchell","email":"mat128@gmail.com","username":"mat128"},"change_message_id":"7ac09a6bde8f932b0a4fcefc175e08efdaa98ecd","unresolved":false,"context_lines":[{"line_number":95,"context_line":"  ``PXEAndIPMIToolDriver``. This will obviously be simplified with the Driver"},{"line_number":96,"context_line":"  composition reform [#]_. VirtualBMC will need to be adjusted to simulate a"},{"line_number":97,"context_line":"  BMC that provides a graphical console."},{"line_number":98,"context_line":""},{"line_number":99,"context_line":""},{"line_number":100,"context_line":"Nova driver impact"},{"line_number":101,"context_line":"------------------"}],"source_content_type":"text/x-rst","patch_set":2,"id":"da6895a0_4c54d253","line":98,"in_reply_to":"fa6399be_95d9055a","updated":"2016-10-21 03:27:44.000000000","message":"It indeed is :)\n\nI thought of the following:\n\n* node.console becomes a mapping of available consoles\n* node.console_enabled becomes a mapping of enabled consoles (or another column for backwards compat?)\n* API/CLI allow providing a type and the Ironic core dispatches the call to the right console type.\n\nFor driver composition, the console work stays the same: vendors have the ability to expose through the \"console_interface\" a mapping that enables multiple console types (socat, vnc, shellinabox, etc.) \n\nNow the pending questions:\n* How do we manage backwards compatibility here? If we change the console to be a mapping, I have no idea which type was enabled prior to upgrading?\n\nI think I will submit this because it\u0027s the best I got so far, but we need to iron our the upgrade path details.\n\nI absolutely want to keep having both serial and graphical enabled at the same time.","commit_id":"229b6c50a28d39cf27bbd834986ddf0bc8bd6ff2"},{"author":{"_account_id":12356,"name":"Vladyslav Drok","email":"vdrok@mirantis.com","username":"vdrok"},"change_message_id":"b11d21d126785881c29ded51279c8f8fb7cacaff","unresolved":false,"context_lines":[{"line_number":119,"context_line":"Other end user impact"},{"line_number":120,"context_line":"---------------------"},{"line_number":121,"context_line":""},{"line_number":122,"context_line":"None."},{"line_number":123,"context_line":""},{"line_number":124,"context_line":""},{"line_number":125,"context_line":"Scalability impact"}],"source_content_type":"text/x-rst","patch_set":2,"id":"fa6399be_d8a49fa7","line":122,"updated":"2016-10-20 13:32:57.000000000","message":"Are there any limitations on how many connections are possible to the server?","commit_id":"229b6c50a28d39cf27bbd834986ddf0bc8bd6ff2"},{"author":{"_account_id":7080,"name":"Mathieu Mitchell","email":"mat128@gmail.com","username":"mat128"},"change_message_id":"dd7843d2b57362a2ed34dbef2e7e7adb0b3254c3","unresolved":false,"context_lines":[{"line_number":119,"context_line":"Other end user impact"},{"line_number":120,"context_line":"---------------------"},{"line_number":121,"context_line":""},{"line_number":122,"context_line":"None."},{"line_number":123,"context_line":""},{"line_number":124,"context_line":""},{"line_number":125,"context_line":"Scalability impact"}],"source_content_type":"text/x-rst","patch_set":2,"id":"da6895a0_47ce6d84","line":122,"in_reply_to":"fa6399be_d8a49fa7","updated":"2016-10-21 04:12:31.000000000","message":"This is implementation specific. This spec only introduces a way to retrieve libvirt\u0027s/qemu VNC server address for devstack. Added a note on this tpic.","commit_id":"229b6c50a28d39cf27bbd834986ddf0bc8bd6ff2"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"bf0ea606da36050625b9a3e7501d38d38bab3ad3","unresolved":false,"context_lines":[{"line_number":135,"context_line":"Other deployer impact"},{"line_number":136,"context_line":"---------------------"},{"line_number":137,"context_line":""},{"line_number":138,"context_line":"None."},{"line_number":139,"context_line":""},{"line_number":140,"context_line":"Developer impact"},{"line_number":141,"context_line":"----------------"}],"source_content_type":"text/x-rst","patch_set":2,"id":"fa6399be_551bedc9","line":138,"updated":"2016-10-20 17:40:33.000000000","message":"Before I forget, we should note down any changes to configuration options and/or explicitly mention that there aren\u0027t.","commit_id":"229b6c50a28d39cf27bbd834986ddf0bc8bd6ff2"},{"author":{"_account_id":7080,"name":"Mathieu Mitchell","email":"mat128@gmail.com","username":"mat128"},"change_message_id":"dd7843d2b57362a2ed34dbef2e7e7adb0b3254c3","unresolved":false,"context_lines":[{"line_number":135,"context_line":"Other deployer impact"},{"line_number":136,"context_line":"---------------------"},{"line_number":137,"context_line":""},{"line_number":138,"context_line":"None."},{"line_number":139,"context_line":""},{"line_number":140,"context_line":"Developer impact"},{"line_number":141,"context_line":"----------------"}],"source_content_type":"text/x-rst","patch_set":2,"id":"da6895a0_67cb7173","line":138,"in_reply_to":"fa6399be_551bedc9","updated":"2016-10-21 04:12:31.000000000","message":"Done","commit_id":"229b6c50a28d39cf27bbd834986ddf0bc8bd6ff2"},{"author":{"_account_id":7711,"name":"Yuriy Zveryanskyy","email":"yzveryanskyy@mirantis.com","username":"yuriyz"},"change_message_id":"5b1c17e0b5d99dcf4463a775bb370df505bdf3fc","unresolved":false,"context_lines":[{"line_number":140,"context_line":"Developer impact"},{"line_number":141,"context_line":"----------------"},{"line_number":142,"context_line":""},{"line_number":143,"context_line":"None."},{"line_number":144,"context_line":""},{"line_number":145,"context_line":""},{"line_number":146,"context_line":"Implementation"}],"source_content_type":"text/x-rst","patch_set":2,"id":"fa6399be_a8ca609f","line":143,"updated":"2016-10-19 15:11:18.000000000","message":"Developers can use new mechanism in own drivers.","commit_id":"229b6c50a28d39cf27bbd834986ddf0bc8bd6ff2"},{"author":{"_account_id":7080,"name":"Mathieu Mitchell","email":"mat128@gmail.com","username":"mat128"},"change_message_id":"dd7843d2b57362a2ed34dbef2e7e7adb0b3254c3","unresolved":false,"context_lines":[{"line_number":140,"context_line":"Developer impact"},{"line_number":141,"context_line":"----------------"},{"line_number":142,"context_line":""},{"line_number":143,"context_line":"None."},{"line_number":144,"context_line":""},{"line_number":145,"context_line":""},{"line_number":146,"context_line":"Implementation"}],"source_content_type":"text/x-rst","patch_set":2,"id":"da6895a0_87c88576","line":143,"in_reply_to":"fa6399be_a8ca609f","updated":"2016-10-21 04:12:31.000000000","message":"Done","commit_id":"229b6c50a28d39cf27bbd834986ddf0bc8bd6ff2"},{"author":{"_account_id":12356,"name":"Vladyslav Drok","email":"vdrok@mirantis.com","username":"vdrok"},"change_message_id":"b11d21d126785881c29ded51279c8f8fb7cacaff","unresolved":false,"context_lines":[{"line_number":162,"context_line":"* Add graphical console support to VirtualBMC"},{"line_number":163,"context_line":""},{"line_number":164,"context_line":"* Introduce ``GenericIPMIVNCConsole``, a ``ConsoleInterface`` implementation."},{"line_number":165,"context_line":"  This driver will query VirtuaLBMC and return the host and port for the"},{"line_number":166,"context_line":"  VM running on devstack."},{"line_number":167,"context_line":""},{"line_number":168,"context_line":"* Graphical console API"}],"source_content_type":"text/x-rst","patch_set":2,"id":"fa6399be_3844bbb5","line":165,"range":{"start_line":165,"start_character":25,"end_line":165,"end_character":35},"updated":"2016-10-20 13:32:57.000000000","message":"So seems that changes to virtualbmc are needed too.","commit_id":"229b6c50a28d39cf27bbd834986ddf0bc8bd6ff2"},{"author":{"_account_id":7080,"name":"Mathieu Mitchell","email":"mat128@gmail.com","username":"mat128"},"change_message_id":"7ac09a6bde8f932b0a4fcefc175e08efdaa98ecd","unresolved":false,"context_lines":[{"line_number":162,"context_line":"* Add graphical console support to VirtualBMC"},{"line_number":163,"context_line":""},{"line_number":164,"context_line":"* Introduce ``GenericIPMIVNCConsole``, a ``ConsoleInterface`` implementation."},{"line_number":165,"context_line":"  This driver will query VirtuaLBMC and return the host and port for the"},{"line_number":166,"context_line":"  VM running on devstack."},{"line_number":167,"context_line":""},{"line_number":168,"context_line":"* Graphical console API"}],"source_content_type":"text/x-rst","patch_set":2,"id":"da6895a0_8c4eeabf","line":165,"range":{"start_line":165,"start_character":25,"end_line":165,"end_character":35},"in_reply_to":"fa6399be_3844bbb5","updated":"2016-10-21 03:27:44.000000000","message":"Yes. Read L162 :)","commit_id":"229b6c50a28d39cf27bbd834986ddf0bc8bd6ff2"},{"author":{"_account_id":14760,"name":"John L. Villalovos","email":"openstack.org@sodarock.com","username":"jlvillal"},"change_message_id":"66fae28e9d7d14d8f73a7e171dbf6adb13adcf68","unresolved":false,"context_lines":[{"line_number":25,"context_line":""},{"line_number":26,"context_line":"Currently, Ironic does not expose a node\u0027s KVM capabilities. As such, admin"},{"line_number":27,"context_line":"users and deployers have to find alternatives to provide KVM access to their"},{"line_number":28,"context_line":"users."},{"line_number":29,"context_line":""},{"line_number":30,"context_line":""},{"line_number":31,"context_line":"Proposed change"}],"source_content_type":"text/x-rst","patch_set":3,"id":"ba5da102_1b24a90b","line":28,"updated":"2016-10-28 09:02:07.000000000","message":"Maybe a note that Ironic does support serial console access.","commit_id":"c8b58c934d54be362820c5d15de4b79b98f5750a"},{"author":{"_account_id":10206,"name":"Madhuri Kumari","email":"madhuri.kumari@intel.com","username":"Madhuri"},"change_message_id":"1ace1348c5c642a901c7f9fb21e3066e421895bc","unresolved":false,"context_lines":[{"line_number":25,"context_line":""},{"line_number":26,"context_line":"Currently, Ironic does not expose a node\u0027s KVM capabilities. As such, admin"},{"line_number":27,"context_line":"users and deployers have to find alternatives to provide KVM access to their"},{"line_number":28,"context_line":"users."},{"line_number":29,"context_line":""},{"line_number":30,"context_line":""},{"line_number":31,"context_line":"Proposed change"}],"source_content_type":"text/x-rst","patch_set":3,"id":"5f4e5783_5dd37139","line":28,"in_reply_to":"ba5da102_1b24a90b","updated":"2017-10-11 07:55:02.000000000","message":"serial console is supported now.","commit_id":"c8b58c934d54be362820c5d15de4b79b98f5750a"},{"author":{"_account_id":9542,"name":"Pavlo Shchelokovskyy","email":"pshchelokovskyy@mirantis.com","username":"pshchelo"},"change_message_id":"732999d0b3830e82809e80331c1e5be00c1e8c09","unresolved":false,"context_lines":[{"line_number":25,"context_line":""},{"line_number":26,"context_line":"Currently, Ironic does not expose a node\u0027s KVM capabilities. As such, admin"},{"line_number":27,"context_line":"users and deployers have to find alternatives to provide KVM access to their"},{"line_number":28,"context_line":"users."},{"line_number":29,"context_line":""},{"line_number":30,"context_line":""},{"line_number":31,"context_line":"Proposed change"}],"source_content_type":"text/x-rst","patch_set":3,"id":"ba5da102_c78e6c2d","line":28,"in_reply_to":"ba5da102_1b24a90b","updated":"2016-11-17 08:48:37.000000000","message":"you could also add that currently a Nova instance VNC console in Horizon is not supported on Ironic nodes.","commit_id":"c8b58c934d54be362820c5d15de4b79b98f5750a"},{"author":{"_account_id":10206,"name":"Madhuri Kumari","email":"madhuri.kumari@intel.com","username":"Madhuri"},"change_message_id":"1ace1348c5c642a901c7f9fb21e3066e421895bc","unresolved":false,"context_lines":[{"line_number":25,"context_line":""},{"line_number":26,"context_line":"Currently, Ironic does not expose a node\u0027s KVM capabilities. As such, admin"},{"line_number":27,"context_line":"users and deployers have to find alternatives to provide KVM access to their"},{"line_number":28,"context_line":"users."},{"line_number":29,"context_line":""},{"line_number":30,"context_line":""},{"line_number":31,"context_line":"Proposed change"}],"source_content_type":"text/x-rst","patch_set":3,"id":"5f4e5783_9d1b291a","line":28,"in_reply_to":"ba5da102_c78e6c2d","updated":"2017-10-11 07:55:02.000000000","message":"Done","commit_id":"c8b58c934d54be362820c5d15de4b79b98f5750a"},{"author":{"_account_id":14760,"name":"John L. Villalovos","email":"openstack.org@sodarock.com","username":"jlvillal"},"change_message_id":"66fae28e9d7d14d8f73a7e171dbf6adb13adcf68","unresolved":false,"context_lines":[{"line_number":34,"context_line":"Introduce the concept of a graphical console for Ironic nodes."},{"line_number":35,"context_line":""},{"line_number":36,"context_line":"Additionally, the concept of console types will be formalized. This will allow"},{"line_number":37,"context_line":"a driver to have multiple consoles types."},{"line_number":38,"context_line":""},{"line_number":39,"context_line":"All console types (``shellinabox``, ``socat`` and soon ``vnc``) could be"},{"line_number":40,"context_line":"enabled independently and simultaneously."}],"source_content_type":"text/x-rst","patch_set":3,"id":"ba5da102_7bc76512","line":37,"range":{"start_line":37,"start_character":12,"end_line":37,"end_character":16},"updated":"2016-10-28 09:02:07.000000000","message":"Maybe: support","commit_id":"c8b58c934d54be362820c5d15de4b79b98f5750a"},{"author":{"_account_id":10206,"name":"Madhuri Kumari","email":"madhuri.kumari@intel.com","username":"Madhuri"},"change_message_id":"1ace1348c5c642a901c7f9fb21e3066e421895bc","unresolved":false,"context_lines":[{"line_number":34,"context_line":"Introduce the concept of a graphical console for Ironic nodes."},{"line_number":35,"context_line":""},{"line_number":36,"context_line":"Additionally, the concept of console types will be formalized. This will allow"},{"line_number":37,"context_line":"a driver to have multiple consoles types."},{"line_number":38,"context_line":""},{"line_number":39,"context_line":"All console types (``shellinabox``, ``socat`` and soon ``vnc``) could be"},{"line_number":40,"context_line":"enabled independently and simultaneously."}],"source_content_type":"text/x-rst","patch_set":3,"id":"5f4e5783_9df0c9cb","line":37,"range":{"start_line":37,"start_character":12,"end_line":37,"end_character":16},"in_reply_to":"ba5da102_7bc76512","updated":"2017-10-11 07:55:02.000000000","message":"Done","commit_id":"c8b58c934d54be362820c5d15de4b79b98f5750a"},{"author":{"_account_id":13295,"name":"Mario Villaplana","email":"mario.villaplana@gmail.com","username":"mariojv"},"change_message_id":"c3dfd6c48ce53d0f93131c8850e66ad01c29baa1","unresolved":false,"context_lines":[{"line_number":37,"context_line":"a driver to have multiple consoles types."},{"line_number":38,"context_line":""},{"line_number":39,"context_line":"All console types (``shellinabox``, ``socat`` and soon ``vnc``) could be"},{"line_number":40,"context_line":"enabled independently and simultaneously."},{"line_number":41,"context_line":""},{"line_number":42,"context_line":"This will also solve the issue of having two different drivers, one for"},{"line_number":43,"context_line":"``shellinabox`` and one for ``socat``."}],"source_content_type":"text/x-rst","patch_set":3,"id":"ba5da102_545c24ed","line":40,"updated":"2016-10-28 15:13:32.000000000","message":"maybe add \", depending on technical feasibility,\" based on Yuiko\u0027s comment on L58","commit_id":"c8b58c934d54be362820c5d15de4b79b98f5750a"},{"author":{"_account_id":10206,"name":"Madhuri Kumari","email":"madhuri.kumari@intel.com","username":"Madhuri"},"change_message_id":"1ace1348c5c642a901c7f9fb21e3066e421895bc","unresolved":false,"context_lines":[{"line_number":37,"context_line":"a driver to have multiple consoles types."},{"line_number":38,"context_line":""},{"line_number":39,"context_line":"All console types (``shellinabox``, ``socat`` and soon ``vnc``) could be"},{"line_number":40,"context_line":"enabled independently and simultaneously."},{"line_number":41,"context_line":""},{"line_number":42,"context_line":"This will also solve the issue of having two different drivers, one for"},{"line_number":43,"context_line":"``shellinabox`` and one for ``socat``."}],"source_content_type":"text/x-rst","patch_set":3,"id":"5f4e5783_fdba1ddc","line":40,"in_reply_to":"ba5da102_545c24ed","updated":"2017-10-11 07:55:02.000000000","message":"Done","commit_id":"c8b58c934d54be362820c5d15de4b79b98f5750a"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"0d67b38cf4f2e67638d1265a3206502cc5e23f8b","unresolved":false,"context_lines":[{"line_number":54,"context_line":"Data model impact"},{"line_number":55,"context_line":"-----------------"},{"line_number":56,"context_line":""},{"line_number":57,"context_line":"* ``node.console_enabled`` will be changed into a ``JsonEncodedDict`` and will"},{"line_number":58,"context_line":"  contain a mapping of ``type:state`` for each enabled console. During upgrade,"},{"line_number":59,"context_line":"  the driver\u0027s ``default_console_type`` will be used for conversion."},{"line_number":60,"context_line":""}],"source_content_type":"text/x-rst","patch_set":3,"id":"da36d5c6_4cc4d991","line":57,"updated":"2017-02-20 02:52:22.000000000","message":"no more JsonEncodedDict please. I think we roughly agreed on one of the summits to split the current notion of console into \"serial_console\" and \"graphical_console\" (I don\u0027t insist on renaming the former, but most of the folks were in favor of it apparently).","commit_id":"c8b58c934d54be362820c5d15de4b79b98f5750a"},{"author":{"_account_id":7882,"name":"Yuiko Takada Mori","email":"yuiko-mori@nec.com","username":"YuikoTakada"},"change_message_id":"6efe9cf3d12b53406fbfd7792000cd5d00a61241","unresolved":false,"context_lines":[{"line_number":55,"context_line":"-----------------"},{"line_number":56,"context_line":""},{"line_number":57,"context_line":"* ``node.console_enabled`` will be changed into a ``JsonEncodedDict`` and will"},{"line_number":58,"context_line":"  contain a mapping of ``type:state`` for each enabled console. During upgrade,"},{"line_number":59,"context_line":"  the driver\u0027s ``default_console_type`` will be used for conversion."},{"line_number":60,"context_line":""},{"line_number":61,"context_line":""}],"source_content_type":"text/x-rst","patch_set":3,"id":"da6895a0_a75588c7","line":58,"range":{"start_line":58,"start_character":2,"end_line":58,"end_character":62},"updated":"2016-10-21 05:47:43.000000000","message":"This means that one node can have multiple console types? Currently, we can specify just one console type for one node with driver like \"agent_ipmitool\"(for shellinabox) or \"agent_ipmitool_socat\" and so on. And it is technically not possible to use shellinabox and socat in the same time.","commit_id":"c8b58c934d54be362820c5d15de4b79b98f5750a"},{"author":{"_account_id":13295,"name":"Mario Villaplana","email":"mario.villaplana@gmail.com","username":"mariojv"},"change_message_id":"c3dfd6c48ce53d0f93131c8850e66ad01c29baa1","unresolved":false,"context_lines":[{"line_number":55,"context_line":"-----------------"},{"line_number":56,"context_line":""},{"line_number":57,"context_line":"* ``node.console_enabled`` will be changed into a ``JsonEncodedDict`` and will"},{"line_number":58,"context_line":"  contain a mapping of ``type:state`` for each enabled console. During upgrade,"},{"line_number":59,"context_line":"  the driver\u0027s ``default_console_type`` will be used for conversion."},{"line_number":60,"context_line":""},{"line_number":61,"context_line":""}],"source_content_type":"text/x-rst","patch_set":3,"id":"ba5da102_b45660d0","line":58,"range":{"start_line":58,"start_character":2,"end_line":58,"end_character":62},"in_reply_to":"da6895a0_a120fd4a","updated":"2016-10-28 15:13:32.000000000","message":"I\u0027d like to see the API behavior specified for what happens when a user tries to use conflicting console types, as well.","commit_id":"c8b58c934d54be362820c5d15de4b79b98f5750a"},{"author":{"_account_id":9542,"name":"Pavlo Shchelokovskyy","email":"pshchelokovskyy@mirantis.com","username":"pshchelo"},"change_message_id":"732999d0b3830e82809e80331c1e5be00c1e8c09","unresolved":false,"context_lines":[{"line_number":55,"context_line":"-----------------"},{"line_number":56,"context_line":""},{"line_number":57,"context_line":"* ``node.console_enabled`` will be changed into a ``JsonEncodedDict`` and will"},{"line_number":58,"context_line":"  contain a mapping of ``type:state`` for each enabled console. During upgrade,"},{"line_number":59,"context_line":"  the driver\u0027s ``default_console_type`` will be used for conversion."},{"line_number":60,"context_line":""},{"line_number":61,"context_line":""}],"source_content_type":"text/x-rst","patch_set":3,"id":"7a77a97e_1c737216","line":58,"range":{"start_line":58,"start_character":2,"end_line":58,"end_character":62},"in_reply_to":"da6895a0_a120fd4a","updated":"2016-11-17 08:48:37.000000000","message":"So IMO the way forward could be to make a console interface a collection of some sorts (dict?). Then each console interface must export a class attribute of \"console_type\" and driver loading / combining (with future driver composition) code must ensure that the \"console_type\"s of interfaces in this collection are unique.","commit_id":"c8b58c934d54be362820c5d15de4b79b98f5750a"},{"author":{"_account_id":7080,"name":"Mathieu Mitchell","email":"mat128@gmail.com","username":"mat128"},"change_message_id":"e8c2deb92085231f73bab2440e178459d9f3346e","unresolved":false,"context_lines":[{"line_number":55,"context_line":"-----------------"},{"line_number":56,"context_line":""},{"line_number":57,"context_line":"* ``node.console_enabled`` will be changed into a ``JsonEncodedDict`` and will"},{"line_number":58,"context_line":"  contain a mapping of ``type:state`` for each enabled console. During upgrade,"},{"line_number":59,"context_line":"  the driver\u0027s ``default_console_type`` will be used for conversion."},{"line_number":60,"context_line":""},{"line_number":61,"context_line":""}],"source_content_type":"text/x-rst","patch_set":3,"id":"da6895a0_a120fd4a","line":58,"range":{"start_line":58,"start_character":2,"end_line":58,"end_character":62},"in_reply_to":"da6895a0_a75588c7","updated":"2016-10-21 17:09:21.000000000","message":"Good point. I suggest implementing locks in drivers that cannot be used together. I will try and submit a new patchset.","commit_id":"c8b58c934d54be362820c5d15de4b79b98f5750a"},{"author":{"_account_id":13295,"name":"Mario Villaplana","email":"mario.villaplana@gmail.com","username":"mariojv"},"change_message_id":"c3dfd6c48ce53d0f93131c8850e66ad01c29baa1","unresolved":false,"context_lines":[{"line_number":68,"context_line":"REST API impact"},{"line_number":69,"context_line":"---------------"},{"line_number":70,"context_line":""},{"line_number":71,"context_line":"* Add a new optional ``type`` parameter to ``start-stop-console``"},{"line_number":72,"context_line":""},{"line_number":73,"context_line":"* Add a new optional ``type`` parameter to ``get-console``"},{"line_number":74,"context_line":""}],"source_content_type":"text/x-rst","patch_set":3,"id":"ba5da102_54450415","line":71,"updated":"2016-10-28 15:13:32.000000000","message":"Probably goes without saying, but if ``type`` isn\u0027t specified, the driver\u0027s ``default_console_type`` will be used?","commit_id":"c8b58c934d54be362820c5d15de4b79b98f5750a"},{"author":{"_account_id":8125,"name":"Michael Davies","email":"michael@the-davies.net","username":"mrda"},"change_message_id":"2114701133ae019fbdf3ca771e07189b1da1f992","unresolved":false,"context_lines":[{"line_number":199,"context_line":""},{"line_number":200,"context_line":"* Add type support to the legacy CLI client"},{"line_number":201,"context_line":""},{"line_number":202,"context_line":"* Add type support to the OSC plugin"},{"line_number":203,"context_line":""},{"line_number":204,"context_line":"* Implement basic enable-disable + connect testing within devstack"},{"line_number":205,"context_line":""}],"source_content_type":"text/x-rst","patch_set":3,"id":"ba5da102_03c8bf54","line":202,"range":{"start_line":202,"start_character":26,"end_line":202,"end_character":36},"updated":"2016-10-28 09:29:05.000000000","message":"Probably need to add something here for \"openstack console url show\" or the nova command line equivalent, and also reference nova vnc proxy here.","commit_id":"c8b58c934d54be362820c5d15de4b79b98f5750a"},{"author":{"_account_id":8125,"name":"Michael Davies","email":"michael@the-davies.net","username":"mrda"},"change_message_id":"2114701133ae019fbdf3ca771e07189b1da1f992","unresolved":false,"context_lines":[{"line_number":200,"context_line":"* Add type support to the legacy CLI client"},{"line_number":201,"context_line":""},{"line_number":202,"context_line":"* Add type support to the OSC plugin"},{"line_number":203,"context_line":""},{"line_number":204,"context_line":"* Implement basic enable-disable + connect testing within devstack"},{"line_number":205,"context_line":""},{"line_number":206,"context_line":""}],"source_content_type":"text/x-rst","patch_set":3,"id":"ba5da102_e3d10bfd","line":203,"updated":"2016-10-28 09:29:05.000000000","message":"Also, we will need to update documentation, because unless we\u0027re going through the nova vnc proxy, we need to talk about opening up network access so that the vnc console access provided by this work needs to be opened up from a network perspective.","commit_id":"c8b58c934d54be362820c5d15de4b79b98f5750a"},{"author":{"_account_id":24828,"name":"Kaifeng Wang","email":"kaifeng.w@gmail.com","username":"wangkf"},"change_message_id":"68349e44c595db1b737824317050289385ebd445","unresolved":false,"context_lines":[{"line_number":74,"context_line":"REST API impact"},{"line_number":75,"context_line":"---------------"},{"line_number":76,"context_line":""},{"line_number":77,"context_line":"* Add a new optional ``type`` parameter to ``start-stop-console``,"},{"line_number":78,"context_line":"  ``serial`` by default, with another option being ``graphical``"},{"line_number":79,"context_line":""},{"line_number":80,"context_line":"* Add a new optional ``type`` parameter to ``get-console`` (same as above)."}],"source_content_type":"text/x-rst","patch_set":5,"id":"df87a7cf_1ce9a4b5","line":77,"range":{"start_line":77,"start_character":45,"end_line":77,"end_character":63},"updated":"2017-12-11 06:00:10.000000000","message":"As interface reference, start-stop-console is ambiguous, expands to start_console, stop_console would be clear IMHO.","commit_id":"c47c6886ba35a891af1018e69efff06420ea4bbd"},{"author":{"_account_id":19593,"name":"Anup Navare","email":"anup.d.navare@intel.com","username":"anup"},"change_message_id":"dd37c0e07dba037ead4279d418106e8be42df227","unresolved":false,"context_lines":[{"line_number":74,"context_line":"REST API impact"},{"line_number":75,"context_line":"---------------"},{"line_number":76,"context_line":""},{"line_number":77,"context_line":"* Add a new optional ``type`` parameter to ``start-stop-console``,"},{"line_number":78,"context_line":"  ``serial`` by default, with another option being ``graphical``"},{"line_number":79,"context_line":""},{"line_number":80,"context_line":"* Add a new optional ``type`` parameter to ``get-console`` (same as above)."}],"source_content_type":"text/x-rst","patch_set":5,"id":"7f96bb07_8b02923c","line":77,"range":{"start_line":77,"start_character":45,"end_line":77,"end_character":63},"in_reply_to":"df87a7cf_1ce9a4b5","updated":"2018-01-16 09:39:46.000000000","message":"I think here it means the REST API https://developer.openstack.org/api-ref/baremetal/#get-console and https://developer.openstack.org/api-ref/baremetal/#start-stop-console. \"type\" option needs to be added in the body.","commit_id":"c47c6886ba35a891af1018e69efff06420ea4bbd"},{"author":{"_account_id":24828,"name":"Kaifeng Wang","email":"kaifeng.w@gmail.com","username":"wangkf"},"change_message_id":"68349e44c595db1b737824317050289385ebd445","unresolved":false,"context_lines":[{"line_number":80,"context_line":"* Add a new optional ``type`` parameter to ``get-console`` (same as above)."},{"line_number":81,"context_line":""},{"line_number":82,"context_line":"The API microversion will need to be bumped."},{"line_number":83,"context_line":""},{"line_number":84,"context_line":""},{"line_number":85,"context_line":"Client (CLI) impact"},{"line_number":86,"context_line":"-------------------"}],"source_content_type":"text/x-rst","patch_set":5,"id":"df87a7cf_bcce7860","line":83,"updated":"2017-12-11 06:00:10.000000000","message":"It\u0027s a definition of console interface instead of REST API, I think it should be placed under section Driver API impact below.","commit_id":"c47c6886ba35a891af1018e69efff06420ea4bbd"},{"author":{"_account_id":19593,"name":"Anup Navare","email":"anup.d.navare@intel.com","username":"anup"},"change_message_id":"dd37c0e07dba037ead4279d418106e8be42df227","unresolved":false,"context_lines":[{"line_number":80,"context_line":"* Add a new optional ``type`` parameter to ``get-console`` (same as above)."},{"line_number":81,"context_line":""},{"line_number":82,"context_line":"The API microversion will need to be bumped."},{"line_number":83,"context_line":""},{"line_number":84,"context_line":""},{"line_number":85,"context_line":"Client (CLI) impact"},{"line_number":86,"context_line":"-------------------"}],"source_content_type":"text/x-rst","patch_set":5,"id":"7f96bb07_6eb07444","line":83,"in_reply_to":"df87a7cf_bcce7860","updated":"2018-01-16 09:39:46.000000000","message":"The above is i think about REST API","commit_id":"c47c6886ba35a891af1018e69efff06420ea4bbd"},{"author":{"_account_id":24828,"name":"Kaifeng Wang","email":"kaifeng.w@gmail.com","username":"wangkf"},"change_message_id":"68349e44c595db1b737824317050289385ebd445","unresolved":false,"context_lines":[{"line_number":153,"context_line":"Other deployer impact"},{"line_number":154,"context_line":"---------------------"},{"line_number":155,"context_line":""},{"line_number":156,"context_line":"No new configuration options are to be expected."},{"line_number":157,"context_line":""},{"line_number":158,"context_line":""},{"line_number":159,"context_line":"Developer impact"}],"source_content_type":"text/x-rst","patch_set":5,"id":"df87a7cf_9cfcd4b5","line":156,"range":{"start_line":156,"start_character":0,"end_line":156,"end_character":48},"updated":"2017-12-11 06:00:10.000000000","message":"It appears that there is a new option described at L64-66","commit_id":"c47c6886ba35a891af1018e69efff06420ea4bbd"},{"author":{"_account_id":24828,"name":"Kaifeng Wang","email":"kaifeng.w@gmail.com","username":"wangkf"},"change_message_id":"68349e44c595db1b737824317050289385ebd445","unresolved":false,"context_lines":[{"line_number":183,"context_line":"Work Items"},{"line_number":184,"context_line":"----------"},{"line_number":185,"context_line":""},{"line_number":186,"context_line":"*"},{"line_number":187,"context_line":""},{"line_number":188,"context_line":"* Introduce ``ipmitool.GenericIPMIVNCConsole(ConsoleInterface)``"},{"line_number":189,"context_line":""}],"source_content_type":"text/x-rst","patch_set":5,"id":"df87a7cf_bc24385f","line":186,"range":{"start_line":186,"start_character":0,"end_line":186,"end_character":1},"updated":"2017-12-11 06:00:10.000000000","message":"nit: extra bullet","commit_id":"c47c6886ba35a891af1018e69efff06420ea4bbd"},{"author":{"_account_id":24828,"name":"Kaifeng Wang","email":"kaifeng.w@gmail.com","username":"wangkf"},"change_message_id":"68349e44c595db1b737824317050289385ebd445","unresolved":false,"context_lines":[{"line_number":193,"context_line":""},{"line_number":194,"context_line":"* Add type support to the OSC plugin"},{"line_number":195,"context_line":""},{"line_number":196,"context_line":"* Add graphical console support to VirtualBMC"},{"line_number":197,"context_line":""},{"line_number":198,"context_line":"* Implement basic enable-disable + connect testing within devstack"},{"line_number":199,"context_line":""}],"source_content_type":"text/x-rst","patch_set":5,"id":"df87a7cf_bc4198ab","line":196,"range":{"start_line":196,"start_character":2,"end_line":196,"end_character":45},"updated":"2017-12-11 06:00:10.000000000","message":"As kvm is hardware dependent, could you spread more words on how it\u0027s achieved, so that we can have some knowledge if the framework provides enough flexibility on different hardware platforms, say, required authentication options?","commit_id":"c47c6886ba35a891af1018e69efff06420ea4bbd"},{"author":{"_account_id":19593,"name":"Anup Navare","email":"anup.d.navare@intel.com","username":"anup"},"change_message_id":"dd37c0e07dba037ead4279d418106e8be42df227","unresolved":false,"context_lines":[{"line_number":193,"context_line":""},{"line_number":194,"context_line":"* Add type support to the OSC plugin"},{"line_number":195,"context_line":""},{"line_number":196,"context_line":"* Add graphical console support to VirtualBMC"},{"line_number":197,"context_line":""},{"line_number":198,"context_line":"* Implement basic enable-disable + connect testing within devstack"},{"line_number":199,"context_line":""}],"source_content_type":"text/x-rst","patch_set":5,"id":"7f96bb07_09d52a1c","line":196,"range":{"start_line":196,"start_character":2,"end_line":196,"end_character":45},"in_reply_to":"df87a7cf_bc4198ab","updated":"2018-01-16 09:39:46.000000000","message":"This spec describes providing support for graphical console with respect to specific vendors https://review.openstack.org/#/c/306078","commit_id":"c47c6886ba35a891af1018e69efff06420ea4bbd"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"3bcc5abdc5b49b1443f053a156975c2b02a9ae27","unresolved":false,"context_lines":[{"line_number":21,"context_line":"broken their boot configuration or locked themselves out with a firewall."},{"line_number":22,"context_line":"Keyboard-Video-Mouse (KVM) access is often required for troubleshooting these"},{"line_number":23,"context_line":"types of issues as serial access is not always available or correctly"},{"line_number":24,"context_line":"configured."},{"line_number":25,"context_line":""},{"line_number":26,"context_line":"Currently, Ironic does not expose a node\u0027s KVM capabilities. As such, admin"},{"line_number":27,"context_line":"users and deployers have to find alternatives to provide KVM access to their"}],"source_content_type":"text/x-rst","patch_set":6,"id":"3fa0c359_268ffacd","line":24,"updated":"2018-02-20 21:39:10.000000000","message":"I would have thought (for me anyway), it is a better user experience to use KVM than serial console to access a node :)","commit_id":"ac3f3df6214ba8f24bdf94649eff43564c39d160"},{"author":{"_account_id":10206,"name":"Madhuri Kumari","email":"madhuri.kumari@intel.com","username":"Madhuri"},"change_message_id":"c7247337033a7b1d0be1c5118315225d5df3fda2","unresolved":false,"context_lines":[{"line_number":21,"context_line":"broken their boot configuration or locked themselves out with a firewall."},{"line_number":22,"context_line":"Keyboard-Video-Mouse (KVM) access is often required for troubleshooting these"},{"line_number":23,"context_line":"types of issues as serial access is not always available or correctly"},{"line_number":24,"context_line":"configured."},{"line_number":25,"context_line":""},{"line_number":26,"context_line":"Currently, Ironic does not expose a node\u0027s KVM capabilities. As such, admin"},{"line_number":27,"context_line":"users and deployers have to find alternatives to provide KVM access to their"}],"source_content_type":"text/x-rst","patch_set":6,"id":"3fa0c359_1770b807","line":24,"in_reply_to":"3fa0c359_268ffacd","updated":"2018-02-23 09:27:04.000000000","message":"Done","commit_id":"ac3f3df6214ba8f24bdf94649eff43564c39d160"},{"author":{"_account_id":10206,"name":"Madhuri Kumari","email":"madhuri.kumari@intel.com","username":"Madhuri"},"change_message_id":"ab84ae2c541afecce7ee7728c6fa0957fd9b2e3a","unresolved":false,"context_lines":[{"line_number":21,"context_line":"broken their boot configuration or locked themselves out with a firewall."},{"line_number":22,"context_line":"Keyboard-Video-Mouse (KVM) access is often required for troubleshooting these"},{"line_number":23,"context_line":"types of issues as serial access is not always available or correctly"},{"line_number":24,"context_line":"configured."},{"line_number":25,"context_line":""},{"line_number":26,"context_line":"Currently, Ironic does not expose a node\u0027s KVM capabilities. As such, admin"},{"line_number":27,"context_line":"users and deployers have to find alternatives to provide KVM access to their"}],"source_content_type":"text/x-rst","patch_set":6,"id":"3fa0c359_5e6a0381","line":24,"in_reply_to":"3fa0c359_268ffacd","updated":"2018-02-21 09:34:10.000000000","message":"Good point. I think it\u0027s worth adding this point. Thanks!","commit_id":"ac3f3df6214ba8f24bdf94649eff43564c39d160"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"3bcc5abdc5b49b1443f053a156975c2b02a9ae27","unresolved":false,"context_lines":[{"line_number":44,"context_line":"to choose which implementation of a graphical console access to use by setting"},{"line_number":45,"context_line":"it to the one enabled and supported by corresponding hardware type"},{"line_number":46,"context_line":"implementations."},{"line_number":47,"context_line":""},{"line_number":48,"context_line":"Alternatives"},{"line_number":49,"context_line":"------------"},{"line_number":50,"context_line":""}],"source_content_type":"text/x-rst","patch_set":6,"id":"3fa0c359_813ef8b5","line":47,"updated":"2018-02-20 21:39:10.000000000","message":"We\u0027ve deprecated classic drivers. And classic drivers cannot support graphical consoles. So I think this entire section (from L35) should be rewritten as a new ConsoleInterface. I\u0027m hesitant to create a new GraphicalConsoleInterface, and have ConsoleInterface be for serial consoles only, but I have a feeling that we\u0027re going to have to do this. \n\nOr maybe we can use the existing ConsoleInterface. What do you think?","commit_id":"ac3f3df6214ba8f24bdf94649eff43564c39d160"},{"author":{"_account_id":19593,"name":"Anup Navare","email":"anup.d.navare@intel.com","username":"anup"},"change_message_id":"48f48b7e957f1403f8a37663c35f0e03fe1238ce","unresolved":false,"context_lines":[{"line_number":44,"context_line":"to choose which implementation of a graphical console access to use by setting"},{"line_number":45,"context_line":"it to the one enabled and supported by corresponding hardware type"},{"line_number":46,"context_line":"implementations."},{"line_number":47,"context_line":""},{"line_number":48,"context_line":"Alternatives"},{"line_number":49,"context_line":"------------"},{"line_number":50,"context_line":""}],"source_content_type":"text/x-rst","patch_set":6,"id":"3fa0c359_93108b50","line":47,"in_reply_to":"3fa0c359_813ef8b5","updated":"2018-02-20 22:44:53.000000000","message":"I feel about using existing ConsoleInterface, and may be passing console_type in driver_info. And we can have separate class like, e.g. GraphicalInterface similar to IPMISocatConsole for ipmitool driver, what do you think?","commit_id":"ac3f3df6214ba8f24bdf94649eff43564c39d160"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"4fdec0af66c1f7b022c5c0c3ee8fb0e9309bc00d","unresolved":false,"context_lines":[{"line_number":44,"context_line":"to choose which implementation of a graphical console access to use by setting"},{"line_number":45,"context_line":"it to the one enabled and supported by corresponding hardware type"},{"line_number":46,"context_line":"implementations."},{"line_number":47,"context_line":""},{"line_number":48,"context_line":"Alternatives"},{"line_number":49,"context_line":"------------"},{"line_number":50,"context_line":""}],"source_content_type":"text/x-rst","patch_set":6,"id":"3fa0c359_d684c1d5","line":47,"in_reply_to":"3fa0c359_93108b50","updated":"2018-02-20 23:08:26.000000000","message":"I think it would be good to come up with a solution that can address users being able to get both a serial console AND a graphica console for the same node.","commit_id":"ac3f3df6214ba8f24bdf94649eff43564c39d160"},{"author":{"_account_id":10206,"name":"Madhuri Kumari","email":"madhuri.kumari@intel.com","username":"Madhuri"},"change_message_id":"c7247337033a7b1d0be1c5118315225d5df3fda2","unresolved":false,"context_lines":[{"line_number":44,"context_line":"to choose which implementation of a graphical console access to use by setting"},{"line_number":45,"context_line":"it to the one enabled and supported by corresponding hardware type"},{"line_number":46,"context_line":"implementations."},{"line_number":47,"context_line":""},{"line_number":48,"context_line":"Alternatives"},{"line_number":49,"context_line":"------------"},{"line_number":50,"context_line":""}],"source_content_type":"text/x-rst","patch_set":6,"id":"3fa0c359_21c001e1","line":47,"in_reply_to":"3fa0c359_d684c1d5","updated":"2018-02-23 09:27:04.000000000","message":"Ruby I have updated the spec to include a new interface type.","commit_id":"ac3f3df6214ba8f24bdf94649eff43564c39d160"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"3bcc5abdc5b49b1443f053a156975c2b02a9ae27","unresolved":false,"context_lines":[{"line_number":64,"context_line":"- new node field ``graphical_console_enabled``, during upgrade/conversion"},{"line_number":65,"context_line":"  will be populated from ``default_graphical_console_type`` config option"},{"line_number":66,"context_line":"  (``noop`` by default)."},{"line_number":67,"context_line":""},{"line_number":68,"context_line":"State Machine Impact"},{"line_number":69,"context_line":"--------------------"},{"line_number":70,"context_line":""}],"source_content_type":"text/x-rst","patch_set":6,"id":"3fa0c359_e19b3cc6","line":67,"updated":"2018-02-20 21:39:10.000000000","message":"the node is probably going to need some sort of eg \u0027graphical_console_interface\u0027 field.","commit_id":"ac3f3df6214ba8f24bdf94649eff43564c39d160"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"1685a5cc76457e9ddeb6f3f656763b618aa2973e","unresolved":false,"context_lines":[{"line_number":64,"context_line":"- new node field ``graphical_console_enabled``, during upgrade/conversion"},{"line_number":65,"context_line":"  will be populated from ``default_graphical_console_type`` config option"},{"line_number":66,"context_line":"  (``noop`` by default)."},{"line_number":67,"context_line":""},{"line_number":68,"context_line":"State Machine Impact"},{"line_number":69,"context_line":"--------------------"},{"line_number":70,"context_line":""}],"source_content_type":"text/x-rst","patch_set":6,"id":"3fa0c359_9eeac0d5","line":67,"in_reply_to":"3fa0c359_4766b6c3","updated":"2018-02-21 15:45:08.000000000","message":"Might not need that. To be honest, your spec isn\u0027t clear, so I am not sure what you are proposing; I thought you were proposing a new type of Interface but maybe you are proposing an implementation of the existing ConsoleInterface?","commit_id":"ac3f3df6214ba8f24bdf94649eff43564c39d160"},{"author":{"_account_id":10206,"name":"Madhuri Kumari","email":"madhuri.kumari@intel.com","username":"Madhuri"},"change_message_id":"c7247337033a7b1d0be1c5118315225d5df3fda2","unresolved":false,"context_lines":[{"line_number":64,"context_line":"- new node field ``graphical_console_enabled``, during upgrade/conversion"},{"line_number":65,"context_line":"  will be populated from ``default_graphical_console_type`` config option"},{"line_number":66,"context_line":"  (``noop`` by default)."},{"line_number":67,"context_line":""},{"line_number":68,"context_line":"State Machine Impact"},{"line_number":69,"context_line":"--------------------"},{"line_number":70,"context_line":""}],"source_content_type":"text/x-rst","patch_set":6,"id":"3fa0c359_c10a7d24","line":67,"in_reply_to":"3fa0c359_9eeac0d5","updated":"2018-02-23 09:27:04.000000000","message":"Yes we would need this field to store the supported graphical console interface. I have updated the spec with same.","commit_id":"ac3f3df6214ba8f24bdf94649eff43564c39d160"},{"author":{"_account_id":10206,"name":"Madhuri Kumari","email":"madhuri.kumari@intel.com","username":"Madhuri"},"change_message_id":"ab84ae2c541afecce7ee7728c6fa0957fd9b2e3a","unresolved":false,"context_lines":[{"line_number":64,"context_line":"- new node field ``graphical_console_enabled``, during upgrade/conversion"},{"line_number":65,"context_line":"  will be populated from ``default_graphical_console_type`` config option"},{"line_number":66,"context_line":"  (``noop`` by default)."},{"line_number":67,"context_line":""},{"line_number":68,"context_line":"State Machine Impact"},{"line_number":69,"context_line":"--------------------"},{"line_number":70,"context_line":""}],"source_content_type":"text/x-rst","patch_set":6,"id":"3fa0c359_4766b6c3","line":67,"in_reply_to":"3fa0c359_e19b3cc6","updated":"2018-02-21 09:34:10.000000000","message":"What will be the use of this field?","commit_id":"ac3f3df6214ba8f24bdf94649eff43564c39d160"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"3bcc5abdc5b49b1443f053a156975c2b02a9ae27","unresolved":false,"context_lines":[{"line_number":74,"context_line":"REST API impact"},{"line_number":75,"context_line":"---------------"},{"line_number":76,"context_line":""},{"line_number":77,"context_line":"* Add a new optional ``type`` parameter to ``start-stop-console``,"},{"line_number":78,"context_line":"  ``serial`` by default, with another option being ``graphical``."},{"line_number":79,"context_line":""},{"line_number":80,"context_line":"* Add a new optional ``type`` parameter to ``get-console`` (same as above)."}],"source_content_type":"text/x-rst","patch_set":6,"id":"3fa0c359_41bf90a9","line":77,"updated":"2018-02-20 21:39:10.000000000","message":"we don\u0027t have a \u0027start-stop-console\u0027 REST API. Please refer to https://developer.openstack.org/api-ref/baremetal/#start-stop-console to help with the description here.","commit_id":"ac3f3df6214ba8f24bdf94649eff43564c39d160"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"1685a5cc76457e9ddeb6f3f656763b618aa2973e","unresolved":false,"context_lines":[{"line_number":74,"context_line":"REST API impact"},{"line_number":75,"context_line":"---------------"},{"line_number":76,"context_line":""},{"line_number":77,"context_line":"* Add a new optional ``type`` parameter to ``start-stop-console``,"},{"line_number":78,"context_line":"  ``serial`` by default, with another option being ``graphical``."},{"line_number":79,"context_line":""},{"line_number":80,"context_line":"* Add a new optional ``type`` parameter to ``get-console`` (same as above)."}],"source_content_type":"text/x-rst","patch_set":6,"id":"3fa0c359_7e749436","line":77,"in_reply_to":"3fa0c359_072aee2a","updated":"2018-02-21 15:45:08.000000000","message":"I don\u0027t know if there is a miscommunication here.\n\n\u0027PUT /v1/nodes/{node_ident}/states/console\u0027 is a REST API and it is used to start/stop a console. Is this what you mean, that you\u0027d add a \u0027type\u0027 parameter? Where would you add it, in the body of the request?\n\nNote that we also have a \u0027GET /v1/nodes/.../console\u0027 REST API -- I don\u0027t think that you are adding this new \u0027type\u0027 to this API?","commit_id":"ac3f3df6214ba8f24bdf94649eff43564c39d160"},{"author":{"_account_id":10206,"name":"Madhuri Kumari","email":"madhuri.kumari@intel.com","username":"Madhuri"},"change_message_id":"ab84ae2c541afecce7ee7728c6fa0957fd9b2e3a","unresolved":false,"context_lines":[{"line_number":74,"context_line":"REST API impact"},{"line_number":75,"context_line":"---------------"},{"line_number":76,"context_line":""},{"line_number":77,"context_line":"* Add a new optional ``type`` parameter to ``start-stop-console``,"},{"line_number":78,"context_line":"  ``serial`` by default, with another option being ``graphical``."},{"line_number":79,"context_line":""},{"line_number":80,"context_line":"* Add a new optional ``type`` parameter to ``get-console`` (same as above)."}],"source_content_type":"text/x-rst","patch_set":6,"id":"3fa0c359_072aee2a","line":77,"in_reply_to":"3fa0c359_22203fac","updated":"2018-02-21 09:34:10.000000000","message":"Yes, Anup is correct here. The console will be decided on the ``type`` param in the /v1/nodes/{node_ident}/states/console API.","commit_id":"ac3f3df6214ba8f24bdf94649eff43564c39d160"},{"author":{"_account_id":10206,"name":"Madhuri Kumari","email":"madhuri.kumari@intel.com","username":"Madhuri"},"change_message_id":"c7247337033a7b1d0be1c5118315225d5df3fda2","unresolved":false,"context_lines":[{"line_number":74,"context_line":"REST API impact"},{"line_number":75,"context_line":"---------------"},{"line_number":76,"context_line":""},{"line_number":77,"context_line":"* Add a new optional ``type`` parameter to ``start-stop-console``,"},{"line_number":78,"context_line":"  ``serial`` by default, with another option being ``graphical``."},{"line_number":79,"context_line":""},{"line_number":80,"context_line":"* Add a new optional ``type`` parameter to ``get-console`` (same as above)."}],"source_content_type":"text/x-rst","patch_set":6,"id":"3fa0c359_a4b09f44","line":77,"in_reply_to":"3fa0c359_337abe76","updated":"2018-02-23 09:27:04.000000000","message":"The new parameter will be in the query of the URL like::\n  GET /v1/nodes/node-0/states/console?console_type\u003dgraphical\n  PUT /v1/nodes/node-0/states/console?console_type\u003dgraphical\n\nWe will add the parameter to both the APIs GET and PUT of /nodes/.../console","commit_id":"ac3f3df6214ba8f24bdf94649eff43564c39d160"},{"author":{"_account_id":19593,"name":"Anup Navare","email":"anup.d.navare@intel.com","username":"anup"},"change_message_id":"48f48b7e957f1403f8a37663c35f0e03fe1238ce","unresolved":false,"context_lines":[{"line_number":74,"context_line":"REST API impact"},{"line_number":75,"context_line":"---------------"},{"line_number":76,"context_line":""},{"line_number":77,"context_line":"* Add a new optional ``type`` parameter to ``start-stop-console``,"},{"line_number":78,"context_line":"  ``serial`` by default, with another option being ``graphical``."},{"line_number":79,"context_line":""},{"line_number":80,"context_line":"* Add a new optional ``type`` parameter to ``get-console`` (same as above)."}],"source_content_type":"text/x-rst","patch_set":6,"id":"3fa0c359_73605f02","line":77,"in_reply_to":"3fa0c359_41bf90a9","updated":"2018-02-20 22:44:53.000000000","message":"Ah yes, there is no REST API, instead start_console, stop_console are called from set_console_mode. What do you think is it better to have REST API start/stop console? Or otherwise the doc you pointed is misleading","commit_id":"ac3f3df6214ba8f24bdf94649eff43564c39d160"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"4fdec0af66c1f7b022c5c0c3ee8fb0e9309bc00d","unresolved":false,"context_lines":[{"line_number":74,"context_line":"REST API impact"},{"line_number":75,"context_line":"---------------"},{"line_number":76,"context_line":""},{"line_number":77,"context_line":"* Add a new optional ``type`` parameter to ``start-stop-console``,"},{"line_number":78,"context_line":"  ``serial`` by default, with another option being ``graphical``."},{"line_number":79,"context_line":""},{"line_number":80,"context_line":"* Add a new optional ``type`` parameter to ``get-console`` (same as above)."}],"source_content_type":"text/x-rst","patch_set":6,"id":"3fa0c359_966ab917","line":77,"in_reply_to":"3fa0c359_73605f02","updated":"2018-02-20 23:08:26.000000000","message":"What do you mean there is no REST API? How does a user get eg a serial console vs a graphical console?","commit_id":"ac3f3df6214ba8f24bdf94649eff43564c39d160"},{"author":{"_account_id":19593,"name":"Anup Navare","email":"anup.d.navare@intel.com","username":"anup"},"change_message_id":"669c12f411258373a6d0d299e5b1d86934dea45d","unresolved":false,"context_lines":[{"line_number":74,"context_line":"REST API impact"},{"line_number":75,"context_line":"---------------"},{"line_number":76,"context_line":""},{"line_number":77,"context_line":"* Add a new optional ``type`` parameter to ``start-stop-console``,"},{"line_number":78,"context_line":"  ``serial`` by default, with another option being ``graphical``."},{"line_number":79,"context_line":""},{"line_number":80,"context_line":"* Add a new optional ``type`` parameter to ``get-console`` (same as above)."}],"source_content_type":"text/x-rst","patch_set":6,"id":"3fa0c359_337abe76","line":77,"in_reply_to":"3fa0c359_7e749436","updated":"2018-02-21 19:35:09.000000000","message":"Yes it should go in the body of the request.","commit_id":"ac3f3df6214ba8f24bdf94649eff43564c39d160"},{"author":{"_account_id":19593,"name":"Anup Navare","email":"anup.d.navare@intel.com","username":"anup"},"change_message_id":"38557869bf6c4054a87a3c3eef467c9ec039e4b9","unresolved":false,"context_lines":[{"line_number":74,"context_line":"REST API impact"},{"line_number":75,"context_line":"---------------"},{"line_number":76,"context_line":""},{"line_number":77,"context_line":"* Add a new optional ``type`` parameter to ``start-stop-console``,"},{"line_number":78,"context_line":"  ``serial`` by default, with another option being ``graphical``."},{"line_number":79,"context_line":""},{"line_number":80,"context_line":"* Add a new optional ``type`` parameter to ``get-console`` (same as above)."}],"source_content_type":"text/x-rst","patch_set":6,"id":"3fa0c359_22203fac","line":77,"in_reply_to":"3fa0c359_966ab917","updated":"2018-02-21 02:49:11.000000000","message":"I mean i don\u0027t see any REST API as \u0027start-stop-console\u0027 as you mentioned in the comment above, instead the methods start_console() and stop_console() are getting called from  set_console_mode(). As far i understood, user will get the console - serial or graphical (which will be decided by --type on L88) by executing \u0027node-set-console-mode\u0027 and then getting the URL to actually view the console by executing \u0027node-get-console\u0027. Please correct me if i am on different page, @mkrai","commit_id":"ac3f3df6214ba8f24bdf94649eff43564c39d160"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"3bcc5abdc5b49b1443f053a156975c2b02a9ae27","unresolved":false,"context_lines":[{"line_number":78,"context_line":"  ``serial`` by default, with another option being ``graphical``."},{"line_number":79,"context_line":""},{"line_number":80,"context_line":"* Add a new optional ``type`` parameter to ``get-console`` (same as above)."},{"line_number":81,"context_line":""},{"line_number":82,"context_line":"The API microversion will need to be bumped."},{"line_number":83,"context_line":""},{"line_number":84,"context_line":""}],"source_content_type":"text/x-rst","patch_set":6,"id":"3fa0c359_e1dd7c14","line":81,"updated":"2018-02-20 21:39:10.000000000","message":"any new return http status codes? errors?","commit_id":"ac3f3df6214ba8f24bdf94649eff43564c39d160"},{"author":{"_account_id":10206,"name":"Madhuri Kumari","email":"madhuri.kumari@intel.com","username":"Madhuri"},"change_message_id":"ab84ae2c541afecce7ee7728c6fa0957fd9b2e3a","unresolved":false,"context_lines":[{"line_number":78,"context_line":"  ``serial`` by default, with another option being ``graphical``."},{"line_number":79,"context_line":""},{"line_number":80,"context_line":"* Add a new optional ``type`` parameter to ``get-console`` (same as above)."},{"line_number":81,"context_line":""},{"line_number":82,"context_line":"The API microversion will need to be bumped."},{"line_number":83,"context_line":""},{"line_number":84,"context_line":""}],"source_content_type":"text/x-rst","patch_set":6,"id":"3fa0c359_c77ba625","line":81,"in_reply_to":"3fa0c359_56de71da","updated":"2018-02-21 09:34:10.000000000","message":"If an invalid input is passed, a \"400 bad request\" response will be returned.","commit_id":"ac3f3df6214ba8f24bdf94649eff43564c39d160"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"4fdec0af66c1f7b022c5c0c3ee8fb0e9309bc00d","unresolved":false,"context_lines":[{"line_number":78,"context_line":"  ``serial`` by default, with another option being ``graphical``."},{"line_number":79,"context_line":""},{"line_number":80,"context_line":"* Add a new optional ``type`` parameter to ``get-console`` (same as above)."},{"line_number":81,"context_line":""},{"line_number":82,"context_line":"The API microversion will need to be bumped."},{"line_number":83,"context_line":""},{"line_number":84,"context_line":""}],"source_content_type":"text/x-rst","patch_set":6,"id":"3fa0c359_56de71da","line":81,"in_reply_to":"3fa0c359_d62361a6","updated":"2018-02-20 23:08:26.000000000","message":"You are adding a new type parameter -- what are its possible values, and what if the user specifies an invalid value? Will you return http code 500?","commit_id":"ac3f3df6214ba8f24bdf94649eff43564c39d160"},{"author":{"_account_id":19593,"name":"Anup Navare","email":"anup.d.navare@intel.com","username":"anup"},"change_message_id":"48f48b7e957f1403f8a37663c35f0e03fe1238ce","unresolved":false,"context_lines":[{"line_number":78,"context_line":"  ``serial`` by default, with another option being ``graphical``."},{"line_number":79,"context_line":""},{"line_number":80,"context_line":"* Add a new optional ``type`` parameter to ``get-console`` (same as above)."},{"line_number":81,"context_line":""},{"line_number":82,"context_line":"The API microversion will need to be bumped."},{"line_number":83,"context_line":""},{"line_number":84,"context_line":""}],"source_content_type":"text/x-rst","patch_set":6,"id":"3fa0c359_d62361a6","line":81,"in_reply_to":"3fa0c359_e1dd7c14","updated":"2018-02-20 22:44:53.000000000","message":"There is already a ConsoleError class defined here https://github.com/openstack/ironic/blob/33e19070ec8b635d3b35c198e1e18a29f569466a/ironic/common/exception.py#L588 which returns http code 500 - Internal Server Error. The same exception will be used with graphical console.","commit_id":"ac3f3df6214ba8f24bdf94649eff43564c39d160"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"3bcc5abdc5b49b1443f053a156975c2b02a9ae27","unresolved":false,"context_lines":[{"line_number":95,"context_line":"RPC API impact"},{"line_number":96,"context_line":"--------------"},{"line_number":97,"context_line":""},{"line_number":98,"context_line":"* Add a new ``type`` parameter to ``get_console_information``"},{"line_number":99,"context_line":""},{"line_number":100,"context_line":"* Add a new ``type`` parameter to ``set_console_mode``"},{"line_number":101,"context_line":""}],"source_content_type":"text/x-rst","patch_set":6,"id":"3fa0c359_c1ac00a1","line":98,"updated":"2018-02-20 21:39:10.000000000","message":"what are the possible values for \u0027type\u0027?","commit_id":"ac3f3df6214ba8f24bdf94649eff43564c39d160"},{"author":{"_account_id":10206,"name":"Madhuri Kumari","email":"madhuri.kumari@intel.com","username":"Madhuri"},"change_message_id":"c7247337033a7b1d0be1c5118315225d5df3fda2","unresolved":false,"context_lines":[{"line_number":95,"context_line":"RPC API impact"},{"line_number":96,"context_line":"--------------"},{"line_number":97,"context_line":""},{"line_number":98,"context_line":"* Add a new ``type`` parameter to ``get_console_information``"},{"line_number":99,"context_line":""},{"line_number":100,"context_line":"* Add a new ``type`` parameter to ``set_console_mode``"},{"line_number":101,"context_line":""}],"source_content_type":"text/x-rst","patch_set":6,"id":"3fa0c359_a423bf55","line":98,"in_reply_to":"3fa0c359_47955632","updated":"2018-02-23 09:27:04.000000000","message":"``serial`` and ``graphical``","commit_id":"ac3f3df6214ba8f24bdf94649eff43564c39d160"},{"author":{"_account_id":10206,"name":"Madhuri Kumari","email":"madhuri.kumari@intel.com","username":"Madhuri"},"change_message_id":"ab84ae2c541afecce7ee7728c6fa0957fd9b2e3a","unresolved":false,"context_lines":[{"line_number":95,"context_line":"RPC API impact"},{"line_number":96,"context_line":"--------------"},{"line_number":97,"context_line":""},{"line_number":98,"context_line":"* Add a new ``type`` parameter to ``get_console_information``"},{"line_number":99,"context_line":""},{"line_number":100,"context_line":"* Add a new ``type`` parameter to ``set_console_mode``"},{"line_number":101,"context_line":""}],"source_content_type":"text/x-rst","patch_set":6,"id":"3fa0c359_47955632","line":98,"in_reply_to":"3fa0c359_c1ac00a1","updated":"2018-02-21 09:34:10.000000000","message":"``serial`` and ``vnc``","commit_id":"ac3f3df6214ba8f24bdf94649eff43564c39d160"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"3bcc5abdc5b49b1443f053a156975c2b02a9ae27","unresolved":false,"context_lines":[{"line_number":127,"context_line":"Security impact"},{"line_number":128,"context_line":"---------------"},{"line_number":129,"context_line":""},{"line_number":130,"context_line":"None."},{"line_number":131,"context_line":""},{"line_number":132,"context_line":""},{"line_number":133,"context_line":"Other end user impact"}],"source_content_type":"text/x-rst","patch_set":6,"id":"3fa0c359_41c31058","line":130,"updated":"2018-02-20 21:39:10.000000000","message":"is VNC console secure? Does it depend on the hardware/implementation?","commit_id":"ac3f3df6214ba8f24bdf94649eff43564c39d160"},{"author":{"_account_id":10206,"name":"Madhuri Kumari","email":"madhuri.kumari@intel.com","username":"Madhuri"},"change_message_id":"c7247337033a7b1d0be1c5118315225d5df3fda2","unresolved":false,"context_lines":[{"line_number":127,"context_line":"Security impact"},{"line_number":128,"context_line":"---------------"},{"line_number":129,"context_line":""},{"line_number":130,"context_line":"None."},{"line_number":131,"context_line":""},{"line_number":132,"context_line":""},{"line_number":133,"context_line":"Other end user impact"}],"source_content_type":"text/x-rst","patch_set":6,"id":"3fa0c359_44a67bc3","line":130,"in_reply_to":"3fa0c359_3eb92ccb","updated":"2018-02-23 09:27:04.000000000","message":"Added. I am currently not sure how will this work in standalone mode. I have added the spec to highlight this.\n\nI will research about this and update the spec accordingly.","commit_id":"ac3f3df6214ba8f24bdf94649eff43564c39d160"},{"author":{"_account_id":10206,"name":"Madhuri Kumari","email":"madhuri.kumari@intel.com","username":"Madhuri"},"change_message_id":"ab84ae2c541afecce7ee7728c6fa0957fd9b2e3a","unresolved":false,"context_lines":[{"line_number":127,"context_line":"Security impact"},{"line_number":128,"context_line":"---------------"},{"line_number":129,"context_line":""},{"line_number":130,"context_line":"None."},{"line_number":131,"context_line":""},{"line_number":132,"context_line":""},{"line_number":133,"context_line":"Other end user impact"}],"source_content_type":"text/x-rst","patch_set":6,"id":"3fa0c359_e731025b","line":130,"in_reply_to":"3fa0c359_41c31058","updated":"2018-02-21 09:34:10.000000000","message":"Yes it is secured by a token generated while creating the console. The token is verified by nova-xvpvncproxy.","commit_id":"ac3f3df6214ba8f24bdf94649eff43564c39d160"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"1685a5cc76457e9ddeb6f3f656763b618aa2973e","unresolved":false,"context_lines":[{"line_number":127,"context_line":"Security impact"},{"line_number":128,"context_line":"---------------"},{"line_number":129,"context_line":""},{"line_number":130,"context_line":"None."},{"line_number":131,"context_line":""},{"line_number":132,"context_line":""},{"line_number":133,"context_line":"Other end user impact"}],"source_content_type":"text/x-rst","patch_set":6,"id":"3fa0c359_3eb92ccb","line":130,"in_reply_to":"3fa0c359_e731025b","updated":"2018-02-21 15:45:08.000000000","message":"Thx, please add this.\n\nThis brings up another question: what if (or can this) be used without nova, in standalone (eg bifrost) ironic?","commit_id":"ac3f3df6214ba8f24bdf94649eff43564c39d160"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"1685a5cc76457e9ddeb6f3f656763b618aa2973e","unresolved":false,"context_lines":[{"line_number":134,"context_line":"---------------------"},{"line_number":135,"context_line":""},{"line_number":136,"context_line":"* The number of maximum connections per console, specifically VNC consoles is"},{"line_number":137,"context_line":"  implementation specific. Some servers are capable of multiple connections and"},{"line_number":138,"context_line":"  other aren\u0027t."},{"line_number":139,"context_line":""},{"line_number":140,"context_line":""}],"source_content_type":"text/x-rst","patch_set":6,"id":"3fa0c359_5e0c38a4","line":137,"updated":"2018-02-21 15:45:08.000000000","message":"what do you mean by \u0027implementation\u0027 and \u0027servers\u0027?","commit_id":"ac3f3df6214ba8f24bdf94649eff43564c39d160"},{"author":{"_account_id":10206,"name":"Madhuri Kumari","email":"madhuri.kumari@intel.com","username":"Madhuri"},"change_message_id":"c7247337033a7b1d0be1c5118315225d5df3fda2","unresolved":false,"context_lines":[{"line_number":134,"context_line":"---------------------"},{"line_number":135,"context_line":""},{"line_number":136,"context_line":"* The number of maximum connections per console, specifically VNC consoles is"},{"line_number":137,"context_line":"  implementation specific. Some servers are capable of multiple connections and"},{"line_number":138,"context_line":"  other aren\u0027t."},{"line_number":139,"context_line":""},{"line_number":140,"context_line":""}],"source_content_type":"text/x-rst","patch_set":6,"id":"3fa0c359_c47a8b22","line":137,"in_reply_to":"3fa0c359_5e0c38a4","updated":"2018-02-23 09:27:04.000000000","message":"It is stated that some vendor hardwares only allow one vnc connection to the server while others may allow multiple.\nSo implementation here means specific graphical console interfaces and servers means the baremetal.","commit_id":"ac3f3df6214ba8f24bdf94649eff43564c39d160"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"3bcc5abdc5b49b1443f053a156975c2b02a9ae27","unresolved":false,"context_lines":[{"line_number":154,"context_line":"---------------------"},{"line_number":155,"context_line":""},{"line_number":156,"context_line":"Adds a new config option ``default_graphical_console_type``."},{"line_number":157,"context_line":"(``noop`` is default)."},{"line_number":158,"context_line":""},{"line_number":159,"context_line":"Developer impact"},{"line_number":160,"context_line":"----------------"}],"source_content_type":"text/x-rst","patch_set":6,"id":"3fa0c359_41fc70b4","line":157,"updated":"2018-02-20 21:39:10.000000000","message":"if we add a new interface, we\u0027ll need something like\n\n  enabled_graphical_console_interfaces\n  default_graphical_console_interface","commit_id":"ac3f3df6214ba8f24bdf94649eff43564c39d160"},{"author":{"_account_id":10206,"name":"Madhuri Kumari","email":"madhuri.kumari@intel.com","username":"Madhuri"},"change_message_id":"ab84ae2c541afecce7ee7728c6fa0957fd9b2e3a","unresolved":false,"context_lines":[{"line_number":154,"context_line":"---------------------"},{"line_number":155,"context_line":""},{"line_number":156,"context_line":"Adds a new config option ``default_graphical_console_type``."},{"line_number":157,"context_line":"(``noop`` is default)."},{"line_number":158,"context_line":""},{"line_number":159,"context_line":"Developer impact"},{"line_number":160,"context_line":"----------------"}],"source_content_type":"text/x-rst","patch_set":6,"id":"3fa0c359_471a36cc","line":157,"in_reply_to":"3fa0c359_41fc70b4","updated":"2018-02-21 09:34:10.000000000","message":"Yes, will add these fields in next PS.","commit_id":"ac3f3df6214ba8f24bdf94649eff43564c39d160"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"3bcc5abdc5b49b1443f053a156975c2b02a9ae27","unresolved":false,"context_lines":[{"line_number":159,"context_line":"Developer impact"},{"line_number":160,"context_line":"----------------"},{"line_number":161,"context_line":""},{"line_number":162,"context_line":"Driver developers can now offer multiple console types rather than sticking to"},{"line_number":163,"context_line":"a single one. This actually maps much better to the reality of servers often"},{"line_number":164,"context_line":"offering a Serial-on-LAN access along with a Keyboard-Video-Mouse access."},{"line_number":165,"context_line":""}],"source_content_type":"text/x-rst","patch_set":6,"id":"3fa0c359_81e4b80e","line":162,"updated":"2018-02-20 21:39:10.000000000","message":"please, I think we should use s/types/interfaces/. Or I think Dmitry uses the term \u0027interface implementations\u0027. We tend to use \u0027type\u0027 to refer to \u0027hardware type\u0027.","commit_id":"ac3f3df6214ba8f24bdf94649eff43564c39d160"},{"author":{"_account_id":19593,"name":"Anup Navare","email":"anup.d.navare@intel.com","username":"anup"},"change_message_id":"48f48b7e957f1403f8a37663c35f0e03fe1238ce","unresolved":false,"context_lines":[{"line_number":159,"context_line":"Developer impact"},{"line_number":160,"context_line":"----------------"},{"line_number":161,"context_line":""},{"line_number":162,"context_line":"Driver developers can now offer multiple console types rather than sticking to"},{"line_number":163,"context_line":"a single one. This actually maps much better to the reality of servers often"},{"line_number":164,"context_line":"offering a Serial-on-LAN access along with a Keyboard-Video-Mouse access."},{"line_number":165,"context_line":""}],"source_content_type":"text/x-rst","patch_set":6,"id":"3fa0c359_d6a60110","line":162,"in_reply_to":"3fa0c359_81e4b80e","updated":"2018-02-20 22:44:53.000000000","message":"Will change it to interfaces","commit_id":"ac3f3df6214ba8f24bdf94649eff43564c39d160"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"3bcc5abdc5b49b1443f053a156975c2b02a9ae27","unresolved":false,"context_lines":[{"line_number":171,"context_line":"-----------"},{"line_number":172,"context_line":""},{"line_number":173,"context_line":"Primary assignee:"},{"line_number":174,"context_line":"  mat128"},{"line_number":175,"context_line":""},{"line_number":176,"context_line":"Other contributors:"},{"line_number":177,"context_line":"  * JoProvost"}],"source_content_type":"text/x-rst","patch_set":6,"id":"3fa0c359_61d08c20","line":174,"updated":"2018-02-20 21:39:10.000000000","message":"did anyone check with mathieu? Is he still interested in working on this?","commit_id":"ac3f3df6214ba8f24bdf94649eff43564c39d160"},{"author":{"_account_id":10206,"name":"Madhuri Kumari","email":"madhuri.kumari@intel.com","username":"Madhuri"},"change_message_id":"ab84ae2c541afecce7ee7728c6fa0957fd9b2e3a","unresolved":false,"context_lines":[{"line_number":171,"context_line":"-----------"},{"line_number":172,"context_line":""},{"line_number":173,"context_line":"Primary assignee:"},{"line_number":174,"context_line":"  mat128"},{"line_number":175,"context_line":""},{"line_number":176,"context_line":"Other contributors:"},{"line_number":177,"context_line":"  * JoProvost"}],"source_content_type":"text/x-rst","patch_set":6,"id":"3fa0c359_a76d3a33","line":174,"in_reply_to":"3fa0c359_61d08c20","updated":"2018-02-21 09:34:10.000000000","message":"I will check with him. Thanks!","commit_id":"ac3f3df6214ba8f24bdf94649eff43564c39d160"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"3bcc5abdc5b49b1443f053a156975c2b02a9ae27","unresolved":false,"context_lines":[{"line_number":179,"context_line":"  * xhku"},{"line_number":180,"context_line":"  * pshchelo"},{"line_number":181,"context_line":"  * anupn"},{"line_number":182,"context_line":"  * mkrai"},{"line_number":183,"context_line":""},{"line_number":184,"context_line":"Work Items"},{"line_number":185,"context_line":"----------"}],"source_content_type":"text/x-rst","patch_set":6,"id":"3fa0c359_01c2e859","line":182,"updated":"2018-02-20 21:39:10.000000000","message":"is this list up to date? (My first reaction was \u0027who are all these people\u0027!)","commit_id":"ac3f3df6214ba8f24bdf94649eff43564c39d160"},{"author":{"_account_id":10206,"name":"Madhuri Kumari","email":"madhuri.kumari@intel.com","username":"Madhuri"},"change_message_id":"ab84ae2c541afecce7ee7728c6fa0957fd9b2e3a","unresolved":false,"context_lines":[{"line_number":179,"context_line":"  * xhku"},{"line_number":180,"context_line":"  * pshchelo"},{"line_number":181,"context_line":"  * anupn"},{"line_number":182,"context_line":"  * mkrai"},{"line_number":183,"context_line":""},{"line_number":184,"context_line":"Work Items"},{"line_number":185,"context_line":"----------"}],"source_content_type":"text/x-rst","patch_set":6,"id":"3fa0c359_075e6e75","line":182,"in_reply_to":"3fa0c359_01c2e859","updated":"2018-02-21 09:34:10.000000000","message":"Currently, me and Anup are working on it. Will update this.","commit_id":"ac3f3df6214ba8f24bdf94649eff43564c39d160"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"d47f42c6d40b390dd10b9336660ebf5fc9aa756e","unresolved":false,"context_lines":[{"line_number":184,"context_line":"Work Items"},{"line_number":185,"context_line":"----------"},{"line_number":186,"context_line":""},{"line_number":187,"context_line":"* Introduce ``ipmitool.GenericIPMIVNCConsole(ConsoleInterface)``"},{"line_number":188,"context_line":""},{"line_number":189,"context_line":"* Add type support to the console REST API"},{"line_number":190,"context_line":""}],"source_content_type":"text/x-rst","patch_set":6,"id":"3fa0c359_411b10c9","line":187,"updated":"2018-02-20 21:46:19.000000000","message":"wonder why we want to call it \u0027GenericIPMI\u0027 vs \u0027IPMI\u0027? (We have an ipmitool.IPMIConsole for the serial console.)\n\nThis looks like the spec is proposing a new implementation of the existing ConsoleInterface. Yes?","commit_id":"ac3f3df6214ba8f24bdf94649eff43564c39d160"},{"author":{"_account_id":10206,"name":"Madhuri Kumari","email":"madhuri.kumari@intel.com","username":"Madhuri"},"change_message_id":"ab84ae2c541afecce7ee7728c6fa0957fd9b2e3a","unresolved":false,"context_lines":[{"line_number":184,"context_line":"Work Items"},{"line_number":185,"context_line":"----------"},{"line_number":186,"context_line":""},{"line_number":187,"context_line":"* Introduce ``ipmitool.GenericIPMIVNCConsole(ConsoleInterface)``"},{"line_number":188,"context_line":""},{"line_number":189,"context_line":"* Add type support to the console REST API"},{"line_number":190,"context_line":""}],"source_content_type":"text/x-rst","patch_set":6,"id":"3fa0c359_e7b4a284","line":187,"in_reply_to":"3fa0c359_411b10c9","updated":"2018-02-21 09:34:10.000000000","message":"Ruby, we will introduce a new child class of ConsoleInterface, let\u0027s say it IPMIVNCConsole for the graphical console.","commit_id":"ac3f3df6214ba8f24bdf94649eff43564c39d160"},{"author":{"_account_id":10206,"name":"Madhuri Kumari","email":"madhuri.kumari@intel.com","username":"Madhuri"},"change_message_id":"c7247337033a7b1d0be1c5118315225d5df3fda2","unresolved":false,"context_lines":[{"line_number":184,"context_line":"Work Items"},{"line_number":185,"context_line":"----------"},{"line_number":186,"context_line":""},{"line_number":187,"context_line":"* Introduce ``ipmitool.GenericIPMIVNCConsole(ConsoleInterface)``"},{"line_number":188,"context_line":""},{"line_number":189,"context_line":"* Add type support to the console REST API"},{"line_number":190,"context_line":""}],"source_content_type":"text/x-rst","patch_set":6,"id":"3fa0c359_e480e7c1","line":187,"in_reply_to":"3fa0c359_e7b4a284","updated":"2018-02-23 09:27:04.000000000","message":"Ruby ignore my previous comment.\nWe are introducing a new GraphicalConsoleInterface which is independent of ConsoleInterface.","commit_id":"ac3f3df6214ba8f24bdf94649eff43564c39d160"},{"author":{"_account_id":19593,"name":"Anup Navare","email":"anup.d.navare@intel.com","username":"anup"},"change_message_id":"01757fc2e925ce621969eb7e87f23868627ff603","unresolved":false,"context_lines":[{"line_number":27,"context_line":""},{"line_number":28,"context_line":"Currently, Ironic does not expose a node\u0027s KVM capabilities. As such, admin"},{"line_number":29,"context_line":"users and deployers have to find alternatives to provide KVM access to their"},{"line_number":30,"context_line":"users. Also, Horizon\u0027s VNC console is not supported for the Ironic nodes"},{"line_number":31,"context_line":"provisioned by Nova."},{"line_number":32,"context_line":""},{"line_number":33,"context_line":""}],"source_content_type":"text/x-rst","patch_set":7,"id":"3fa0c359_80c78196","line":30,"range":{"start_line":30,"start_character":7,"end_line":30,"end_character":72},"updated":"2018-02-23 22:25:35.000000000","message":"Is there a plan to access the graphical console through Horizon as well?","commit_id":"5695e4c941cd8bb5f4bc89836dae32aa17dc9fac"},{"author":{"_account_id":10206,"name":"Madhuri Kumari","email":"madhuri.kumari@intel.com","username":"Madhuri"},"change_message_id":"6f06c2f26eda226386463bcdeaa240edad569893","unresolved":false,"context_lines":[{"line_number":27,"context_line":""},{"line_number":28,"context_line":"Currently, Ironic does not expose a node\u0027s KVM capabilities. As such, admin"},{"line_number":29,"context_line":"users and deployers have to find alternatives to provide KVM access to their"},{"line_number":30,"context_line":"users. Also, Horizon\u0027s VNC console is not supported for the Ironic nodes"},{"line_number":31,"context_line":"provisioned by Nova."},{"line_number":32,"context_line":""},{"line_number":33,"context_line":""}],"source_content_type":"text/x-rst","patch_set":7,"id":"df7087c5_818642db","line":30,"range":{"start_line":30,"start_character":7,"end_line":30,"end_character":72},"in_reply_to":"3fa0c359_80c78196","updated":"2018-04-19 08:53:07.000000000","message":"Yes, it should not need any change in Horizon to support console for baremetals.","commit_id":"5695e4c941cd8bb5f4bc89836dae32aa17dc9fac"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"cb783cb07a3ef0bda2675c4725f75cc3e029673a","unresolved":false,"context_lines":[{"line_number":80,"context_line":"  created."},{"line_number":81,"context_line":""},{"line_number":82,"context_line":"  + ``ipmitool.IPMIVNCConsole`` - For accessing graphical console using VNC."},{"line_number":83,"context_line":"  + ``noop.NoGraphicalConsole`` - For no graphical console."},{"line_number":84,"context_line":""},{"line_number":85,"context_line":"* Each driver will mention what is the ``GraphicalConsoleInterface``"},{"line_number":86,"context_line":"  implementation that it wishes to instantiate. For example, the"}],"source_content_type":"text/x-rst","patch_set":7,"id":"df7087c5_c9d0effa","line":83,"updated":"2018-03-08 17:30:12.000000000","message":"maybe mention \u0027no-graphical-console\u0027 since that is probably what you\u0027re going to call it in setup.cfg and you mention this string below.\n\nso similar thing for ipmitool above (will it be eg \u0027ipmitool-vnc\u0027?)","commit_id":"5695e4c941cd8bb5f4bc89836dae32aa17dc9fac"},{"author":{"_account_id":10206,"name":"Madhuri Kumari","email":"madhuri.kumari@intel.com","username":"Madhuri"},"change_message_id":"6f06c2f26eda226386463bcdeaa240edad569893","unresolved":false,"context_lines":[{"line_number":80,"context_line":"  created."},{"line_number":81,"context_line":""},{"line_number":82,"context_line":"  + ``ipmitool.IPMIVNCConsole`` - For accessing graphical console using VNC."},{"line_number":83,"context_line":"  + ``noop.NoGraphicalConsole`` - For no graphical console."},{"line_number":84,"context_line":""},{"line_number":85,"context_line":"* Each driver will mention what is the ``GraphicalConsoleInterface``"},{"line_number":86,"context_line":"  implementation that it wishes to instantiate. For example, the"}],"source_content_type":"text/x-rst","patch_set":7,"id":"9f6a8fd7_44325812","line":83,"in_reply_to":"df7087c5_c9d0effa","updated":"2018-04-19 08:53:07.000000000","message":"Done","commit_id":"5695e4c941cd8bb5f4bc89836dae32aa17dc9fac"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"cb783cb07a3ef0bda2675c4725f75cc3e029673a","unresolved":false,"context_lines":[{"line_number":81,"context_line":""},{"line_number":82,"context_line":"  + ``ipmitool.IPMIVNCConsole`` - For accessing graphical console using VNC."},{"line_number":83,"context_line":"  + ``noop.NoGraphicalConsole`` - For no graphical console."},{"line_number":84,"context_line":""},{"line_number":85,"context_line":"* Each driver will mention what is the ``GraphicalConsoleInterface``"},{"line_number":86,"context_line":"  implementation that it wishes to instantiate. For example, the"},{"line_number":87,"context_line":"  ``agent_ipmitool`` driver will look like the following::"}],"source_content_type":"text/x-rst","patch_set":7,"id":"df7087c5_a919fb79","line":84,"updated":"2018-03-08 17:30:12.000000000","message":"we should add a fake:FakeGraphicalConsole too","commit_id":"5695e4c941cd8bb5f4bc89836dae32aa17dc9fac"},{"author":{"_account_id":10206,"name":"Madhuri Kumari","email":"madhuri.kumari@intel.com","username":"Madhuri"},"change_message_id":"6f06c2f26eda226386463bcdeaa240edad569893","unresolved":false,"context_lines":[{"line_number":81,"context_line":""},{"line_number":82,"context_line":"  + ``ipmitool.IPMIVNCConsole`` - For accessing graphical console using VNC."},{"line_number":83,"context_line":"  + ``noop.NoGraphicalConsole`` - For no graphical console."},{"line_number":84,"context_line":""},{"line_number":85,"context_line":"* Each driver will mention what is the ``GraphicalConsoleInterface``"},{"line_number":86,"context_line":"  implementation that it wishes to instantiate. For example, the"},{"line_number":87,"context_line":"  ``agent_ipmitool`` driver will look like the following::"}],"source_content_type":"text/x-rst","patch_set":7,"id":"9f6a8fd7_64351cf7","line":84,"in_reply_to":"df7087c5_a919fb79","updated":"2018-04-19 08:53:07.000000000","message":"Done","commit_id":"5695e4c941cd8bb5f4bc89836dae32aa17dc9fac"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"cb783cb07a3ef0bda2675c4725f75cc3e029673a","unresolved":false,"context_lines":[{"line_number":84,"context_line":""},{"line_number":85,"context_line":"* Each driver will mention what is the ``GraphicalConsoleInterface``"},{"line_number":86,"context_line":"  implementation that it wishes to instantiate. For example, the"},{"line_number":87,"context_line":"  ``agent_ipmitool`` driver will look like the following::"},{"line_number":88,"context_line":""},{"line_number":89,"context_line":"    class AgentAndIPMIToolDriver(base.BaseDriver):"},{"line_number":90,"context_line":"        \"\"\"Agent + IPMITool driver."}],"source_content_type":"text/x-rst","patch_set":7,"id":"df7087c5_697be38b","line":87,"updated":"2018-03-08 17:30:12.000000000","message":"we\u0027ve deprecated the classic drivers. No more changes can be made to those so graphical consoles will not be available for them.","commit_id":"5695e4c941cd8bb5f4bc89836dae32aa17dc9fac"},{"author":{"_account_id":10206,"name":"Madhuri Kumari","email":"madhuri.kumari@intel.com","username":"Madhuri"},"change_message_id":"6f06c2f26eda226386463bcdeaa240edad569893","unresolved":false,"context_lines":[{"line_number":84,"context_line":""},{"line_number":85,"context_line":"* Each driver will mention what is the ``GraphicalConsoleInterface``"},{"line_number":86,"context_line":"  implementation that it wishes to instantiate. For example, the"},{"line_number":87,"context_line":"  ``agent_ipmitool`` driver will look like the following::"},{"line_number":88,"context_line":""},{"line_number":89,"context_line":"    class AgentAndIPMIToolDriver(base.BaseDriver):"},{"line_number":90,"context_line":"        \"\"\"Agent + IPMITool driver."}],"source_content_type":"text/x-rst","patch_set":7,"id":"9f6a8fd7_24bddfd7","line":87,"in_reply_to":"df7087c5_697be38b","updated":"2018-04-19 08:53:07.000000000","message":"Yes I have removed this part.","commit_id":"5695e4c941cd8bb5f4bc89836dae32aa17dc9fac"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"cb783cb07a3ef0bda2675c4725f75cc3e029673a","unresolved":false,"context_lines":[{"line_number":114,"context_line":"            return \u0027ipmi\u0027, dict(_to_hardware_type(),"},{"line_number":115,"context_line":"                                console\u003d\u0027ipmitool-shellinabox\u0027,"},{"line_number":116,"context_line":"                                deploy\u003d\u0027direct\u0027,"},{"line_number":117,"context_line":"                                graphical_console\u003d\u0027vnc\u0027)"},{"line_number":118,"context_line":""},{"line_number":119,"context_line":"* New config options will be introduced for this interface which are as"},{"line_number":120,"context_line":"  follows:"}],"source_content_type":"text/x-rst","patch_set":7,"id":"df7087c5_69c1a354","line":117,"updated":"2018-03-08 17:30:12.000000000","message":"nope, we don\u0027t want to make this change.\n\nThe code should be written so that the graphical console for all classic drivers is NoGraphicalConsole. There\u0027s nothing to migrate/change in the too_hardware_type() method.","commit_id":"5695e4c941cd8bb5f4bc89836dae32aa17dc9fac"},{"author":{"_account_id":10206,"name":"Madhuri Kumari","email":"madhuri.kumari@intel.com","username":"Madhuri"},"change_message_id":"6f06c2f26eda226386463bcdeaa240edad569893","unresolved":false,"context_lines":[{"line_number":114,"context_line":"            return \u0027ipmi\u0027, dict(_to_hardware_type(),"},{"line_number":115,"context_line":"                                console\u003d\u0027ipmitool-shellinabox\u0027,"},{"line_number":116,"context_line":"                                deploy\u003d\u0027direct\u0027,"},{"line_number":117,"context_line":"                                graphical_console\u003d\u0027vnc\u0027)"},{"line_number":118,"context_line":""},{"line_number":119,"context_line":"* New config options will be introduced for this interface which are as"},{"line_number":120,"context_line":"  follows:"}],"source_content_type":"text/x-rst","patch_set":7,"id":"9f6a8fd7_cf3c41ca","line":117,"in_reply_to":"df7087c5_280b00d6","updated":"2018-04-19 08:53:07.000000000","message":"Ruby, I have removed this code and updated the spec saying that the classic drivers will have no graphical console support.","commit_id":"5695e4c941cd8bb5f4bc89836dae32aa17dc9fac"},{"author":{"_account_id":19593,"name":"Anup Navare","email":"anup.d.navare@intel.com","username":"anup"},"change_message_id":"1377f08da48436efd2592d37775493763b0459bd","unresolved":false,"context_lines":[{"line_number":114,"context_line":"            return \u0027ipmi\u0027, dict(_to_hardware_type(),"},{"line_number":115,"context_line":"                                console\u003d\u0027ipmitool-shellinabox\u0027,"},{"line_number":116,"context_line":"                                deploy\u003d\u0027direct\u0027,"},{"line_number":117,"context_line":"                                graphical_console\u003d\u0027vnc\u0027)"},{"line_number":118,"context_line":""},{"line_number":119,"context_line":"* New config options will be introduced for this interface which are as"},{"line_number":120,"context_line":"  follows:"}],"source_content_type":"text/x-rst","patch_set":7,"id":"df7087c5_a8468c7b","line":117,"in_reply_to":"df7087c5_69c1a354","updated":"2018-03-12 21:22:54.000000000","message":"@mkrai will address this by reworking the current code and testing it.","commit_id":"5695e4c941cd8bb5f4bc89836dae32aa17dc9fac"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"b287b52a01a5d5b361c238d5803997b491e5b470","unresolved":false,"context_lines":[{"line_number":114,"context_line":"            return \u0027ipmi\u0027, dict(_to_hardware_type(),"},{"line_number":115,"context_line":"                                console\u003d\u0027ipmitool-shellinabox\u0027,"},{"line_number":116,"context_line":"                                deploy\u003d\u0027direct\u0027,"},{"line_number":117,"context_line":"                                graphical_console\u003d\u0027vnc\u0027)"},{"line_number":118,"context_line":""},{"line_number":119,"context_line":"* New config options will be introduced for this interface which are as"},{"line_number":120,"context_line":"  follows:"}],"source_content_type":"text/x-rst","patch_set":7,"id":"df7087c5_280b00d6","line":117,"in_reply_to":"df7087c5_a8468c7b","updated":"2018-03-15 14:17:51.000000000","message":"How are you keeping track of the comments between patch sets? I don\u0027t want this to be lost. If you don\u0027t know how to address it now -- I suggest you add a TODO or NOTE in the document, as an indicator that you need to address it before the spec can get approved.","commit_id":"5695e4c941cd8bb5f4bc89836dae32aa17dc9fac"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"cb783cb07a3ef0bda2675c4725f75cc3e029673a","unresolved":false,"context_lines":[{"line_number":119,"context_line":"* New config options will be introduced for this interface which are as"},{"line_number":120,"context_line":"  follows:"},{"line_number":121,"context_line":""},{"line_number":122,"context_line":"  + ``enabled_graphical_console_interfaces`` -  This config option will be"},{"line_number":123,"context_line":"    introduced in the ``DEFAULT`` group which represents the list of enabled"},{"line_number":124,"context_line":"    graphical console interfaces in Ironic. The default value is"},{"line_number":125,"context_line":"    ``[\u0027no-graphical-console\u0027]``."}],"source_content_type":"text/x-rst","patch_set":7,"id":"df7087c5_e97a9322","line":122,"updated":"2018-03-08 17:30:12.000000000","message":"you can just do \u0027[DEFAULT]enabled_graphical_console_interfaces\u0027, and not mention it in L123.","commit_id":"5695e4c941cd8bb5f4bc89836dae32aa17dc9fac"},{"author":{"_account_id":10206,"name":"Madhuri Kumari","email":"madhuri.kumari@intel.com","username":"Madhuri"},"change_message_id":"6f06c2f26eda226386463bcdeaa240edad569893","unresolved":false,"context_lines":[{"line_number":119,"context_line":"* New config options will be introduced for this interface which are as"},{"line_number":120,"context_line":"  follows:"},{"line_number":121,"context_line":""},{"line_number":122,"context_line":"  + ``enabled_graphical_console_interfaces`` -  This config option will be"},{"line_number":123,"context_line":"    introduced in the ``DEFAULT`` group which represents the list of enabled"},{"line_number":124,"context_line":"    graphical console interfaces in Ironic. The default value is"},{"line_number":125,"context_line":"    ``[\u0027no-graphical-console\u0027]``."}],"source_content_type":"text/x-rst","patch_set":7,"id":"9f6a8fd7_8f3649e6","line":122,"in_reply_to":"df7087c5_e97a9322","updated":"2018-04-19 08:53:07.000000000","message":"Done","commit_id":"5695e4c941cd8bb5f4bc89836dae32aa17dc9fac"},{"author":{"_account_id":19593,"name":"Anup Navare","email":"anup.d.navare@intel.com","username":"anup"},"change_message_id":"01757fc2e925ce621969eb7e87f23868627ff603","unresolved":false,"context_lines":[{"line_number":120,"context_line":"  follows:"},{"line_number":121,"context_line":""},{"line_number":122,"context_line":"  + ``enabled_graphical_console_interfaces`` -  This config option will be"},{"line_number":123,"context_line":"    introduced in the ``DEFAULT`` group which represents the list of enabled"},{"line_number":124,"context_line":"    graphical console interfaces in Ironic. The default value is"},{"line_number":125,"context_line":"    ``[\u0027no-graphical-console\u0027]``."},{"line_number":126,"context_line":""}],"source_content_type":"text/x-rst","patch_set":7,"id":"3fa0c359_800f8135","line":123,"range":{"start_line":123,"start_character":22,"end_line":123,"end_character":33},"updated":"2018-02-23 22:25:35.000000000","message":"a very minor thing, but by \"DEFAULT\" here you meant [DEFAULT] section in the configuration file? may be good to mention like - DEFAULT section of configuration file (just to be clear).","commit_id":"5695e4c941cd8bb5f4bc89836dae32aa17dc9fac"},{"author":{"_account_id":10206,"name":"Madhuri Kumari","email":"madhuri.kumari@intel.com","username":"Madhuri"},"change_message_id":"6f06c2f26eda226386463bcdeaa240edad569893","unresolved":false,"context_lines":[{"line_number":120,"context_line":"  follows:"},{"line_number":121,"context_line":""},{"line_number":122,"context_line":"  + ``enabled_graphical_console_interfaces`` -  This config option will be"},{"line_number":123,"context_line":"    introduced in the ``DEFAULT`` group which represents the list of enabled"},{"line_number":124,"context_line":"    graphical console interfaces in Ironic. The default value is"},{"line_number":125,"context_line":"    ``[\u0027no-graphical-console\u0027]``."},{"line_number":126,"context_line":""}],"source_content_type":"text/x-rst","patch_set":7,"id":"9f6a8fd7_8f6409e6","line":123,"range":{"start_line":123,"start_character":22,"end_line":123,"end_character":33},"in_reply_to":"3fa0c359_800f8135","updated":"2018-04-19 08:53:07.000000000","message":"Yes, Ruby meant DEFAULT section only and by using [DEFAULT]\u003cconfig_name\u003e it is self-understood that the config belongs to the DEFAULT section. Thanks!","commit_id":"5695e4c941cd8bb5f4bc89836dae32aa17dc9fac"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"cb783cb07a3ef0bda2675c4725f75cc3e029673a","unresolved":false,"context_lines":[{"line_number":124,"context_line":"    graphical console interfaces in Ironic. The default value is"},{"line_number":125,"context_line":"    ``[\u0027no-graphical-console\u0027]``."},{"line_number":126,"context_line":""},{"line_number":127,"context_line":"  + ``default_graphical_console_interface`` - This config option represents the"},{"line_number":128,"context_line":"    default graphical console interface to be used with various drivers. This"},{"line_number":129,"context_line":"    doesn\u0027t have a default value."},{"line_number":130,"context_line":""}],"source_content_type":"text/x-rst","patch_set":7,"id":"df7087c5_e9f61390","line":127,"updated":"2018-03-08 17:30:12.000000000","message":"s/``d/``[DEFAULT]d/","commit_id":"5695e4c941cd8bb5f4bc89836dae32aa17dc9fac"},{"author":{"_account_id":10206,"name":"Madhuri Kumari","email":"madhuri.kumari@intel.com","username":"Madhuri"},"change_message_id":"6f06c2f26eda226386463bcdeaa240edad569893","unresolved":false,"context_lines":[{"line_number":124,"context_line":"    graphical console interfaces in Ironic. The default value is"},{"line_number":125,"context_line":"    ``[\u0027no-graphical-console\u0027]``."},{"line_number":126,"context_line":""},{"line_number":127,"context_line":"  + ``default_graphical_console_interface`` - This config option represents the"},{"line_number":128,"context_line":"    default graphical console interface to be used with various drivers. This"},{"line_number":129,"context_line":"    doesn\u0027t have a default value."},{"line_number":130,"context_line":""}],"source_content_type":"text/x-rst","patch_set":7,"id":"9f6a8fd7_6f889570","line":127,"in_reply_to":"df7087c5_c8ae6097","updated":"2018-04-19 08:53:07.000000000","message":"Ruby also meant the same :)\nDone!","commit_id":"5695e4c941cd8bb5f4bc89836dae32aa17dc9fac"},{"author":{"_account_id":19593,"name":"Anup Navare","email":"anup.d.navare@intel.com","username":"anup"},"change_message_id":"1377f08da48436efd2592d37775493763b0459bd","unresolved":false,"context_lines":[{"line_number":124,"context_line":"    graphical console interfaces in Ironic. The default value is"},{"line_number":125,"context_line":"    ``[\u0027no-graphical-console\u0027]``."},{"line_number":126,"context_line":""},{"line_number":127,"context_line":"  + ``default_graphical_console_interface`` - This config option represents the"},{"line_number":128,"context_line":"    default graphical console interface to be used with various drivers. This"},{"line_number":129,"context_line":"    doesn\u0027t have a default value."},{"line_number":130,"context_line":""}],"source_content_type":"text/x-rst","patch_set":7,"id":"df7087c5_c8ae6097","line":127,"in_reply_to":"df7087c5_e9f61390","updated":"2018-03-12 21:22:54.000000000","message":"it can be [DEFAULT]/default_graphical_console_interface but we can\u0027t omit \u0027default\u0027 from \u0027default_graphical_console_interface\u0027 i believe.","commit_id":"5695e4c941cd8bb5f4bc89836dae32aa17dc9fac"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"cb783cb07a3ef0bda2675c4725f75cc3e029673a","unresolved":false,"context_lines":[{"line_number":129,"context_line":"    doesn\u0027t have a default value."},{"line_number":130,"context_line":""},{"line_number":131,"context_line":"* A new ``console_type`` parameter will be added to the console APIs. This"},{"line_number":132,"context_line":"  parameters defines which type of console the Ironic users want to access."},{"line_number":133,"context_line":"  The default value will be ``serial``. The possible values are as follows:"},{"line_number":134,"context_line":""},{"line_number":135,"context_line":"  + ``serial`` - For accessing the serial console."}],"source_content_type":"text/x-rst","patch_set":7,"id":"df7087c5_c9278f12","line":132,"updated":"2018-03-08 17:30:12.000000000","message":"s/parameters/parameter/","commit_id":"5695e4c941cd8bb5f4bc89836dae32aa17dc9fac"},{"author":{"_account_id":10206,"name":"Madhuri Kumari","email":"madhuri.kumari@intel.com","username":"Madhuri"},"change_message_id":"6f06c2f26eda226386463bcdeaa240edad569893","unresolved":false,"context_lines":[{"line_number":129,"context_line":"    doesn\u0027t have a default value."},{"line_number":130,"context_line":""},{"line_number":131,"context_line":"* A new ``console_type`` parameter will be added to the console APIs. This"},{"line_number":132,"context_line":"  parameters defines which type of console the Ironic users want to access."},{"line_number":133,"context_line":"  The default value will be ``serial``. The possible values are as follows:"},{"line_number":134,"context_line":""},{"line_number":135,"context_line":"  + ``serial`` - For accessing the serial console."}],"source_content_type":"text/x-rst","patch_set":7,"id":"9f6a8fd7_6fedf523","line":132,"in_reply_to":"df7087c5_c9278f12","updated":"2018-04-19 08:53:07.000000000","message":"Done","commit_id":"5695e4c941cd8bb5f4bc89836dae32aa17dc9fac"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"cb783cb07a3ef0bda2675c4725f75cc3e029673a","unresolved":false,"context_lines":[{"line_number":133,"context_line":"  The default value will be ``serial``. The possible values are as follows:"},{"line_number":134,"context_line":""},{"line_number":135,"context_line":"  + ``serial`` - For accessing the serial console."},{"line_number":136,"context_line":"  + ``graphical`` - For accessing graphical console using VNC protocol."},{"line_number":137,"context_line":""},{"line_number":138,"context_line":"  The list of APIs that will be changed to include this parameter are:"},{"line_number":139,"context_line":""}],"source_content_type":"text/x-rst","patch_set":7,"id":"df7087c5_89767706","line":136,"updated":"2018-03-08 17:30:12.000000000","message":"s/using VNC protocol//\n\nbecause we could have other non-VNC graphical console interfaces in the future","commit_id":"5695e4c941cd8bb5f4bc89836dae32aa17dc9fac"},{"author":{"_account_id":19593,"name":"Anup Navare","email":"anup.d.navare@intel.com","username":"anup"},"change_message_id":"1377f08da48436efd2592d37775493763b0459bd","unresolved":false,"context_lines":[{"line_number":133,"context_line":"  The default value will be ``serial``. The possible values are as follows:"},{"line_number":134,"context_line":""},{"line_number":135,"context_line":"  + ``serial`` - For accessing the serial console."},{"line_number":136,"context_line":"  + ``graphical`` - For accessing graphical console using VNC protocol."},{"line_number":137,"context_line":""},{"line_number":138,"context_line":"  The list of APIs that will be changed to include this parameter are:"},{"line_number":139,"context_line":""}],"source_content_type":"text/x-rst","patch_set":7,"id":"df7087c5_c838a03e","line":136,"in_reply_to":"df7087c5_89767706","updated":"2018-03-12 21:22:54.000000000","message":"hmm, yes but I feel would be good to be specific for now, until we don\u0027t know what can other protocols be. But it\u0027s just my opinion.","commit_id":"5695e4c941cd8bb5f4bc89836dae32aa17dc9fac"},{"author":{"_account_id":10206,"name":"Madhuri Kumari","email":"madhuri.kumari@intel.com","username":"Madhuri"},"change_message_id":"6f06c2f26eda226386463bcdeaa240edad569893","unresolved":false,"context_lines":[{"line_number":133,"context_line":"  The default value will be ``serial``. The possible values are as follows:"},{"line_number":134,"context_line":""},{"line_number":135,"context_line":"  + ``serial`` - For accessing the serial console."},{"line_number":136,"context_line":"  + ``graphical`` - For accessing graphical console using VNC protocol."},{"line_number":137,"context_line":""},{"line_number":138,"context_line":"  The list of APIs that will be changed to include this parameter are:"},{"line_number":139,"context_line":""}],"source_content_type":"text/x-rst","patch_set":7,"id":"9f6a8fd7_af50edd5","line":136,"in_reply_to":"df7087c5_c838a03e","updated":"2018-04-19 08:53:07.000000000","message":"Let\u0027s generalize the spec. I have removed the protocol.","commit_id":"5695e4c941cd8bb5f4bc89836dae32aa17dc9fac"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"cb783cb07a3ef0bda2675c4725f75cc3e029673a","unresolved":false,"context_lines":[{"line_number":141,"context_line":"    ``ironic.api.controllers.v1.nodes.NodeConsoleController.get``."},{"line_number":142,"context_line":""},{"line_number":143,"context_line":"  + ``PUT /v1/nodes/{node_ident}/states/console`` - This will change the method"},{"line_number":144,"context_line":"    ``ironic.api.controllers.v1.nodes.NodeConsoleController.put``."},{"line_number":145,"context_line":""},{"line_number":146,"context_line":"* Two new fields ``graphical_console_interface`` and"},{"line_number":147,"context_line":"  ``graphical_console_enabled`` will be added to the Node object that"}],"source_content_type":"text/x-rst","patch_set":7,"id":"df7087c5_8c07651d","line":144,"updated":"2018-03-08 17:30:12.000000000","message":"we have a \u0027REST API impact\u0027 section below. My suggestion is to just briefly mention (or not), and link to below. Because I don\u0027t want to look at two places to get the full description of the changes; it\u0027d be better if it was all documented in one section. Eg, where is this new \u0027console_type\u0027 parameter specified? in the request URL, in the query part? or in the body?","commit_id":"5695e4c941cd8bb5f4bc89836dae32aa17dc9fac"},{"author":{"_account_id":10206,"name":"Madhuri Kumari","email":"madhuri.kumari@intel.com","username":"Madhuri"},"change_message_id":"6f06c2f26eda226386463bcdeaa240edad569893","unresolved":false,"context_lines":[{"line_number":141,"context_line":"    ``ironic.api.controllers.v1.nodes.NodeConsoleController.get``."},{"line_number":142,"context_line":""},{"line_number":143,"context_line":"  + ``PUT /v1/nodes/{node_ident}/states/console`` - This will change the method"},{"line_number":144,"context_line":"    ``ironic.api.controllers.v1.nodes.NodeConsoleController.put``."},{"line_number":145,"context_line":""},{"line_number":146,"context_line":"* Two new fields ``graphical_console_interface`` and"},{"line_number":147,"context_line":"  ``graphical_console_enabled`` will be added to the Node object that"}],"source_content_type":"text/x-rst","patch_set":7,"id":"9f6a8fd7_4fbd91d6","line":144,"in_reply_to":"df7087c5_8c07651d","updated":"2018-04-19 08:53:07.000000000","message":"Ok I have removed this one. The console_type will be used as a query parameter explain in the \u0027REST API impact\u0027 section below.","commit_id":"5695e4c941cd8bb5f4bc89836dae32aa17dc9fac"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"cb783cb07a3ef0bda2675c4725f75cc3e029673a","unresolved":false,"context_lines":[{"line_number":146,"context_line":"* Two new fields ``graphical_console_interface`` and"},{"line_number":147,"context_line":"  ``graphical_console_enabled`` will be added to the Node object that"},{"line_number":148,"context_line":"  represents the supported graphical console interface and whether graphical"},{"line_number":149,"context_line":"  console is supported for the node or not respectively."},{"line_number":150,"context_line":""},{"line_number":151,"context_line":"Alternatives"},{"line_number":152,"context_line":"------------"}],"source_content_type":"text/x-rst","patch_set":7,"id":"df7087c5_ec94e18d","line":149,"updated":"2018-03-08 17:30:12.000000000","message":"the above two lines don\u0027t make sense to me.\n\ngraphical_console_interface is the interface implementation to be used for a particular node. Isn\u0027t graphical_console_enabled meant to be Boolean -- true if a console has been enabled (via a request to start the console)?","commit_id":"5695e4c941cd8bb5f4bc89836dae32aa17dc9fac"},{"author":{"_account_id":10206,"name":"Madhuri Kumari","email":"madhuri.kumari@intel.com","username":"Madhuri"},"change_message_id":"6f06c2f26eda226386463bcdeaa240edad569893","unresolved":false,"context_lines":[{"line_number":146,"context_line":"* Two new fields ``graphical_console_interface`` and"},{"line_number":147,"context_line":"  ``graphical_console_enabled`` will be added to the Node object that"},{"line_number":148,"context_line":"  represents the supported graphical console interface and whether graphical"},{"line_number":149,"context_line":"  console is supported for the node or not respectively."},{"line_number":150,"context_line":""},{"line_number":151,"context_line":"Alternatives"},{"line_number":152,"context_line":"------------"}],"source_content_type":"text/x-rst","patch_set":7,"id":"9f6a8fd7_8fe5e9aa","line":149,"in_reply_to":"df7087c5_622268bb","updated":"2018-04-19 08:53:07.000000000","message":"Ruby, yes the graphical_console_enabled will be a boolean value only which will be set to True via a request to start the graphical console. It is mentioned at L149. I have updated this point to be more clear in the next PS.","commit_id":"5695e4c941cd8bb5f4bc89836dae32aa17dc9fac"},{"author":{"_account_id":19593,"name":"Anup Navare","email":"anup.d.navare@intel.com","username":"anup"},"change_message_id":"23ebdf44cc3c9a968d8b33bbd356ebfcdd8ae52a","unresolved":false,"context_lines":[{"line_number":146,"context_line":"* Two new fields ``graphical_console_interface`` and"},{"line_number":147,"context_line":"  ``graphical_console_enabled`` will be added to the Node object that"},{"line_number":148,"context_line":"  represents the supported graphical console interface and whether graphical"},{"line_number":149,"context_line":"  console is supported for the node or not respectively."},{"line_number":150,"context_line":""},{"line_number":151,"context_line":"Alternatives"},{"line_number":152,"context_line":"------------"}],"source_content_type":"text/x-rst","patch_set":7,"id":"df7087c5_622268bb","line":149,"in_reply_to":"df7087c5_ec94e18d","updated":"2018-03-16 01:46:56.000000000","message":"I agree, GraphicalConsoleInterface is the interface implementation. Looking into this, Madhuri or me will get back to you on this.","commit_id":"5695e4c941cd8bb5f4bc89836dae32aa17dc9fac"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"cb783cb07a3ef0bda2675c4725f75cc3e029673a","unresolved":false,"context_lines":[{"line_number":163,"context_line":"Data model impact"},{"line_number":164,"context_line":"-----------------"},{"line_number":165,"context_line":""},{"line_number":166,"context_line":"- A new node field ``graphical_console_enabled``, during upgrade/conversion"},{"line_number":167,"context_line":"  will be populated from ``default_graphical_console_interface`` config option"},{"line_number":168,"context_line":"  (``noop`` by default)."},{"line_number":169,"context_line":"- new node field ``graphical_console_interface`` will be added."}],"source_content_type":"text/x-rst","patch_set":7,"id":"df7087c5_4c606da6","line":166,"updated":"2018-03-08 17:30:12.000000000","message":"oh. guess i don\u0027t understand what graphical_console_enabled is for. please clarify.","commit_id":"5695e4c941cd8bb5f4bc89836dae32aa17dc9fac"},{"author":{"_account_id":10206,"name":"Madhuri Kumari","email":"madhuri.kumari@intel.com","username":"Madhuri"},"change_message_id":"6f06c2f26eda226386463bcdeaa240edad569893","unresolved":false,"context_lines":[{"line_number":163,"context_line":"Data model impact"},{"line_number":164,"context_line":"-----------------"},{"line_number":165,"context_line":""},{"line_number":166,"context_line":"- A new node field ``graphical_console_enabled``, during upgrade/conversion"},{"line_number":167,"context_line":"  will be populated from ``default_graphical_console_interface`` config option"},{"line_number":168,"context_line":"  (``noop`` by default)."},{"line_number":169,"context_line":"- new node field ``graphical_console_interface`` will be added."}],"source_content_type":"text/x-rst","patch_set":7,"id":"9f6a8fd7_7503840e","line":166,"in_reply_to":"df7087c5_4c606da6","updated":"2018-04-19 08:53:07.000000000","message":"I have updated the details with your last comment under Proposed change section.","commit_id":"5695e4c941cd8bb5f4bc89836dae32aa17dc9fac"},{"author":{"_account_id":19593,"name":"Anup Navare","email":"anup.d.navare@intel.com","username":"anup"},"change_message_id":"01757fc2e925ce621969eb7e87f23868627ff603","unresolved":false,"context_lines":[{"line_number":164,"context_line":"-----------------"},{"line_number":165,"context_line":""},{"line_number":166,"context_line":"- A new node field ``graphical_console_enabled``, during upgrade/conversion"},{"line_number":167,"context_line":"  will be populated from ``default_graphical_console_interface`` config option"},{"line_number":168,"context_line":"  (``noop`` by default)."},{"line_number":169,"context_line":"- new node field ``graphical_console_interface`` will be added."},{"line_number":170,"context_line":""}],"source_content_type":"text/x-rst","patch_set":7,"id":"3fa0c359_96e34705","line":167,"range":{"start_line":167,"start_character":25,"end_line":167,"end_character":64},"updated":"2018-02-23 22:25:35.000000000","message":"L127 states it doesn\u0027t have default option. Does that mean \"noop\"?","commit_id":"5695e4c941cd8bb5f4bc89836dae32aa17dc9fac"},{"author":{"_account_id":10206,"name":"Madhuri Kumari","email":"madhuri.kumari@intel.com","username":"Madhuri"},"change_message_id":"6f06c2f26eda226386463bcdeaa240edad569893","unresolved":false,"context_lines":[{"line_number":164,"context_line":"-----------------"},{"line_number":165,"context_line":""},{"line_number":166,"context_line":"- A new node field ``graphical_console_enabled``, during upgrade/conversion"},{"line_number":167,"context_line":"  will be populated from ``default_graphical_console_interface`` config option"},{"line_number":168,"context_line":"  (``noop`` by default)."},{"line_number":169,"context_line":"- new node field ``graphical_console_interface`` will be added."},{"line_number":170,"context_line":""}],"source_content_type":"text/x-rst","patch_set":7,"id":"9f6a8fd7_759f04b4","line":167,"range":{"start_line":167,"start_character":25,"end_line":167,"end_character":64},"in_reply_to":"3fa0c359_96e34705","updated":"2018-04-19 08:53:07.000000000","message":"Yes, noop should be the default value.","commit_id":"5695e4c941cd8bb5f4bc89836dae32aa17dc9fac"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"cb783cb07a3ef0bda2675c4725f75cc3e029673a","unresolved":false,"context_lines":[{"line_number":196,"context_line":"Client (CLI) impact"},{"line_number":197,"context_line":"-------------------"},{"line_number":198,"context_line":""},{"line_number":199,"context_line":"* Add a new optional parameter called ``--type`` to ``node-set-console-mode``"},{"line_number":200,"context_line":"  to allow enabling/disabling a specific console type. Similarly this option"},{"line_number":201,"context_line":"  will be added to OSC command ``openstack baremetal node console enable``"},{"line_number":202,"context_line":"  and ``openstack baremetal node console disable``."}],"source_content_type":"text/x-rst","patch_set":7,"id":"df7087c5_0cb6f5fb","line":199,"updated":"2018-03-08 17:30:12.000000000","message":"the ironic CLI has been deprecated. This should only describe changes to the \u0027openstack baremetal\u0027 CLis.","commit_id":"5695e4c941cd8bb5f4bc89836dae32aa17dc9fac"},{"author":{"_account_id":10206,"name":"Madhuri Kumari","email":"madhuri.kumari@intel.com","username":"Madhuri"},"change_message_id":"6f06c2f26eda226386463bcdeaa240edad569893","unresolved":false,"context_lines":[{"line_number":196,"context_line":"Client (CLI) impact"},{"line_number":197,"context_line":"-------------------"},{"line_number":198,"context_line":""},{"line_number":199,"context_line":"* Add a new optional parameter called ``--type`` to ``node-set-console-mode``"},{"line_number":200,"context_line":"  to allow enabling/disabling a specific console type. Similarly this option"},{"line_number":201,"context_line":"  will be added to OSC command ``openstack baremetal node console enable``"},{"line_number":202,"context_line":"  and ``openstack baremetal node console disable``."}],"source_content_type":"text/x-rst","patch_set":7,"id":"9f6a8fd7_75a5c4b4","line":199,"in_reply_to":"df7087c5_0cb6f5fb","updated":"2018-04-19 08:53:07.000000000","message":"Done","commit_id":"5695e4c941cd8bb5f4bc89836dae32aa17dc9fac"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"cb783cb07a3ef0bda2675c4725f75cc3e029673a","unresolved":false,"context_lines":[{"line_number":212,"context_line":"* Add a new ``console_type`` parameter to ``get_console_information``"},{"line_number":213,"context_line":""},{"line_number":214,"context_line":"* Add a new ``console_type`` parameter to ``set_console_mode``"},{"line_number":215,"context_line":""},{"line_number":216,"context_line":"The RPC API microversion will need to be bumped."},{"line_number":217,"context_line":""},{"line_number":218,"context_line":""}],"source_content_type":"text/x-rst","patch_set":7,"id":"df7087c5_6c8f712a","line":215,"updated":"2018-03-08 17:30:12.000000000","message":"or add two new RPC API calls for graphical, but I\u0027m good with the proposal.","commit_id":"5695e4c941cd8bb5f4bc89836dae32aa17dc9fac"},{"author":{"_account_id":10206,"name":"Madhuri Kumari","email":"madhuri.kumari@intel.com","username":"Madhuri"},"change_message_id":"6f06c2f26eda226386463bcdeaa240edad569893","unresolved":false,"context_lines":[{"line_number":212,"context_line":"* Add a new ``console_type`` parameter to ``get_console_information``"},{"line_number":213,"context_line":""},{"line_number":214,"context_line":"* Add a new ``console_type`` parameter to ``set_console_mode``"},{"line_number":215,"context_line":""},{"line_number":216,"context_line":"The RPC API microversion will need to be bumped."},{"line_number":217,"context_line":""},{"line_number":218,"context_line":""}],"source_content_type":"text/x-rst","patch_set":7,"id":"9f6a8fd7_3588ac1d","line":215,"in_reply_to":"df7087c5_6c8f712a","updated":"2018-04-19 08:53:07.000000000","message":"Ok so I left the change as it is.","commit_id":"5695e4c941cd8bb5f4bc89836dae32aa17dc9fac"},{"author":{"_account_id":13689,"name":"Hironori Shiina","email":"Hironori.Shiina@fujitsu.com","username":"shiina"},"change_message_id":"2cf13517edd7162f3472c53f560e0a9762e92f02","unresolved":false,"context_lines":[{"line_number":226,"context_line":"------------------"},{"line_number":227,"context_line":""},{"line_number":228,"context_line":"Nova impacts are fully described in the VNC console support for Ironic"},{"line_number":229,"context_line":"driver [#]_ spec in Nova."},{"line_number":230,"context_line":""},{"line_number":231,"context_line":"Essentially, the Ironic virt driver will have to implement ``get_vnc_console``"},{"line_number":232,"context_line":"and call Ironic\u0027s get/set-console-mode with the ``graphical`` type."}],"source_content_type":"text/x-rst","patch_set":7,"id":"df7087c5_1747b07a","line":229,"range":{"start_line":229,"start_character":12,"end_line":229,"end_character":16},"updated":"2018-03-12 03:59:33.000000000","message":"I prefer using \u0027blueprint\u0027 explicitly instead of \u0027spec\u0027 here. I believe this blueprint can be approved as a specless blueprint[1] in nova because this change is straightforward as mentioned below.\n\n[1] https://specs.openstack.org/openstack/nova-specs/readme.html#trivial-specifications","commit_id":"5695e4c941cd8bb5f4bc89836dae32aa17dc9fac"},{"author":{"_account_id":10206,"name":"Madhuri Kumari","email":"madhuri.kumari@intel.com","username":"Madhuri"},"change_message_id":"6f06c2f26eda226386463bcdeaa240edad569893","unresolved":false,"context_lines":[{"line_number":226,"context_line":"------------------"},{"line_number":227,"context_line":""},{"line_number":228,"context_line":"Nova impacts are fully described in the VNC console support for Ironic"},{"line_number":229,"context_line":"driver [#]_ spec in Nova."},{"line_number":230,"context_line":""},{"line_number":231,"context_line":"Essentially, the Ironic virt driver will have to implement ``get_vnc_console``"},{"line_number":232,"context_line":"and call Ironic\u0027s get/set-console-mode with the ``graphical`` type."}],"source_content_type":"text/x-rst","patch_set":7,"id":"9f6a8fd7_f59eb452","line":229,"range":{"start_line":229,"start_character":12,"end_line":229,"end_character":16},"in_reply_to":"df7087c5_1747b07a","updated":"2018-04-19 08:53:07.000000000","message":"Done. You\u0027re right here. Nova bp should be approved easily.","commit_id":"5695e4c941cd8bb5f4bc89836dae32aa17dc9fac"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"cb783cb07a3ef0bda2675c4725f75cc3e029673a","unresolved":false,"context_lines":[{"line_number":255,"context_line":""},{"line_number":256,"context_line":"* The number of maximum connections per console, specifically VNC consoles is"},{"line_number":257,"context_line":"  implementation specific. Some servers are capable of multiple connections and"},{"line_number":258,"context_line":"  other aren\u0027t."},{"line_number":259,"context_line":""},{"line_number":260,"context_line":""},{"line_number":261,"context_line":"Scalability impact"}],"source_content_type":"text/x-rst","patch_set":7,"id":"df7087c5_8cc5253f","line":258,"updated":"2018-03-08 17:30:12.000000000","message":"nit s/other/others/","commit_id":"5695e4c941cd8bb5f4bc89836dae32aa17dc9fac"},{"author":{"_account_id":10206,"name":"Madhuri Kumari","email":"madhuri.kumari@intel.com","username":"Madhuri"},"change_message_id":"6f06c2f26eda226386463bcdeaa240edad569893","unresolved":false,"context_lines":[{"line_number":255,"context_line":""},{"line_number":256,"context_line":"* The number of maximum connections per console, specifically VNC consoles is"},{"line_number":257,"context_line":"  implementation specific. Some servers are capable of multiple connections and"},{"line_number":258,"context_line":"  other aren\u0027t."},{"line_number":259,"context_line":""},{"line_number":260,"context_line":""},{"line_number":261,"context_line":"Scalability impact"}],"source_content_type":"text/x-rst","patch_set":7,"id":"9f6a8fd7_f5cb146f","line":258,"in_reply_to":"df7087c5_8cc5253f","updated":"2018-04-19 08:53:07.000000000","message":"Done","commit_id":"5695e4c941cd8bb5f4bc89836dae32aa17dc9fac"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"cb783cb07a3ef0bda2675c4725f75cc3e029673a","unresolved":false,"context_lines":[{"line_number":261,"context_line":"Scalability impact"},{"line_number":262,"context_line":"------------------"},{"line_number":263,"context_line":""},{"line_number":264,"context_line":"None."},{"line_number":265,"context_line":""},{"line_number":266,"context_line":""},{"line_number":267,"context_line":"Performance Impact"}],"source_content_type":"text/x-rst","patch_set":7,"id":"df7087c5_0c003567","line":264,"updated":"2018-03-08 17:30:12.000000000","message":"well, doesn\u0027t the limitation you mention at L256 also a limiting factor wrt scalability? Also wondering how many of these a conductor can support.","commit_id":"5695e4c941cd8bb5f4bc89836dae32aa17dc9fac"},{"author":{"_account_id":19593,"name":"Anup Navare","email":"anup.d.navare@intel.com","username":"anup"},"change_message_id":"23ebdf44cc3c9a968d8b33bbd356ebfcdd8ae52a","unresolved":false,"context_lines":[{"line_number":261,"context_line":"Scalability impact"},{"line_number":262,"context_line":"------------------"},{"line_number":263,"context_line":""},{"line_number":264,"context_line":"None."},{"line_number":265,"context_line":""},{"line_number":266,"context_line":""},{"line_number":267,"context_line":"Performance Impact"}],"source_content_type":"text/x-rst","patch_set":7,"id":"df7087c5_d6ee99eb","line":264,"in_reply_to":"df7087c5_0c003567","updated":"2018-03-16 01:46:56.000000000","message":"Yes indeed. Will add here.","commit_id":"5695e4c941cd8bb5f4bc89836dae32aa17dc9fac"},{"author":{"_account_id":10206,"name":"Madhuri Kumari","email":"madhuri.kumari@intel.com","username":"Madhuri"},"change_message_id":"6f06c2f26eda226386463bcdeaa240edad569893","unresolved":false,"context_lines":[{"line_number":261,"context_line":"Scalability impact"},{"line_number":262,"context_line":"------------------"},{"line_number":263,"context_line":""},{"line_number":264,"context_line":"None."},{"line_number":265,"context_line":""},{"line_number":266,"context_line":""},{"line_number":267,"context_line":"Performance Impact"}],"source_content_type":"text/x-rst","patch_set":7,"id":"9f6a8fd7_5561a0a8","line":264,"in_reply_to":"df7087c5_d6ee99eb","updated":"2018-04-19 08:53:07.000000000","message":"Yes, the above is also a scalability issue based on different hardware. \nI haven\u0027t done any work on testing the scale. I will add a TODO section here to address your comment later.","commit_id":"5695e4c941cd8bb5f4bc89836dae32aa17dc9fac"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"cb783cb07a3ef0bda2675c4725f75cc3e029673a","unresolved":false,"context_lines":[{"line_number":293,"context_line":"-----------"},{"line_number":294,"context_line":""},{"line_number":295,"context_line":"Primary assignee:"},{"line_number":296,"context_line":"  mat128"},{"line_number":297,"context_line":""},{"line_number":298,"context_line":"Other contributors:"},{"line_number":299,"context_line":"  * anupn"}],"source_content_type":"text/x-rst","patch_set":7,"id":"df7087c5_c6245ec9","line":296,"updated":"2018-03-08 17:30:12.000000000","message":"i don\u0027t think mat128 is working on this?","commit_id":"5695e4c941cd8bb5f4bc89836dae32aa17dc9fac"},{"author":{"_account_id":10206,"name":"Madhuri Kumari","email":"madhuri.kumari@intel.com","username":"Madhuri"},"change_message_id":"6f06c2f26eda226386463bcdeaa240edad569893","unresolved":false,"context_lines":[{"line_number":293,"context_line":"-----------"},{"line_number":294,"context_line":""},{"line_number":295,"context_line":"Primary assignee:"},{"line_number":296,"context_line":"  mat128"},{"line_number":297,"context_line":""},{"line_number":298,"context_line":"Other contributors:"},{"line_number":299,"context_line":"  * anupn"}],"source_content_type":"text/x-rst","patch_set":7,"id":"9f6a8fd7_753b849b","line":296,"in_reply_to":"df7087c5_c6245ec9","updated":"2018-04-19 08:53:07.000000000","message":"Yes he is not working so I removed his name.","commit_id":"5695e4c941cd8bb5f4bc89836dae32aa17dc9fac"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"cb783cb07a3ef0bda2675c4725f75cc3e029673a","unresolved":false,"context_lines":[{"line_number":342,"context_line":"Backwards compatibility within Ironic is assured through RPC versions."},{"line_number":343,"context_line":"Additional care is taken to ensure out-of-tree drivers are still compatible"},{"line_number":344,"context_line":"because the code will specifically handle drivers not switched to the new"},{"line_number":345,"context_line":"mapping. Specific tests covering this part will be added. Finally,"},{"line_number":346,"context_line":"compatibility with older API clients is assured through REST API microversions."},{"line_number":347,"context_line":""},{"line_number":348,"context_line":""}],"source_content_type":"text/x-rst","patch_set":7,"id":"df7087c5_ac2b4992","line":345,"updated":"2018-03-08 17:30:12.000000000","message":"I\u0027m not sure what \u0027the new mapping\u0027 means.","commit_id":"5695e4c941cd8bb5f4bc89836dae32aa17dc9fac"},{"author":{"_account_id":10206,"name":"Madhuri Kumari","email":"madhuri.kumari@intel.com","username":"Madhuri"},"change_message_id":"6f06c2f26eda226386463bcdeaa240edad569893","unresolved":false,"context_lines":[{"line_number":342,"context_line":"Backwards compatibility within Ironic is assured through RPC versions."},{"line_number":343,"context_line":"Additional care is taken to ensure out-of-tree drivers are still compatible"},{"line_number":344,"context_line":"because the code will specifically handle drivers not switched to the new"},{"line_number":345,"context_line":"mapping. Specific tests covering this part will be added. Finally,"},{"line_number":346,"context_line":"compatibility with older API clients is assured through REST API microversions."},{"line_number":347,"context_line":""},{"line_number":348,"context_line":""}],"source_content_type":"text/x-rst","patch_set":7,"id":"9f6a8fd7_e457e701","line":345,"in_reply_to":"df7087c5_281a20cb","updated":"2018-04-19 08:53:07.000000000","message":"Done","commit_id":"5695e4c941cd8bb5f4bc89836dae32aa17dc9fac"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"b287b52a01a5d5b361c238d5803997b491e5b470","unresolved":false,"context_lines":[{"line_number":342,"context_line":"Backwards compatibility within Ironic is assured through RPC versions."},{"line_number":343,"context_line":"Additional care is taken to ensure out-of-tree drivers are still compatible"},{"line_number":344,"context_line":"because the code will specifically handle drivers not switched to the new"},{"line_number":345,"context_line":"mapping. Specific tests covering this part will be added. Finally,"},{"line_number":346,"context_line":"compatibility with older API clients is assured through REST API microversions."},{"line_number":347,"context_line":""},{"line_number":348,"context_line":""}],"source_content_type":"text/x-rst","patch_set":7,"id":"df7087c5_281a20cb","line":345,"in_reply_to":"df7087c5_5e776ad5","updated":"2018-03-15 14:17:51.000000000","message":"please verify/clarify in the spec.","commit_id":"5695e4c941cd8bb5f4bc89836dae32aa17dc9fac"},{"author":{"_account_id":19593,"name":"Anup Navare","email":"anup.d.navare@intel.com","username":"anup"},"change_message_id":"b0e54456de38191fdb96028907b64e4070104761","unresolved":false,"context_lines":[{"line_number":342,"context_line":"Backwards compatibility within Ironic is assured through RPC versions."},{"line_number":343,"context_line":"Additional care is taken to ensure out-of-tree drivers are still compatible"},{"line_number":344,"context_line":"because the code will specifically handle drivers not switched to the new"},{"line_number":345,"context_line":"mapping. Specific tests covering this part will be added. Finally,"},{"line_number":346,"context_line":"compatibility with older API clients is assured through REST API microversions."},{"line_number":347,"context_line":""},{"line_number":348,"context_line":""}],"source_content_type":"text/x-rst","patch_set":7,"id":"df7087c5_5e776ad5","line":345,"in_reply_to":"df7087c5_ac2b4992","updated":"2018-03-12 22:33:22.000000000","message":"I think so here \"new mappings\" means mapping between classic drivers to associated hardware type and hardware interfaces","commit_id":"5695e4c941cd8bb5f4bc89836dae32aa17dc9fac"},{"author":{"_account_id":24828,"name":"Kaifeng Wang","email":"kaifeng.w@gmail.com","username":"wangkf"},"change_message_id":"5c59fd7174a8ae1aba9a5e7d77322fd9cc8b0b71","unresolved":false,"context_lines":[{"line_number":76,"context_line":"            :returns: the graphical console connection information."},{"line_number":77,"context_line":"            \"\"\""},{"line_number":78,"context_line":""},{"line_number":79,"context_line":"* The following new implementations of ``GraphicalConsoleInterface`` will be"},{"line_number":80,"context_line":"  created."},{"line_number":81,"context_line":""},{"line_number":82,"context_line":"  + ``ipmitool-vnc`` - For accessing graphical console using VNC."}],"source_content_type":"text/x-rst","patch_set":8,"id":"df7087c5_96334114","line":79,"range":{"start_line":79,"start_character":16,"end_line":79,"end_character":35},"updated":"2018-03-16 03:14:31.000000000","message":"Not clear for what the bullet below is, how about:\n\nhardware interfaces implemented ``GraphicalConsoleInterface``","commit_id":"0dc4b5dabb9f4286868e867818e191a8cf69065b"},{"author":{"_account_id":10206,"name":"Madhuri Kumari","email":"madhuri.kumari@intel.com","username":"Madhuri"},"change_message_id":"d841a4ad208cb3def657bb2e3894188cdbba2daa","unresolved":false,"context_lines":[{"line_number":76,"context_line":"            :returns: the graphical console connection information."},{"line_number":77,"context_line":"            \"\"\""},{"line_number":78,"context_line":""},{"line_number":79,"context_line":"* The following new implementations of ``GraphicalConsoleInterface`` will be"},{"line_number":80,"context_line":"  created."},{"line_number":81,"context_line":""},{"line_number":82,"context_line":"  + ``ipmitool-vnc`` - For accessing graphical console using VNC."}],"source_content_type":"text/x-rst","patch_set":8,"id":"9f6a8fd7_e1857a5b","line":79,"range":{"start_line":79,"start_character":16,"end_line":79,"end_character":35},"in_reply_to":"df7087c5_96334114","updated":"2018-04-24 10:11:36.000000000","message":"Done.","commit_id":"0dc4b5dabb9f4286868e867818e191a8cf69065b"},{"author":{"_account_id":24828,"name":"Kaifeng Wang","email":"kaifeng.w@gmail.com","username":"wangkf"},"change_message_id":"5c59fd7174a8ae1aba9a5e7d77322fd9cc8b0b71","unresolved":false,"context_lines":[{"line_number":79,"context_line":"* The following new implementations of ``GraphicalConsoleInterface`` will be"},{"line_number":80,"context_line":"  created."},{"line_number":81,"context_line":""},{"line_number":82,"context_line":"  + ``ipmitool-vnc`` - For accessing graphical console using VNC."},{"line_number":83,"context_line":"  + ``no-graphical-console`` - For no graphical console."},{"line_number":84,"context_line":"  + ``fake`` - For accessing fake graphical console used for testing."},{"line_number":85,"context_line":""}],"source_content_type":"text/x-rst","patch_set":8,"id":"df7087c5_f95cee19","line":82,"range":{"start_line":82,"start_character":4,"end_line":82,"end_character":19},"updated":"2018-03-16 03:14:31.000000000","message":"IIRC it\u0027s planned to implement graphic console in vbmc for gate test, is this the one?\n\nI think this feature is vendor specific, how will ipmitool-vnc provide an unified way to support all ipmi based graphic console?","commit_id":"0dc4b5dabb9f4286868e867818e191a8cf69065b"},{"author":{"_account_id":10206,"name":"Madhuri Kumari","email":"madhuri.kumari@intel.com","username":"Madhuri"},"change_message_id":"d841a4ad208cb3def657bb2e3894188cdbba2daa","unresolved":false,"context_lines":[{"line_number":79,"context_line":"* The following new implementations of ``GraphicalConsoleInterface`` will be"},{"line_number":80,"context_line":"  created."},{"line_number":81,"context_line":""},{"line_number":82,"context_line":"  + ``ipmitool-vnc`` - For accessing graphical console using VNC."},{"line_number":83,"context_line":"  + ``no-graphical-console`` - For no graphical console."},{"line_number":84,"context_line":"  + ``fake`` - For accessing fake graphical console used for testing."},{"line_number":85,"context_line":""}],"source_content_type":"text/x-rst","patch_set":8,"id":"9f6a8fd7_2ea47ab9","line":82,"range":{"start_line":82,"start_character":4,"end_line":82,"end_character":19},"in_reply_to":"df7087c5_f95cee19","updated":"2018-04-24 10:11:36.000000000","message":"Yes there\u0027s a plan to add support for the graphical console in vbmc. I will add a TODO to mention it.\nThis implementation is for all IPMI based hardware type. The current solution is only for hardware that supports inbuilt VNC server. For all other servers, we would need to create a container image with x11-server+vendor-specific-client to provide the graphical console.","commit_id":"0dc4b5dabb9f4286868e867818e191a8cf69065b"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"b287b52a01a5d5b361c238d5803997b491e5b470","unresolved":false,"context_lines":[{"line_number":85,"context_line":""},{"line_number":86,"context_line":"* Each driver will mention what is the ``GraphicalConsoleInterface``"},{"line_number":87,"context_line":"  implementation that it wishes to instantiate. For example, the"},{"line_number":88,"context_line":"  ``agent_ipmitool`` driver will look like the following::"},{"line_number":89,"context_line":""},{"line_number":90,"context_line":"    class AgentAndIPMIToolDriver(base.BaseDriver):"},{"line_number":91,"context_line":"        \"\"\"Agent + IPMITool driver."}],"source_content_type":"text/x-rst","patch_set":8,"id":"df7087c5_684ed838","line":88,"updated":"2018-03-15 14:17:51.000000000","message":"From PS 7: \n \u003e we\u0027ve deprecated the classic drivers. No more changes can be made\n \u003e to those so graphical consoles will not be available for them.\n\nYou need to revise L86 to L118 as I mentioned before.","commit_id":"0dc4b5dabb9f4286868e867818e191a8cf69065b"},{"author":{"_account_id":10206,"name":"Madhuri Kumari","email":"madhuri.kumari@intel.com","username":"Madhuri"},"change_message_id":"d841a4ad208cb3def657bb2e3894188cdbba2daa","unresolved":false,"context_lines":[{"line_number":85,"context_line":""},{"line_number":86,"context_line":"* Each driver will mention what is the ``GraphicalConsoleInterface``"},{"line_number":87,"context_line":"  implementation that it wishes to instantiate. For example, the"},{"line_number":88,"context_line":"  ``agent_ipmitool`` driver will look like the following::"},{"line_number":89,"context_line":""},{"line_number":90,"context_line":"    class AgentAndIPMIToolDriver(base.BaseDriver):"},{"line_number":91,"context_line":"        \"\"\"Agent + IPMITool driver."}],"source_content_type":"text/x-rst","patch_set":8,"id":"9f6a8fd7_01d98e7d","line":88,"in_reply_to":"df7087c5_684ed838","updated":"2018-04-24 10:11:36.000000000","message":"Done in PS9","commit_id":"0dc4b5dabb9f4286868e867818e191a8cf69065b"},{"author":{"_account_id":13689,"name":"Hironori Shiina","email":"Hironori.Shiina@fujitsu.com","username":"shiina"},"change_message_id":"12a4a609515eeec9f9fc7551d5838521f75cf6c9","unresolved":false,"context_lines":[{"line_number":118,"context_line":"                                graphical_console\u003d\u0027vnc\u0027)"},{"line_number":119,"context_line":""},{"line_number":120,"context_line":"* New config options will be introduced for this interface which are as"},{"line_number":121,"context_line":"  follows:"},{"line_number":122,"context_line":"  + ``[DEFAULT]enabled_graphical_console_interfaces`` -  This config option"},{"line_number":123,"context_line":"    represents the list of enabled graphical console interfaces in ironic."},{"line_number":124,"context_line":"    The default value is ``[\u0027no-graphical-console\u0027]``."}],"source_content_type":"text/x-rst","patch_set":8,"id":"df7087c5_ce3e1ac0","line":121,"updated":"2018-03-15 08:27:47.000000000","message":"A blank line is necessary.","commit_id":"0dc4b5dabb9f4286868e867818e191a8cf69065b"},{"author":{"_account_id":10206,"name":"Madhuri Kumari","email":"madhuri.kumari@intel.com","username":"Madhuri"},"change_message_id":"d841a4ad208cb3def657bb2e3894188cdbba2daa","unresolved":false,"context_lines":[{"line_number":118,"context_line":"                                graphical_console\u003d\u0027vnc\u0027)"},{"line_number":119,"context_line":""},{"line_number":120,"context_line":"* New config options will be introduced for this interface which are as"},{"line_number":121,"context_line":"  follows:"},{"line_number":122,"context_line":"  + ``[DEFAULT]enabled_graphical_console_interfaces`` -  This config option"},{"line_number":123,"context_line":"    represents the list of enabled graphical console interfaces in ironic."},{"line_number":124,"context_line":"    The default value is ``[\u0027no-graphical-console\u0027]``."}],"source_content_type":"text/x-rst","patch_set":8,"id":"9f6a8fd7_61c72a98","line":121,"in_reply_to":"df7087c5_428ba4c1","updated":"2018-04-24 10:11:36.000000000","message":"Done","commit_id":"0dc4b5dabb9f4286868e867818e191a8cf69065b"},{"author":{"_account_id":19593,"name":"Anup Navare","email":"anup.d.navare@intel.com","username":"anup"},"change_message_id":"23ebdf44cc3c9a968d8b33bbd356ebfcdd8ae52a","unresolved":false,"context_lines":[{"line_number":118,"context_line":"                                graphical_console\u003d\u0027vnc\u0027)"},{"line_number":119,"context_line":""},{"line_number":120,"context_line":"* New config options will be introduced for this interface which are as"},{"line_number":121,"context_line":"  follows:"},{"line_number":122,"context_line":"  + ``[DEFAULT]enabled_graphical_console_interfaces`` -  This config option"},{"line_number":123,"context_line":"    represents the list of enabled graphical console interfaces in ironic."},{"line_number":124,"context_line":"    The default value is ``[\u0027no-graphical-console\u0027]``."}],"source_content_type":"text/x-rst","patch_set":8,"id":"df7087c5_428ba4c1","line":121,"in_reply_to":"df7087c5_ce3e1ac0","updated":"2018-03-16 01:46:56.000000000","message":"Yes i noticed that. Because of that linters test is failing. You will see it in next PS","commit_id":"0dc4b5dabb9f4286868e867818e191a8cf69065b"},{"author":{"_account_id":24828,"name":"Kaifeng Wang","email":"kaifeng.w@gmail.com","username":"wangkf"},"change_message_id":"5c59fd7174a8ae1aba9a5e7d77322fd9cc8b0b71","unresolved":false,"context_lines":[{"line_number":130,"context_line":"* A new ``console_type`` parameter will be added to the console APIs. This"},{"line_number":131,"context_line":"  parameter defines which type of console the Ironic users want to access."},{"line_number":132,"context_line":"  The default value will be ``serial``. The possible values are as follows:"},{"line_number":133,"context_line":""},{"line_number":134,"context_line":"  + ``serial`` - For accessing the serial console."},{"line_number":135,"context_line":"  + ``graphical`` - For accessing graphical console using VNC protocol."},{"line_number":136,"context_line":""}],"source_content_type":"text/x-rst","patch_set":8,"id":"df7087c5_b93c3693","line":133,"updated":"2018-03-16 03:14:31.000000000","message":"I\u0027m a bit confused here, GraphicConsoleInterface is implemented in a hardware interface, how it relates to current serial console interfaces, and why would we need this parameter to differentiate console types?","commit_id":"0dc4b5dabb9f4286868e867818e191a8cf69065b"},{"author":{"_account_id":10206,"name":"Madhuri Kumari","email":"madhuri.kumari@intel.com","username":"Madhuri"},"change_message_id":"d841a4ad208cb3def657bb2e3894188cdbba2daa","unresolved":false,"context_lines":[{"line_number":130,"context_line":"* A new ``console_type`` parameter will be added to the console APIs. This"},{"line_number":131,"context_line":"  parameter defines which type of console the Ironic users want to access."},{"line_number":132,"context_line":"  The default value will be ``serial``. The possible values are as follows:"},{"line_number":133,"context_line":""},{"line_number":134,"context_line":"  + ``serial`` - For accessing the serial console."},{"line_number":135,"context_line":"  + ``graphical`` - For accessing graphical console using VNC protocol."},{"line_number":136,"context_line":""}],"source_content_type":"text/x-rst","patch_set":8,"id":"9f6a8fd7_8e4ee635","line":133,"in_reply_to":"df7087c5_b93c3693","updated":"2018-04-24 10:11:36.000000000","message":"We are reusing the same console API to provide different types of consoles, serial or graphical. The type of console requested by user will be provided in \u0027console_type\u0027 parameter.","commit_id":"0dc4b5dabb9f4286868e867818e191a8cf69065b"},{"author":{"_account_id":24828,"name":"Kaifeng Wang","email":"kaifeng.w@gmail.com","username":"wangkf"},"change_message_id":"5c59fd7174a8ae1aba9a5e7d77322fd9cc8b0b71","unresolved":false,"context_lines":[{"line_number":134,"context_line":"  + ``serial`` - For accessing the serial console."},{"line_number":135,"context_line":"  + ``graphical`` - For accessing graphical console using VNC protocol."},{"line_number":136,"context_line":""},{"line_number":137,"context_line":"  The list of APIs that will be changed to include this parameter are:"},{"line_number":138,"context_line":""},{"line_number":139,"context_line":"  + ``GET /v1/nodes/{node_ident}/states/console`` and"},{"line_number":140,"context_line":"    ``PUT /v1/nodes/{node_ident}/states/console``. They are described in"}],"source_content_type":"text/x-rst","patch_set":8,"id":"df7087c5_b96516b7","line":137,"range":{"start_line":137,"start_character":0,"end_line":137,"end_character":2},"updated":"2018-03-16 03:14:31.000000000","message":"I guess you missed a bullet here.","commit_id":"0dc4b5dabb9f4286868e867818e191a8cf69065b"},{"author":{"_account_id":10206,"name":"Madhuri Kumari","email":"madhuri.kumari@intel.com","username":"Madhuri"},"change_message_id":"d841a4ad208cb3def657bb2e3894188cdbba2daa","unresolved":false,"context_lines":[{"line_number":134,"context_line":"  + ``serial`` - For accessing the serial console."},{"line_number":135,"context_line":"  + ``graphical`` - For accessing graphical console using VNC protocol."},{"line_number":136,"context_line":""},{"line_number":137,"context_line":"  The list of APIs that will be changed to include this parameter are:"},{"line_number":138,"context_line":""},{"line_number":139,"context_line":"  + ``GET /v1/nodes/{node_ident}/states/console`` and"},{"line_number":140,"context_line":"    ``PUT /v1/nodes/{node_ident}/states/console``. They are described in"}],"source_content_type":"text/x-rst","patch_set":8,"id":"9f6a8fd7_4e668ec3","line":137,"range":{"start_line":137,"start_character":0,"end_line":137,"end_character":2},"in_reply_to":"df7087c5_b96516b7","updated":"2018-04-24 10:11:36.000000000","message":"Removed in PS9","commit_id":"0dc4b5dabb9f4286868e867818e191a8cf69065b"},{"author":{"_account_id":13689,"name":"Hironori Shiina","email":"Hironori.Shiina@fujitsu.com","username":"shiina"},"change_message_id":"12a4a609515eeec9f9fc7551d5838521f75cf6c9","unresolved":false,"context_lines":[{"line_number":138,"context_line":""},{"line_number":139,"context_line":"  + ``GET /v1/nodes/{node_ident}/states/console`` and"},{"line_number":140,"context_line":"    ``PUT /v1/nodes/{node_ident}/states/console``. They are described in"},{"line_number":141,"context_line":"    here [REST_API_IMPACT]_."},{"line_number":142,"context_line":""},{"line_number":143,"context_line":"* Two new fields ``graphical_console_interface`` and"},{"line_number":144,"context_line":"  ``graphical_console_enabled`` will be added to the Node object that"}],"source_content_type":"text/x-rst","patch_set":8,"id":"df7087c5_c94db43e","line":141,"range":{"start_line":141,"start_character":9,"end_line":141,"end_character":27},"updated":"2018-03-15 08:27:47.000000000","message":"An internal link seems better like: `REST API impact`_ .","commit_id":"0dc4b5dabb9f4286868e867818e191a8cf69065b"},{"author":{"_account_id":10206,"name":"Madhuri Kumari","email":"madhuri.kumari@intel.com","username":"Madhuri"},"change_message_id":"d841a4ad208cb3def657bb2e3894188cdbba2daa","unresolved":false,"context_lines":[{"line_number":138,"context_line":""},{"line_number":139,"context_line":"  + ``GET /v1/nodes/{node_ident}/states/console`` and"},{"line_number":140,"context_line":"    ``PUT /v1/nodes/{node_ident}/states/console``. They are described in"},{"line_number":141,"context_line":"    here [REST_API_IMPACT]_."},{"line_number":142,"context_line":""},{"line_number":143,"context_line":"* Two new fields ``graphical_console_interface`` and"},{"line_number":144,"context_line":"  ``graphical_console_enabled`` will be added to the Node object that"}],"source_content_type":"text/x-rst","patch_set":8,"id":"9f6a8fd7_aeb16a49","line":141,"range":{"start_line":141,"start_character":9,"end_line":141,"end_character":27},"in_reply_to":"df7087c5_02912cf1","updated":"2018-04-24 10:11:36.000000000","message":"I have removed this section and moved to the rest API impact itself in PS9","commit_id":"0dc4b5dabb9f4286868e867818e191a8cf69065b"},{"author":{"_account_id":19593,"name":"Anup Navare","email":"anup.d.navare@intel.com","username":"anup"},"change_message_id":"23ebdf44cc3c9a968d8b33bbd356ebfcdd8ae52a","unresolved":false,"context_lines":[{"line_number":138,"context_line":""},{"line_number":139,"context_line":"  + ``GET /v1/nodes/{node_ident}/states/console`` and"},{"line_number":140,"context_line":"    ``PUT /v1/nodes/{node_ident}/states/console``. They are described in"},{"line_number":141,"context_line":"    here [REST_API_IMPACT]_."},{"line_number":142,"context_line":""},{"line_number":143,"context_line":"* Two new fields ``graphical_console_interface`` and"},{"line_number":144,"context_line":"  ``graphical_console_enabled`` will be added to the Node object that"}],"source_content_type":"text/x-rst","patch_set":8,"id":"df7087c5_02912cf1","line":141,"range":{"start_line":141,"start_character":9,"end_line":141,"end_character":27},"in_reply_to":"df7087c5_c94db43e","updated":"2018-03-16 01:46:56.000000000","message":"Sure will change it.","commit_id":"0dc4b5dabb9f4286868e867818e191a8cf69065b"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"b287b52a01a5d5b361c238d5803997b491e5b470","unresolved":false,"context_lines":[{"line_number":143,"context_line":"* Two new fields ``graphical_console_interface`` and"},{"line_number":144,"context_line":"  ``graphical_console_enabled`` will be added to the Node object that"},{"line_number":145,"context_line":"  represents the supported graphical console interface and whether graphical"},{"line_number":146,"context_line":"  console is supported for the node or not respectively."},{"line_number":147,"context_line":""},{"line_number":148,"context_line":"Alternatives"},{"line_number":149,"context_line":"------------"}],"source_content_type":"text/x-rst","patch_set":8,"id":"df7087c5_68ea58d8","line":146,"updated":"2018-03-15 14:17:51.000000000","message":"You didn\u0027t address my comment from PS 7","commit_id":"0dc4b5dabb9f4286868e867818e191a8cf69065b"},{"author":{"_account_id":19593,"name":"Anup Navare","email":"anup.d.navare@intel.com","username":"anup"},"change_message_id":"23ebdf44cc3c9a968d8b33bbd356ebfcdd8ae52a","unresolved":false,"context_lines":[{"line_number":143,"context_line":"* Two new fields ``graphical_console_interface`` and"},{"line_number":144,"context_line":"  ``graphical_console_enabled`` will be added to the Node object that"},{"line_number":145,"context_line":"  represents the supported graphical console interface and whether graphical"},{"line_number":146,"context_line":"  console is supported for the node or not respectively."},{"line_number":147,"context_line":""},{"line_number":148,"context_line":"Alternatives"},{"line_number":149,"context_line":"------------"}],"source_content_type":"text/x-rst","patch_set":8,"id":"df7087c5_c21c9479","line":146,"in_reply_to":"df7087c5_68ea58d8","updated":"2018-03-16 01:46:56.000000000","message":"Replied in PS 7","commit_id":"0dc4b5dabb9f4286868e867818e191a8cf69065b"},{"author":{"_account_id":10206,"name":"Madhuri Kumari","email":"madhuri.kumari@intel.com","username":"Madhuri"},"change_message_id":"d841a4ad208cb3def657bb2e3894188cdbba2daa","unresolved":false,"context_lines":[{"line_number":143,"context_line":"* Two new fields ``graphical_console_interface`` and"},{"line_number":144,"context_line":"  ``graphical_console_enabled`` will be added to the Node object that"},{"line_number":145,"context_line":"  represents the supported graphical console interface and whether graphical"},{"line_number":146,"context_line":"  console is supported for the node or not respectively."},{"line_number":147,"context_line":""},{"line_number":148,"context_line":"Alternatives"},{"line_number":149,"context_line":"------------"}],"source_content_type":"text/x-rst","patch_set":8,"id":"9f6a8fd7_2e023a0b","line":146,"in_reply_to":"df7087c5_c21c9479","updated":"2018-04-24 10:11:36.000000000","message":"Done in PS9","commit_id":"0dc4b5dabb9f4286868e867818e191a8cf69065b"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"b287b52a01a5d5b361c238d5803997b491e5b470","unresolved":false,"context_lines":[{"line_number":160,"context_line":"Data model impact"},{"line_number":161,"context_line":"-----------------"},{"line_number":162,"context_line":""},{"line_number":163,"context_line":"- A new node field ``graphical_console_enabled``, during upgrade/conversion"},{"line_number":164,"context_line":"  will be populated from ``default_graphical_console_interface`` config option"},{"line_number":165,"context_line":"  (``noop`` by default)."},{"line_number":166,"context_line":"- new node field ``graphical_console_interface`` will be added."}],"source_content_type":"text/x-rst","patch_set":8,"id":"df7087c5_6871f843","line":163,"updated":"2018-03-15 14:17:51.000000000","message":"This entire section doesn\u0027t make sense to me. I think it is because I don\u0027t understand what \u0027graphical_console_enabled\u0027 is. Or maybe I\u0027m not sure I agree with your definition -- which isn\u0027t clear to me.","commit_id":"0dc4b5dabb9f4286868e867818e191a8cf69065b"},{"author":{"_account_id":24828,"name":"Kaifeng Wang","email":"kaifeng.w@gmail.com","username":"wangkf"},"change_message_id":"5c59fd7174a8ae1aba9a5e7d77322fd9cc8b0b71","unresolved":false,"context_lines":[{"line_number":160,"context_line":"Data model impact"},{"line_number":161,"context_line":"-----------------"},{"line_number":162,"context_line":""},{"line_number":163,"context_line":"- A new node field ``graphical_console_enabled``, during upgrade/conversion"},{"line_number":164,"context_line":"  will be populated from ``default_graphical_console_interface`` config option"},{"line_number":165,"context_line":"  (``noop`` by default)."},{"line_number":166,"context_line":"- new node field ``graphical_console_interface`` will be added."}],"source_content_type":"text/x-rst","patch_set":8,"id":"df7087c5_79b77ef6","line":163,"in_reply_to":"df7087c5_6871f843","updated":"2018-03-16 03:14:31.000000000","message":"Agreed, needs to clarify","commit_id":"0dc4b5dabb9f4286868e867818e191a8cf69065b"},{"author":{"_account_id":10206,"name":"Madhuri Kumari","email":"madhuri.kumari@intel.com","username":"Madhuri"},"change_message_id":"d841a4ad208cb3def657bb2e3894188cdbba2daa","unresolved":false,"context_lines":[{"line_number":160,"context_line":"Data model impact"},{"line_number":161,"context_line":"-----------------"},{"line_number":162,"context_line":""},{"line_number":163,"context_line":"- A new node field ``graphical_console_enabled``, during upgrade/conversion"},{"line_number":164,"context_line":"  will be populated from ``default_graphical_console_interface`` config option"},{"line_number":165,"context_line":"  (``noop`` by default)."},{"line_number":166,"context_line":"- new node field ``graphical_console_interface`` will be added."}],"source_content_type":"text/x-rst","patch_set":8,"id":"9f6a8fd7_fb12c261","line":163,"in_reply_to":"df7087c5_79b77ef6","updated":"2018-04-24 10:11:36.000000000","message":"Updated in PS9","commit_id":"0dc4b5dabb9f4286868e867818e191a8cf69065b"},{"author":{"_account_id":13689,"name":"Hironori Shiina","email":"Hironori.Shiina@fujitsu.com","username":"shiina"},"change_message_id":"12a4a609515eeec9f9fc7551d5838521f75cf6c9","unresolved":false,"context_lines":[{"line_number":162,"context_line":""},{"line_number":163,"context_line":"- A new node field ``graphical_console_enabled``, during upgrade/conversion"},{"line_number":164,"context_line":"  will be populated from ``default_graphical_console_interface`` config option"},{"line_number":165,"context_line":"  (``noop`` by default)."},{"line_number":166,"context_line":"- new node field ``graphical_console_interface`` will be added."},{"line_number":167,"context_line":""},{"line_number":168,"context_line":"State Machine Impact"}],"source_content_type":"text/x-rst","patch_set":8,"id":"df7087c5_299b1066","line":165,"range":{"start_line":165,"start_character":5,"end_line":165,"end_character":9},"updated":"2018-03-15 08:27:47.000000000","message":"nit: no-graphical-console?","commit_id":"0dc4b5dabb9f4286868e867818e191a8cf69065b"},{"author":{"_account_id":19593,"name":"Anup Navare","email":"anup.d.navare@intel.com","username":"anup"},"change_message_id":"23ebdf44cc3c9a968d8b33bbd356ebfcdd8ae52a","unresolved":false,"context_lines":[{"line_number":162,"context_line":""},{"line_number":163,"context_line":"- A new node field ``graphical_console_enabled``, during upgrade/conversion"},{"line_number":164,"context_line":"  will be populated from ``default_graphical_console_interface`` config option"},{"line_number":165,"context_line":"  (``noop`` by default)."},{"line_number":166,"context_line":"- new node field ``graphical_console_interface`` will be added."},{"line_number":167,"context_line":""},{"line_number":168,"context_line":"State Machine Impact"}],"source_content_type":"text/x-rst","patch_set":8,"id":"df7087c5_e21f5869","line":165,"range":{"start_line":165,"start_character":5,"end_line":165,"end_character":9},"in_reply_to":"df7087c5_299b1066","updated":"2018-03-16 01:46:56.000000000","message":"Yes you are right","commit_id":"0dc4b5dabb9f4286868e867818e191a8cf69065b"},{"author":{"_account_id":10206,"name":"Madhuri Kumari","email":"madhuri.kumari@intel.com","username":"Madhuri"},"change_message_id":"d841a4ad208cb3def657bb2e3894188cdbba2daa","unresolved":false,"context_lines":[{"line_number":162,"context_line":""},{"line_number":163,"context_line":"- A new node field ``graphical_console_enabled``, during upgrade/conversion"},{"line_number":164,"context_line":"  will be populated from ``default_graphical_console_interface`` config option"},{"line_number":165,"context_line":"  (``noop`` by default)."},{"line_number":166,"context_line":"- new node field ``graphical_console_interface`` will be added."},{"line_number":167,"context_line":""},{"line_number":168,"context_line":"State Machine Impact"}],"source_content_type":"text/x-rst","patch_set":8,"id":"9f6a8fd7_7b58f254","line":165,"range":{"start_line":165,"start_character":5,"end_line":165,"end_character":9},"in_reply_to":"df7087c5_e21f5869","updated":"2018-04-24 10:11:36.000000000","message":"Done","commit_id":"0dc4b5dabb9f4286868e867818e191a8cf69065b"},{"author":{"_account_id":13689,"name":"Hironori Shiina","email":"Hironori.Shiina@fujitsu.com","username":"shiina"},"change_message_id":"12a4a609515eeec9f9fc7551d5838521f75cf6c9","unresolved":false,"context_lines":[{"line_number":183,"context_line":"Example::"},{"line_number":184,"context_line":""},{"line_number":185,"context_line":"    GET /v1/nodes/{node_ident}/states/console?console_type\u003dgraphical"},{"line_number":186,"context_line":""},{"line_number":187,"context_line":"The response would be same as the console interface. A new 400 HTTP response"},{"line_number":188,"context_line":"will be returned if user provides a invalid ``console_type``."},{"line_number":189,"context_line":""}],"source_content_type":"text/x-rst","patch_set":8,"id":"df7087c5_09aacc83","line":186,"updated":"2018-03-15 08:27:47.000000000","message":"Will PUT method also accept this query string? It seems that there is no API with PUT and query string in Ironic. (I just asked, I\u0027m not familiar with Rest API.)","commit_id":"0dc4b5dabb9f4286868e867818e191a8cf69065b"},{"author":{"_account_id":10206,"name":"Madhuri Kumari","email":"madhuri.kumari@intel.com","username":"Madhuri"},"change_message_id":"d841a4ad208cb3def657bb2e3894188cdbba2daa","unresolved":false,"context_lines":[{"line_number":183,"context_line":"Example::"},{"line_number":184,"context_line":""},{"line_number":185,"context_line":"    GET /v1/nodes/{node_ident}/states/console?console_type\u003dgraphical"},{"line_number":186,"context_line":""},{"line_number":187,"context_line":"The response would be same as the console interface. A new 400 HTTP response"},{"line_number":188,"context_line":"will be returned if user provides a invalid ``console_type``."},{"line_number":189,"context_line":""}],"source_content_type":"text/x-rst","patch_set":8,"id":"9f6a8fd7_7b7f92aa","line":186,"in_reply_to":"df7087c5_09aacc83","updated":"2018-04-24 10:11:36.000000000","message":"PUT will accept a body in the request like::\n\n{\n    \"host\": \"host1\",\n    \"binary\": \"ironic-conductor\"\n}","commit_id":"0dc4b5dabb9f4286868e867818e191a8cf69065b"},{"author":{"_account_id":13689,"name":"Hironori Shiina","email":"Hironori.Shiina@fujitsu.com","username":"shiina"},"change_message_id":"12a4a609515eeec9f9fc7551d5838521f75cf6c9","unresolved":false,"context_lines":[{"line_number":193,"context_line":"Client (CLI) impact"},{"line_number":194,"context_line":"-------------------"},{"line_number":195,"context_line":""},{"line_number":196,"context_line":"* A new option will be added to OSC command"},{"line_number":197,"context_line":"  ``openstack baremetal node console enable`` and"},{"line_number":198,"context_line":"  ``openstack baremetal node console disable``."},{"line_number":199,"context_line":""}],"source_content_type":"text/x-rst","patch_set":8,"id":"df7087c5_0ee9727e","line":196,"range":{"start_line":196,"start_character":4,"end_line":196,"end_character":14},"updated":"2018-03-15 08:27:47.000000000","message":"Is the option name \u0027--type\u0027?","commit_id":"0dc4b5dabb9f4286868e867818e191a8cf69065b"},{"author":{"_account_id":19593,"name":"Anup Navare","email":"anup.d.navare@intel.com","username":"anup"},"change_message_id":"23ebdf44cc3c9a968d8b33bbd356ebfcdd8ae52a","unresolved":false,"context_lines":[{"line_number":193,"context_line":"Client (CLI) impact"},{"line_number":194,"context_line":"-------------------"},{"line_number":195,"context_line":""},{"line_number":196,"context_line":"* A new option will be added to OSC command"},{"line_number":197,"context_line":"  ``openstack baremetal node console enable`` and"},{"line_number":198,"context_line":"  ``openstack baremetal node console disable``."},{"line_number":199,"context_line":""}],"source_content_type":"text/x-rst","patch_set":8,"id":"df7087c5_16765171","line":196,"range":{"start_line":196,"start_character":4,"end_line":196,"end_character":14},"in_reply_to":"df7087c5_0ee9727e","updated":"2018-03-16 01:46:56.000000000","message":"Yes it is \u0027--type\u0027. I will add that here.","commit_id":"0dc4b5dabb9f4286868e867818e191a8cf69065b"},{"author":{"_account_id":10206,"name":"Madhuri Kumari","email":"madhuri.kumari@intel.com","username":"Madhuri"},"change_message_id":"d841a4ad208cb3def657bb2e3894188cdbba2daa","unresolved":false,"context_lines":[{"line_number":193,"context_line":"Client (CLI) impact"},{"line_number":194,"context_line":"-------------------"},{"line_number":195,"context_line":""},{"line_number":196,"context_line":"* A new option will be added to OSC command"},{"line_number":197,"context_line":"  ``openstack baremetal node console enable`` and"},{"line_number":198,"context_line":"  ``openstack baremetal node console disable``."},{"line_number":199,"context_line":""}],"source_content_type":"text/x-rst","patch_set":8,"id":"9f6a8fd7_81f7ded3","line":196,"range":{"start_line":196,"start_character":4,"end_line":196,"end_character":14},"in_reply_to":"df7087c5_16765171","updated":"2018-04-24 10:11:36.000000000","message":"Done","commit_id":"0dc4b5dabb9f4286868e867818e191a8cf69065b"},{"author":{"_account_id":13689,"name":"Hironori Shiina","email":"Hironori.Shiina@fujitsu.com","username":"shiina"},"change_message_id":"12a4a609515eeec9f9fc7551d5838521f75cf6c9","unresolved":false,"context_lines":[{"line_number":226,"context_line":"Essentially, the Ironic virt driver will have to implement ``get_vnc_console``"},{"line_number":227,"context_line":"and call Ironic\u0027s get/set-console-mode with the ``graphical`` type."},{"line_number":228,"context_line":""},{"line_number":229,"context_line":"As per policy in Nova, changes cannot land until ironic and python-ironicclient"},{"line_number":230,"context_line":"changes have landed. The changes on the Nova side are fairly straightforward."},{"line_number":231,"context_line":""},{"line_number":232,"context_line":""}],"source_content_type":"text/x-rst","patch_set":8,"id":"df7087c5_c9437441","line":229,"range":{"start_line":229,"start_character":56,"end_line":229,"end_character":79},"updated":"2018-03-15 08:27:47.000000000","message":"note: ironicclient will get unnecessary during Rocky[1].\n\n[1] https://review.openstack.org/#/c/550174/5/priorities/rocky-priorities.rst@137","commit_id":"0dc4b5dabb9f4286868e867818e191a8cf69065b"},{"author":{"_account_id":10206,"name":"Madhuri Kumari","email":"madhuri.kumari@intel.com","username":"Madhuri"},"change_message_id":"d841a4ad208cb3def657bb2e3894188cdbba2daa","unresolved":false,"context_lines":[{"line_number":226,"context_line":"Essentially, the Ironic virt driver will have to implement ``get_vnc_console``"},{"line_number":227,"context_line":"and call Ironic\u0027s get/set-console-mode with the ``graphical`` type."},{"line_number":228,"context_line":""},{"line_number":229,"context_line":"As per policy in Nova, changes cannot land until ironic and python-ironicclient"},{"line_number":230,"context_line":"changes have landed. The changes on the Nova side are fairly straightforward."},{"line_number":231,"context_line":""},{"line_number":232,"context_line":""}],"source_content_type":"text/x-rst","patch_set":8,"id":"9f6a8fd7_010c2eeb","line":229,"range":{"start_line":229,"start_character":56,"end_line":229,"end_character":79},"in_reply_to":"df7087c5_88fc8c70","updated":"2018-04-24 10:11:36.000000000","message":"Thanks Ruby!","commit_id":"0dc4b5dabb9f4286868e867818e191a8cf69065b"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"b287b52a01a5d5b361c238d5803997b491e5b470","unresolved":false,"context_lines":[{"line_number":226,"context_line":"Essentially, the Ironic virt driver will have to implement ``get_vnc_console``"},{"line_number":227,"context_line":"and call Ironic\u0027s get/set-console-mode with the ``graphical`` type."},{"line_number":228,"context_line":""},{"line_number":229,"context_line":"As per policy in Nova, changes cannot land until ironic and python-ironicclient"},{"line_number":230,"context_line":"changes have landed. The changes on the Nova side are fairly straightforward."},{"line_number":231,"context_line":""},{"line_number":232,"context_line":""}],"source_content_type":"text/x-rst","patch_set":8,"id":"df7087c5_88fc8c70","line":229,"range":{"start_line":229,"start_character":56,"end_line":229,"end_character":79},"in_reply_to":"df7087c5_c9437441","updated":"2018-03-15 14:17:51.000000000","message":"True, but we don\u0027t know when that may happen. For now, it needs the client :)","commit_id":"0dc4b5dabb9f4286868e867818e191a8cf69065b"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"b287b52a01a5d5b361c238d5803997b491e5b470","unresolved":false,"context_lines":[{"line_number":256,"context_line":"Scalability impact"},{"line_number":257,"context_line":"------------------"},{"line_number":258,"context_line":""},{"line_number":259,"context_line":"None."},{"line_number":260,"context_line":""},{"line_number":261,"context_line":""},{"line_number":262,"context_line":"Performance Impact"}],"source_content_type":"text/x-rst","patch_set":8,"id":"df7087c5_68ed78b5","line":259,"updated":"2018-03-15 14:17:51.000000000","message":"please address my comment from previous PS.","commit_id":"0dc4b5dabb9f4286868e867818e191a8cf69065b"},{"author":{"_account_id":10206,"name":"Madhuri Kumari","email":"madhuri.kumari@intel.com","username":"Madhuri"},"change_message_id":"d841a4ad208cb3def657bb2e3894188cdbba2daa","unresolved":false,"context_lines":[{"line_number":256,"context_line":"Scalability impact"},{"line_number":257,"context_line":"------------------"},{"line_number":258,"context_line":""},{"line_number":259,"context_line":"None."},{"line_number":260,"context_line":""},{"line_number":261,"context_line":""},{"line_number":262,"context_line":"Performance Impact"}],"source_content_type":"text/x-rst","patch_set":8,"id":"9f6a8fd7_414f8633","line":259,"in_reply_to":"df7087c5_68ed78b5","updated":"2018-04-24 10:11:36.000000000","message":"Done in PS9","commit_id":"0dc4b5dabb9f4286868e867818e191a8cf69065b"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"febda3fa723ace7d834edcd4e8bac30849eda9b2","unresolved":false,"context_lines":[{"line_number":83,"context_line":"  + ``no-graphical-console`` - For no graphical console."},{"line_number":84,"context_line":"  + ``fake`` - For accessing fake graphical console used for testing."},{"line_number":85,"context_line":""},{"line_number":86,"context_line":"* Since the classic drivers are deprecated, the graphical console support"},{"line_number":87,"context_line":"  will not be available for them. The interface will be set to"},{"line_number":88,"context_line":"  ``NoGraphicalConsole``."},{"line_number":89,"context_line":""},{"line_number":90,"context_line":"* New config options will be introduced for this interface which are as"},{"line_number":91,"context_line":"  follows:"}],"source_content_type":"text/x-rst","patch_set":10,"id":"5f7c97a3_5cff31aa","line":88,"range":{"start_line":86,"start_character":0,"end_line":88,"end_character":25},"updated":"2018-06-12 15:21:09.000000000","message":"nit: Seems like this is not needed since we will hopefully be removing classical drivers before getting started on this work.","commit_id":"ce512d95fa78a26b8ad635ecacf26cd2e9911c90"},{"author":{"_account_id":10206,"name":"Madhuri Kumari","email":"madhuri.kumari@intel.com","username":"Madhuri"},"change_message_id":"a7519127aa2a23b039ca2f866916bd438c440479","unresolved":false,"context_lines":[{"line_number":83,"context_line":"  + ``no-graphical-console`` - For no graphical console."},{"line_number":84,"context_line":"  + ``fake`` - For accessing fake graphical console used for testing."},{"line_number":85,"context_line":""},{"line_number":86,"context_line":"* Since the classic drivers are deprecated, the graphical console support"},{"line_number":87,"context_line":"  will not be available for them. The interface will be set to"},{"line_number":88,"context_line":"  ``NoGraphicalConsole``."},{"line_number":89,"context_line":""},{"line_number":90,"context_line":"* New config options will be introduced for this interface which are as"},{"line_number":91,"context_line":"  follows:"}],"source_content_type":"text/x-rst","patch_set":10,"id":"5f7c97a3_8db52735","line":88,"range":{"start_line":86,"start_character":0,"end_line":88,"end_character":25},"in_reply_to":"5f7c97a3_5cff31aa","updated":"2018-06-18 07:36:34.000000000","message":"Removed.","commit_id":"ce512d95fa78a26b8ad635ecacf26cd2e9911c90"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"febda3fa723ace7d834edcd4e8bac30849eda9b2","unresolved":false,"context_lines":[{"line_number":207,"context_line":"---------------"},{"line_number":208,"context_line":""},{"line_number":209,"context_line":"* The VNC connection to the nodes are secured by a token generated while"},{"line_number":210,"context_line":"  creating the console in Nova."},{"line_number":211,"context_line":""},{"line_number":212,"context_line":"  .. note:"},{"line_number":213,"context_line":"    Need to check how this will work in standalone Ironic deployment."}],"source_content_type":"text/x-rst","patch_set":10,"id":"5f7c97a3_dcb26106","line":210,"updated":"2018-06-12 15:21:09.000000000","message":"But this is with the vnc proxy? In the ironic case, we would just be returning the url and a standalone user could directly connect then. I think that is a caveat we should explicitly document here, but I don\u0027t think that is blocking.","commit_id":"ce512d95fa78a26b8ad635ecacf26cd2e9911c90"},{"author":{"_account_id":10206,"name":"Madhuri Kumari","email":"madhuri.kumari@intel.com","username":"Madhuri"},"change_message_id":"a7519127aa2a23b039ca2f866916bd438c440479","unresolved":false,"context_lines":[{"line_number":207,"context_line":"---------------"},{"line_number":208,"context_line":""},{"line_number":209,"context_line":"* The VNC connection to the nodes are secured by a token generated while"},{"line_number":210,"context_line":"  creating the console in Nova."},{"line_number":211,"context_line":""},{"line_number":212,"context_line":"  .. note:"},{"line_number":213,"context_line":"    Need to check how this will work in standalone Ironic deployment."}],"source_content_type":"text/x-rst","patch_set":10,"id":"5f7c97a3_4d2b8f32","line":210,"in_reply_to":"5f7c97a3_dcb26106","updated":"2018-06-18 07:36:34.000000000","message":"Yes, this is with Nova VNC proxy. With Ironic, it will work the same way as the existing serial console.\nUpdated the spec to include this.","commit_id":"ce512d95fa78a26b8ad635ecacf26cd2e9911c90"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"febda3fa723ace7d834edcd4e8bac30849eda9b2","unresolved":false,"context_lines":[{"line_number":211,"context_line":""},{"line_number":212,"context_line":"  .. note:"},{"line_number":213,"context_line":"    Need to check how this will work in standalone Ironic deployment."},{"line_number":214,"context_line":""},{"line_number":215,"context_line":"Other end user impact"},{"line_number":216,"context_line":"---------------------"},{"line_number":217,"context_line":""}],"source_content_type":"text/x-rst","patch_set":10,"id":"5f7c97a3_fc3abde3","line":214,"updated":"2018-06-12 15:21:09.000000000","message":"So will we somehow be ensuring that upon undeployment, that the console has been stopped?","commit_id":"ce512d95fa78a26b8ad635ecacf26cd2e9911c90"},{"author":{"_account_id":10206,"name":"Madhuri Kumari","email":"madhuri.kumari@intel.com","username":"Madhuri"},"change_message_id":"a7519127aa2a23b039ca2f866916bd438c440479","unresolved":false,"context_lines":[{"line_number":211,"context_line":""},{"line_number":212,"context_line":"  .. note:"},{"line_number":213,"context_line":"    Need to check how this will work in standalone Ironic deployment."},{"line_number":214,"context_line":""},{"line_number":215,"context_line":"Other end user impact"},{"line_number":216,"context_line":"---------------------"},{"line_number":217,"context_line":""}],"source_content_type":"text/x-rst","patch_set":10,"id":"5f7c97a3_4d5dcfea","line":214,"in_reply_to":"5f7c97a3_cd94b246","updated":"2018-06-18 07:36:34.000000000","message":"Yes, we need to stop the running consoles upon undeployment. Updated the spec to include this under \"Proposed Change\" section.","commit_id":"ce512d95fa78a26b8ad635ecacf26cd2e9911c90"},{"author":{"_account_id":13689,"name":"Hironori Shiina","email":"Hironori.Shiina@fujitsu.com","username":"shiina"},"change_message_id":"dba929885f48197d2a5eb46c2e4f20ccd64fea98","unresolved":false,"context_lines":[{"line_number":211,"context_line":""},{"line_number":212,"context_line":"  .. note:"},{"line_number":213,"context_line":"    Need to check how this will work in standalone Ironic deployment."},{"line_number":214,"context_line":""},{"line_number":215,"context_line":"Other end user impact"},{"line_number":216,"context_line":"---------------------"},{"line_number":217,"context_line":""}],"source_content_type":"text/x-rst","patch_set":10,"id":"5f7c97a3_cd94b246","line":214,"in_reply_to":"5f7c97a3_fc3abde3","updated":"2018-06-15 00:57:26.000000000","message":"+1\n\nThere was a bug in serial console[1]. It might be better to add disabling the console at undeployment to work items.\n\n[1] https://storyboard.openstack.org/#!/story/2002000","commit_id":"ce512d95fa78a26b8ad635ecacf26cd2e9911c90"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"febda3fa723ace7d834edcd4e8bac30849eda9b2","unresolved":false,"context_lines":[{"line_number":259,"context_line":"-----------"},{"line_number":260,"context_line":""},{"line_number":261,"context_line":"Primary assignee:"},{"line_number":262,"context_line":"  mkrai"},{"line_number":263,"context_line":""},{"line_number":264,"context_line":"Other contributors:"},{"line_number":265,"context_line":"  * anupn"}],"source_content_type":"text/x-rst","patch_set":10,"id":"5f7c97a3_dcaee17f","line":262,"range":{"start_line":262,"start_character":0,"end_line":262,"end_character":2},"updated":"2018-06-12 15:21:09.000000000","message":"nit: bullet point needed. :) Easy to follow-up or do if you revise this patch again.","commit_id":"ce512d95fa78a26b8ad635ecacf26cd2e9911c90"},{"author":{"_account_id":10206,"name":"Madhuri Kumari","email":"madhuri.kumari@intel.com","username":"Madhuri"},"change_message_id":"a7519127aa2a23b039ca2f866916bd438c440479","unresolved":false,"context_lines":[{"line_number":259,"context_line":"-----------"},{"line_number":260,"context_line":""},{"line_number":261,"context_line":"Primary assignee:"},{"line_number":262,"context_line":"  mkrai"},{"line_number":263,"context_line":""},{"line_number":264,"context_line":"Other contributors:"},{"line_number":265,"context_line":"  * anupn"}],"source_content_type":"text/x-rst","patch_set":10,"id":"5f7c97a3_6dd52b1b","line":262,"range":{"start_line":262,"start_character":0,"end_line":262,"end_character":2},"in_reply_to":"5f7c97a3_dcaee17f","updated":"2018-06-18 07:36:34.000000000","message":"Done","commit_id":"ce512d95fa78a26b8ad635ecacf26cd2e9911c90"},{"author":{"_account_id":13689,"name":"Hironori Shiina","email":"Hironori.Shiina@fujitsu.com","username":"shiina"},"change_message_id":"dba929885f48197d2a5eb46c2e4f20ccd64fea98","unresolved":false,"context_lines":[{"line_number":323,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":324,"context_line":""},{"line_number":325,"context_line":".. [#] https://blueprints.launchpad.net/nova/+spec/ironic-vnc-console"},{"line_number":326,"context_line":".. [REST_API_IMPACT] https://review.openstack.org/#/c/306074/7/specs/approved/vnc-graphical-console.rst@177"}],"source_content_type":"text/x-rst","patch_set":10,"id":"5f7c97a3_2d40c605","line":326,"updated":"2018-06-15 00:57:26.000000000","message":"This doesn\u0027t look necessary because this points a section in this spec. You can use `REST API impact`_ if necessary.","commit_id":"ce512d95fa78a26b8ad635ecacf26cd2e9911c90"},{"author":{"_account_id":10206,"name":"Madhuri Kumari","email":"madhuri.kumari@intel.com","username":"Madhuri"},"change_message_id":"a7519127aa2a23b039ca2f866916bd438c440479","unresolved":false,"context_lines":[{"line_number":323,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":324,"context_line":""},{"line_number":325,"context_line":".. [#] https://blueprints.launchpad.net/nova/+spec/ironic-vnc-console"},{"line_number":326,"context_line":".. [REST_API_IMPACT] https://review.openstack.org/#/c/306074/7/specs/approved/vnc-graphical-console.rst@177"}],"source_content_type":"text/x-rst","patch_set":10,"id":"5f7c97a3_2ddf333b","line":326,"in_reply_to":"5f7c97a3_2d40c605","updated":"2018-06-18 07:36:34.000000000","message":"Done","commit_id":"ce512d95fa78a26b8ad635ecacf26cd2e9911c90"}]}
