)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":5511,"name":"Nikola Dipanov","email":"ndipanov@redhat.com","username":"ndipanov"},"change_message_id":"dcb25fbfcd676a6124d6e40656525905f3658ee3","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     Vladan Popovic \u003cvpopovic@redhat.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2013-10-29 15:52:57 -0400"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"replace http:// with https:// in novnc ssl/tls url"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"After configuring novnc with ssl/tls with a self-sgined http cert/key"},{"line_number":10,"context_line":"with openssl horizon still provides the http link in the novnc session."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":3,"id":"AAAATn%2F%2Fr60%3D","line":7,"updated":"2013-10-30 13:07:11.000000000","message":"This is no longer true - Actually this whole commit message is misleading at this point and should be re-written.","commit_id":"bf1f6cf1fb365e5b4b9e2283ed82f0958c811221"},{"author":{"_account_id":8910,"name":"Vladan Popovic","email":"vpopovic@redhat.com","username":"vladan"},"change_message_id":"b5e4f0b5299069ef0dd3d74aa37001827cc00130","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     Vladan Popovic \u003cvpopovic@redhat.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2013-10-29 15:52:57 -0400"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"replace http:// with https:// in novnc ssl/tls url"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"After configuring novnc with ssl/tls with a self-sgined http cert/key"},{"line_number":10,"context_line":"with openssl horizon still provides the http link in the novnc session."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":3,"id":"AAAATn%2F%2FrzE%3D","line":7,"in_reply_to":"AAAATn%2F%2Fr60%3D","updated":"2013-10-30 13:38:24.000000000","message":"agreed, the description needs some update as well","commit_id":"bf1f6cf1fb365e5b4b9e2283ed82f0958c811221"}],"nova/cmd/compute.py":[{"author":{"_account_id":1779,"name":"Daniel Berrange","email":"berrange@redhat.com","username":"berrange"},"change_message_id":"05d5525e1268e41638a6d943f51c5471ce8fd398","unresolved":false,"context_lines":[{"line_number":56,"context_line":"    nova.db.api.IMPL \u003d NoDB()"},{"line_number":57,"context_line":""},{"line_number":58,"context_line":""},{"line_number":59,"context_line":"def is_ssl_misconfigured():"},{"line_number":60,"context_line":"    misconfigured \u003d False"},{"line_number":61,"context_line":"    if CONF.ssl_only:"},{"line_number":62,"context_line":"        if CONF.novncproxy_base_url.startswith(\"http://\"):"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAATn%2F%2FvuU%3D","line":59,"updated":"2013-10-29 15:59:33.000000000","message":"s/is_ssl_misconfigured/validate_console_config/\u0027 would be a better name I think","commit_id":"896cff51397be06bacb8add9fc28a7a02354d123"},{"author":{"_account_id":8910,"name":"Vladan Popovic","email":"vpopovic@redhat.com","username":"vladan"},"change_message_id":"e8106f8953da41fbab407c6026362a8aa22f7224","unresolved":false,"context_lines":[{"line_number":56,"context_line":"    nova.db.api.IMPL \u003d NoDB()"},{"line_number":57,"context_line":""},{"line_number":58,"context_line":""},{"line_number":59,"context_line":"def is_ssl_misconfigured():"},{"line_number":60,"context_line":"    misconfigured \u003d False"},{"line_number":61,"context_line":"    if CONF.ssl_only:"},{"line_number":62,"context_line":"        if CONF.novncproxy_base_url.startswith(\"http://\"):"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAATn%2F%2Fvmc%3D","line":59,"in_reply_to":"AAAATn%2F%2FvuU%3D","updated":"2013-10-29 17:10:20.000000000","message":"agreed","commit_id":"896cff51397be06bacb8add9fc28a7a02354d123"},{"author":{"_account_id":1779,"name":"Daniel Berrange","email":"berrange@redhat.com","username":"berrange"},"change_message_id":"05d5525e1268e41638a6d943f51c5471ce8fd398","unresolved":false,"context_lines":[{"line_number":68,"context_line":"            print(\"HTTPS not configured with SSL only in SPICE - %s\" %"},{"line_number":69,"context_line":"                  CONF.spice.html5proxy_base_url)"},{"line_number":70,"context_line":"            misconfigured \u003d True"},{"line_number":71,"context_line":"    return misconfigured"},{"line_number":72,"context_line":""},{"line_number":73,"context_line":""},{"line_number":74,"context_line":"def main():"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAATn%2F%2Fvug%3D","line":71,"updated":"2013-10-29 15:59:33.000000000","message":"You\u0027re not checking \u0027CONF.vnc_enabled\u0027, but you are checking \u0027CONF.spice.enabled\u0027. This is inconsistent\n\nIn the \u0027block_db_access\u0027 method for validating configuration, we\u0027re using LOG.error and raise exception to block nova startup. Here you\u0027re just printing to stdout. IMHO, you should follow the existing practice and use LOG.error and exceptions.\n\nI also think perhaps this code should live in one of the files in nova/console/ and just be called from this file.","commit_id":"896cff51397be06bacb8add9fc28a7a02354d123"},{"author":{"_account_id":8910,"name":"Vladan Popovic","email":"vpopovic@redhat.com","username":"vladan"},"change_message_id":"e8106f8953da41fbab407c6026362a8aa22f7224","unresolved":false,"context_lines":[{"line_number":68,"context_line":"            print(\"HTTPS not configured with SSL only in SPICE - %s\" %"},{"line_number":69,"context_line":"                  CONF.spice.html5proxy_base_url)"},{"line_number":70,"context_line":"            misconfigured \u003d True"},{"line_number":71,"context_line":"    return misconfigured"},{"line_number":72,"context_line":""},{"line_number":73,"context_line":""},{"line_number":74,"context_line":"def main():"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAATn%2F%2FvV4%3D","line":71,"in_reply_to":"AAAATn%2F%2Fvug%3D","updated":"2013-10-29 17:10:20.000000000","message":"I overlooked the vnc_enabled option, I\u0027ll add it before checking the novncproxy_base_url, thanks for pointing.\n\nI agree on this, I looked at the main function in nova.cmd.novncproxy and followed that, but you\u0027re definitely right, it\u0027s better that an exception is raised and logged. I couldn\u0027t find a suitable exception though. I think I should add a new class in nova.exception, or could I use the generic Error from oslo.cfg? Any thoughts?","commit_id":"896cff51397be06bacb8add9fc28a7a02354d123"},{"author":{"_account_id":5511,"name":"Nikola Dipanov","email":"ndipanov@redhat.com","username":"ndipanov"},"change_message_id":"dcb25fbfcd676a6124d6e40656525905f3658ee3","unresolved":false,"context_lines":[{"line_number":61,"context_line":"    def raise_error(msg):"},{"line_number":62,"context_line":"        LOG \u003d logging.getLogger(\u0027nova.compute\u0027)"},{"line_number":63,"context_line":"        LOG.error(msg)"},{"line_number":64,"context_line":"        raise cfg.Error(msg)"},{"line_number":65,"context_line":""},{"line_number":66,"context_line":"    if CONF.ssl_only:"},{"line_number":67,"context_line":"        if (CONF.vnc_enabled and"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAATn%2F%2Fr74%3D","line":64,"updated":"2013-10-30 13:07:11.000000000","message":"Not sure this is a good idea tbh - raising what seems to be an internal Oslo.config error. Why not raise a NovaException?","commit_id":"bf1f6cf1fb365e5b4b9e2283ed82f0958c811221"},{"author":{"_account_id":8910,"name":"Vladan Popovic","email":"vpopovic@redhat.com","username":"vladan"},"change_message_id":"b5e4f0b5299069ef0dd3d74aa37001827cc00130","unresolved":false,"context_lines":[{"line_number":61,"context_line":"    def raise_error(msg):"},{"line_number":62,"context_line":"        LOG \u003d logging.getLogger(\u0027nova.compute\u0027)"},{"line_number":63,"context_line":"        LOG.error(msg)"},{"line_number":64,"context_line":"        raise cfg.Error(msg)"},{"line_number":65,"context_line":""},{"line_number":66,"context_line":"    if CONF.ssl_only:"},{"line_number":67,"context_line":"        if (CONF.vnc_enabled and"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAATn%2F%2Fr0U%3D","line":64,"in_reply_to":"AAAATn%2F%2Fr74%3D","updated":"2013-10-30 13:38:24.000000000","message":"Wasn\u0027t sure about this at all, I\u0027ll replace it with NovaException.","commit_id":"bf1f6cf1fb365e5b4b9e2283ed82f0958c811221"},{"author":{"_account_id":5511,"name":"Nikola Dipanov","email":"ndipanov@redhat.com","username":"ndipanov"},"change_message_id":"dcb25fbfcd676a6124d6e40656525905f3658ee3","unresolved":false,"context_lines":[{"line_number":66,"context_line":"    if CONF.ssl_only:"},{"line_number":67,"context_line":"        if (CONF.vnc_enabled and"},{"line_number":68,"context_line":"                CONF.novncproxy_base_url.startswith(\"http://\")):"},{"line_number":69,"context_line":"            msg \u003d \"HTTPS not configured with SSL only in novncproxy_base_url\""},{"line_number":70,"context_line":"            raise_error(msg)"},{"line_number":71,"context_line":"        if (CONF.spice.enabled and"},{"line_number":72,"context_line":"                CONF.spice.html5proxy_base_url.startswith(\"http://\")):"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAATn%2F%2Fr9g%3D","line":69,"updated":"2013-10-30 13:07:11.000000000","message":"Since this message will be printed on stdout and in the logs when the service fails to start - it would be good to be a bit more descriptive - basically mention that the ssl_only option is detected and this is the reason why we think the url seems to be misconfigured.\n\nJust because we are an open source project does not mean we absolutely must have horrible usability :)","commit_id":"bf1f6cf1fb365e5b4b9e2283ed82f0958c811221"},{"author":{"_account_id":8910,"name":"Vladan Popovic","email":"vpopovic@redhat.com","username":"vladan"},"change_message_id":"b5e4f0b5299069ef0dd3d74aa37001827cc00130","unresolved":false,"context_lines":[{"line_number":66,"context_line":"    if CONF.ssl_only:"},{"line_number":67,"context_line":"        if (CONF.vnc_enabled and"},{"line_number":68,"context_line":"                CONF.novncproxy_base_url.startswith(\"http://\")):"},{"line_number":69,"context_line":"            msg \u003d \"HTTPS not configured with SSL only in novncproxy_base_url\""},{"line_number":70,"context_line":"            raise_error(msg)"},{"line_number":71,"context_line":"        if (CONF.spice.enabled and"},{"line_number":72,"context_line":"                CONF.spice.html5proxy_base_url.startswith(\"http://\")):"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAATn%2F%2FrzY%3D","line":69,"in_reply_to":"AAAATn%2F%2Fr9g%3D","updated":"2013-10-30 13:38:24.000000000","message":"Well, I wouldn\u0027t say horrible :) but I agree it needs a more detailed description.","commit_id":"bf1f6cf1fb365e5b4b9e2283ed82f0958c811221"},{"author":{"_account_id":7040,"name":"GuoHui LIu","email":"liuguohui@gmail.com","username":"guohliu"},"change_message_id":"ecc954699665b6ba212d9da1367db0be7db93781","unresolved":false,"context_lines":[{"line_number":59,"context_line":""},{"line_number":60,"context_line":"def validate_console_config():"},{"line_number":61,"context_line":"    def raise_error(msg):"},{"line_number":62,"context_line":"        LOG \u003d logging.getLogger(\u0027nova.compute\u0027)"},{"line_number":63,"context_line":"        LOG.error(msg)"},{"line_number":64,"context_line":"        raise exception.InvalidVncUrlConfigValue(err\u003dmsg)"},{"line_number":65,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAATn%2F%2FaEw%3D","line":62,"updated":"2013-11-07 02:24:15.000000000","message":"how about to move 62 to a more appropriate place, like this one? https://github.com/openstack/nova/blob/master/nova/utils.py#L85, and using the __name__ rather than hard coded.","commit_id":"0be0fd5d2587d25bfc8d489b97ad5bd7223e6df9"},{"author":{"_account_id":8910,"name":"Vladan Popovic","email":"vpopovic@redhat.com","username":"vladan"},"change_message_id":"8ff4698642cd738329ec42c3fcf7a231ff546772","unresolved":false,"context_lines":[{"line_number":59,"context_line":""},{"line_number":60,"context_line":"def validate_console_config():"},{"line_number":61,"context_line":"    def raise_error(msg):"},{"line_number":62,"context_line":"        LOG \u003d logging.getLogger(\u0027nova.compute\u0027)"},{"line_number":63,"context_line":"        LOG.error(msg)"},{"line_number":64,"context_line":"        raise exception.InvalidVncUrlConfigValue(err\u003dmsg)"},{"line_number":65,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAATn%2F%2FZNI%3D","line":62,"in_reply_to":"AAAATn%2F%2FaEw%3D","updated":"2013-11-07 13:08:52.000000000","message":"I followed the implementation in block_db_access on line 53 and wasn\u0027t sure if I should put the logger in the global module scope. The same applies for the name. I\u0027ll do it the way you propose and see what comes out of it.","commit_id":"0be0fd5d2587d25bfc8d489b97ad5bd7223e6df9"},{"author":{"_account_id":7040,"name":"GuoHui LIu","email":"liuguohui@gmail.com","username":"guohliu"},"change_message_id":"ecc954699665b6ba212d9da1367db0be7db93781","unresolved":false,"context_lines":[{"line_number":66,"context_line":"    if CONF.ssl_only:"},{"line_number":67,"context_line":"        if (CONF.vnc_enabled and"},{"line_number":68,"context_line":"                CONF.novncproxy_base_url.startswith(\"http://\")):"},{"line_number":69,"context_line":"            msg \u003d (\"ssl_only option detected, but novncproxy_base_url is \""},{"line_number":70,"context_line":"                   \"configured with http instead of https.\")"},{"line_number":71,"context_line":"            raise_error(msg)"},{"line_number":72,"context_line":"        if (CONF.spice.enabled and"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAATn%2F%2FaFw%3D","line":69,"updated":"2013-11-07 02:24:15.000000000","message":"We need to use translate method to deal with the i18n issue for message like error level, for example https://github.com/openstack/nova/blob/master/nova/utils.py#L961","commit_id":"0be0fd5d2587d25bfc8d489b97ad5bd7223e6df9"},{"author":{"_account_id":7040,"name":"GuoHui LIu","email":"liuguohui@gmail.com","username":"guohliu"},"change_message_id":"ecc954699665b6ba212d9da1367db0be7db93781","unresolved":false,"context_lines":[{"line_number":71,"context_line":"            raise_error(msg)"},{"line_number":72,"context_line":"        if (CONF.spice.enabled and"},{"line_number":73,"context_line":"                CONF.spice.html5proxy_base_url.startswith(\"http://\")):"},{"line_number":74,"context_line":"            msg \u003d (\"ssl_only option detected, but html5proxy_base_url is \""},{"line_number":75,"context_line":"                   \"configured with http instead of https.\")"},{"line_number":76,"context_line":"            raise_error(msg)"},{"line_number":77,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAATn%2F%2FaFs%3D","line":74,"updated":"2013-11-07 02:24:15.000000000","message":"ditto","commit_id":"0be0fd5d2587d25bfc8d489b97ad5bd7223e6df9"},{"author":{"_account_id":7040,"name":"GuoHui LIu","email":"liuguohui@gmail.com","username":"guohliu"},"change_message_id":"2256e90cc611c7d0b2b217b165b9abe92e0268df","unresolved":false,"context_lines":[{"line_number":61,"context_line":"def validate_console_config():"},{"line_number":62,"context_line":"    def raise_error(opt):"},{"line_number":63,"context_line":"        err \u003d exception.InvalidSslVncUrlConfigValue(opt\u003dopt)"},{"line_number":64,"context_line":"        LOG.error(err.message)"},{"line_number":65,"context_line":"        raise err"},{"line_number":66,"context_line":""},{"line_number":67,"context_line":"    if CONF.ssl_only:"}],"source_content_type":"text/x-python","patch_set":5,"id":"AAAATn%2F%2FQkM%3D","line":64,"updated":"2013-11-12 05:41:35.000000000","message":"In case you don\u0027t need to log a specific extra message here, you don\u0027t need line 64, the raise clause will log everything well, so I would suggest to remove the raise_error method, and just raise exception.InvalidSslVncUrlConfigValue(opt\u003dopt) on line 71 and 75, the codes will be much more cleaner IMHO.","commit_id":"fff270152090cbfc820d41512b2332d22de4b1c3"},{"author":{"_account_id":8910,"name":"Vladan Popovic","email":"vpopovic@redhat.com","username":"vladan"},"change_message_id":"f760b4e1f71c70f297f7e5511d03ca34494e8eab","unresolved":false,"context_lines":[{"line_number":61,"context_line":"def validate_console_config():"},{"line_number":62,"context_line":"    def raise_error(opt):"},{"line_number":63,"context_line":"        err \u003d exception.InvalidSslVncUrlConfigValue(opt\u003dopt)"},{"line_number":64,"context_line":"        LOG.error(err.message)"},{"line_number":65,"context_line":"        raise err"},{"line_number":66,"context_line":""},{"line_number":67,"context_line":"    if CONF.ssl_only:"}],"source_content_type":"text/x-python","patch_set":5,"id":"AAAATn%2F%2FQQw%3D","line":64,"in_reply_to":"AAAATn%2F%2FQkM%3D","updated":"2013-11-12 07:56:54.000000000","message":"agreed","commit_id":"fff270152090cbfc820d41512b2332d22de4b1c3"}],"nova/compute/manager.py":[{"author":{"_account_id":1779,"name":"Daniel Berrange","email":"berrange@redhat.com","username":"berrange"},"change_message_id":"3ee24582504f0095cf3e4f01a9f449f55e993b82","unresolved":false,"context_lines":[{"line_number":209,"context_line":"               help\u003d\u0027SSL certificate file\u0027),"},{"line_number":210,"context_line":"    cfg.StrOpt(\u0027key\u0027,"},{"line_number":211,"context_line":"               help\u003d\u0027SSL key file (if separate from cert)\u0027),"},{"line_number":212,"context_line":"]"},{"line_number":213,"context_line":""},{"line_number":214,"context_line":"CONF \u003d cfg.CONF"},{"line_number":215,"context_line":"CONF.register_opts(compute_opts)"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAATX%2F%2F%2B6A%3D","line":212,"updated":"2013-10-23 10:12:23.000000000","message":"This is duplicating options already defined elsewhere in nova code which is bad.","commit_id":"bc013c5e5a6f371da18227315bccbfd0e9525152"},{"author":{"_account_id":1779,"name":"Daniel Berrange","email":"berrange@redhat.com","username":"berrange"},"change_message_id":"3ee24582504f0095cf3e4f01a9f449f55e993b82","unresolved":false,"context_lines":[{"line_number":217,"context_line":"CONF.register_opts(timeout_opts)"},{"line_number":218,"context_line":"CONF.register_opts(running_deleted_opts)"},{"line_number":219,"context_line":"CONF.register_opts(instance_cleaning_opts)"},{"line_number":220,"context_line":"CONF.register_opts(novnc_opts)"},{"line_number":221,"context_line":"CONF.import_opt(\u0027allow_resize_to_same_host\u0027, \u0027nova.compute.api\u0027)"},{"line_number":222,"context_line":"CONF.import_opt(\u0027console_topic\u0027, \u0027nova.console.rpcapi\u0027)"},{"line_number":223,"context_line":"CONF.import_opt(\u0027host\u0027, \u0027nova.netconf\u0027)"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAATX%2F%2F%2B50%3D","line":220,"updated":"2013-10-23 10:12:23.000000000","message":"You should use import_opts to reference the existing defined options, not register_opts","commit_id":"bc013c5e5a6f371da18227315bccbfd0e9525152"},{"author":{"_account_id":8910,"name":"Vladan Popovic","email":"vpopovic@redhat.com","username":"vladan"},"change_message_id":"ceb3880b393bde318630f8d4f5a36ddbc76ecc00","unresolved":false,"context_lines":[{"line_number":217,"context_line":"CONF.register_opts(timeout_opts)"},{"line_number":218,"context_line":"CONF.register_opts(running_deleted_opts)"},{"line_number":219,"context_line":"CONF.register_opts(instance_cleaning_opts)"},{"line_number":220,"context_line":"CONF.register_opts(novnc_opts)"},{"line_number":221,"context_line":"CONF.import_opt(\u0027allow_resize_to_same_host\u0027, \u0027nova.compute.api\u0027)"},{"line_number":222,"context_line":"CONF.import_opt(\u0027console_topic\u0027, \u0027nova.console.rpcapi\u0027)"},{"line_number":223,"context_line":"CONF.import_opt(\u0027host\u0027, \u0027nova.netconf\u0027)"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAATX%2F%2F%2Bz0%3D","line":220,"in_reply_to":"AAAATX%2F%2F%2B50%3D","updated":"2013-10-23 11:13:57.000000000","message":"I agree on this, I was also unsatisfied with this solution, but couldn\u0027t find another way without changing another module because when importing the already defined options from nova.cmd.novnc with import_opt(\u0027ssl_only\u0027, \u0027nova.cmd.novnc\u0027) nova-compute failed to start raising this exception: ArgsAlreadyParsedError: arguments already parsed: cannot register CLI option","commit_id":"bc013c5e5a6f371da18227315bccbfd0e9525152"},{"author":{"_account_id":1779,"name":"Daniel Berrange","email":"berrange@redhat.com","username":"berrange"},"change_message_id":"3ee24582504f0095cf3e4f01a9f449f55e993b82","unresolved":false,"context_lines":[{"line_number":3556,"context_line":"            if ssl_configured and access_url.startswith(\"http://\"):"},{"line_number":3557,"context_line":"                access_url \u003d access_url.replace(\"http://\", \"https://\")"},{"line_number":3558,"context_line":"            elif not ssl_configured and access_url.startswith(\"https://\"):"},{"line_number":3559,"context_line":"                access_url \u003d access_url.replace(\"https://\", \"http://\")"},{"line_number":3560,"context_line":"        elif console_type \u003d\u003d \u0027xvpvnc\u0027:"},{"line_number":3561,"context_line":"            access_url \u003d \u0027%s?token\u003d%s\u0027 % (CONF.xvpvncproxy_base_url, token)"},{"line_number":3562,"context_line":"        else:"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAATX%2F%2F%2B6g%3D","line":3559,"updated":"2013-10-23 10:12:23.000000000","message":"I\u0027m not really convinced that URL munging here is the right thing to be doing.\n\nIn essence the problem in the referenced bug is an administrator mis-configuration.\n\nThey requested SSL-only and didn\u0027t set an HTTPS URL. IMHO we should report that error at nova startup and refuse to start, so they see the mis-configuration.\n\nAlso if CONF.ssl_only is not set, then we shouldn\u0027t override the admins chosen URI at all regardless of whether CONF.cert or CONF.key are set.\n\nYou\u0027ve not provided any test cases\n\nFinally you\u0027ve only fixed VNC here, not SPICE.","commit_id":"bc013c5e5a6f371da18227315bccbfd0e9525152"},{"author":{"_account_id":8910,"name":"Vladan Popovic","email":"vpopovic@redhat.com","username":"vladan"},"change_message_id":"ceb3880b393bde318630f8d4f5a36ddbc76ecc00","unresolved":false,"context_lines":[{"line_number":3556,"context_line":"            if ssl_configured and access_url.startswith(\"http://\"):"},{"line_number":3557,"context_line":"                access_url \u003d access_url.replace(\"http://\", \"https://\")"},{"line_number":3558,"context_line":"            elif not ssl_configured and access_url.startswith(\"https://\"):"},{"line_number":3559,"context_line":"                access_url \u003d access_url.replace(\"https://\", \"http://\")"},{"line_number":3560,"context_line":"        elif console_type \u003d\u003d \u0027xvpvnc\u0027:"},{"line_number":3561,"context_line":"            access_url \u003d \u0027%s?token\u003d%s\u0027 % (CONF.xvpvncproxy_base_url, token)"},{"line_number":3562,"context_line":"        else:"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAATX%2F%2F%2ByQ%3D","line":3559,"in_reply_to":"AAAATX%2F%2F%2B6g%3D","updated":"2013-10-23 11:13:57.000000000","message":"\u003e They requested SSL-only and didn\u0027t set an HTTPS URL. IMHO we should report that error at nova startup and refuse to start, so they see the mis-configuration.\n\nGood point, thanks. I\u0027ll do it like that and definitely write tests this time.\n\nI was thinking about whether to parse only the \u0027ssl_only\u0027 option or all of them, but now that you\u0027ve mentioned it it makes a lot of sence. I\u0027ll remove the cert/key checks.\nI\u0027ll add the same check for SPICE and test that as well.","commit_id":"bc013c5e5a6f371da18227315bccbfd0e9525152"}],"nova/exception.py":[{"author":{"_account_id":7040,"name":"GuoHui LIu","email":"liuguohui@gmail.com","username":"guohliu"},"change_message_id":"ecc954699665b6ba212d9da1367db0be7db93781","unresolved":false,"context_lines":[{"line_number":1481,"context_line":""},{"line_number":1482,"context_line":""},{"line_number":1483,"context_line":"class InvalidVncUrlConfigValue(NovaException):"},{"line_number":1484,"context_line":"    msg_fmt \u003d \"%(err)s\""}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAATn%2F%2FaFU%3D","line":1484,"updated":"2013-11-07 02:24:15.000000000","message":"we probably need to adds some specific explanation rather than just using passed in err.","commit_id":"0be0fd5d2587d25bfc8d489b97ad5bd7223e6df9"}]}
