)]}'
{"ironic/drivers/modules/oneview/common.py":[{"author":{"_account_id":23375,"name":"Stenio Araujo","email":"stenioaraujo@lsd.ufcg.edu.br","username":"stenioaraujo"},"change_message_id":"6fd9514fa94e0c76fba122b34cadeb5baa44e31c","unresolved":false,"context_lines":[{"line_number":114,"context_line":""},{"line_number":115,"context_line":"    insecure \u003d CONF.oneview.allow_insecure_connections"},{"line_number":116,"context_line":"    ssl_certificate \u003d CONF.oneview.tls_cacert_file"},{"line_number":117,"context_line":"    if not (insecure or ssl_certificate):"},{"line_number":118,"context_line":"        msg \u003d _(\"TLS CA certificate file missing.\")"},{"line_number":119,"context_line":"        raise exception.OneViewError(error\u003dmsg)"},{"line_number":120,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"ff82abbf_d1452e45","line":117,"updated":"2017-11-30 13:17:45.000000000","message":"I think we should have another condition to verify `if insecure and ssl_certificate: ssl_certificate \u003d None`. HPE OneView Client will fail if ssl_certificate is not a valid certificate.","commit_id":"068798a2160c64b0a0f4753b7b345315f20bd92e"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"0e68264458a42817ff50c5bce0f9532bde62f766","unresolved":false,"context_lines":[{"line_number":116,"context_line":"    ssl_certificate \u003d CONF.oneview.tls_cacert_file"},{"line_number":117,"context_line":""},{"line_number":118,"context_line":"    if not (insecure or ssl_certificate):"},{"line_number":119,"context_line":"        msg \u003d _(\"TLS CA certificate file missing.\")"},{"line_number":120,"context_line":"        raise exception.OneViewError(error\u003dmsg)"},{"line_number":121,"context_line":""},{"line_number":122,"context_line":"    # NOTE(nicodemos) Ignore the CA certificate if it\u0027s an insecure connection"}],"source_content_type":"text/x-python","patch_set":4,"id":"df87a7cf_030857d7","line":119,"updated":"2017-12-11 14:51:07.000000000","message":"If we can recommend a path to remedy this, we might want to.","commit_id":"990c5bd3ce6aa2c842efc499da344580469c6c59"},{"author":{"_account_id":14675,"name":"Hugo Nicodemos","email":"hugo.brito@windriver.com","username":"nicodemos"},"change_message_id":"114355140a34517cd5d5f12d414e4fc404a92ace","unresolved":false,"context_lines":[{"line_number":116,"context_line":"    ssl_certificate \u003d CONF.oneview.tls_cacert_file"},{"line_number":117,"context_line":""},{"line_number":118,"context_line":"    if not (insecure or ssl_certificate):"},{"line_number":119,"context_line":"        msg \u003d _(\"TLS CA certificate file missing.\")"},{"line_number":120,"context_line":"        raise exception.OneViewError(error\u003dmsg)"},{"line_number":121,"context_line":""},{"line_number":122,"context_line":"    # NOTE(nicodemos) Ignore the CA certificate if it\u0027s an insecure connection"}],"source_content_type":"text/x-python","patch_set":4,"id":"df87a7cf_0a6944f7","line":119,"in_reply_to":"df87a7cf_030857d7","updated":"2017-12-11 17:29:30.000000000","message":"I\u0027m confused here, do you want me to recommend a generic path for OneView certificates? I don\u0027t think there is one.","commit_id":"990c5bd3ce6aa2c842efc499da344580469c6c59"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"85961ef171ae7740ff3aedec3ee7d15dcaac96d3","unresolved":false,"context_lines":[{"line_number":116,"context_line":"    ssl_certificate \u003d CONF.oneview.tls_cacert_file"},{"line_number":117,"context_line":""},{"line_number":118,"context_line":"    if not (insecure or ssl_certificate):"},{"line_number":119,"context_line":"        msg \u003d _(\"TLS CA certificate file missing.\")"},{"line_number":120,"context_line":"        raise exception.OneViewError(error\u003dmsg)"},{"line_number":121,"context_line":""},{"line_number":122,"context_line":"    # NOTE(nicodemos) Ignore the CA certificate if it\u0027s an insecure connection"}],"source_content_type":"text/x-python","patch_set":4,"id":"df87a7cf_9cb6ea3d","line":119,"in_reply_to":"df87a7cf_0a6944f7","updated":"2017-12-12 14:08:53.000000000","message":"No, I was thinking something along the lines of \"TLS CA certificate file not present, please set $parameter configuration\". The existing message is nice and short though, which is a plus.\n\nWhat this does come down to though, is that an operator shouldn\u0027t _have_ to supply a CA certificate if the remote service is using a CA certificate already known to the Operating System or python requests library.\n\nRequests, if that is the rest library ultimately being used, does keep it\u0027s own known CA certificate store, for what it is worth.\n\nThis means, that in my mind, operationally insecure \u003d False and no CA ssl_certificate being defined, should be a valid configuration, unless there are other constraints that need to be raised to the user.\n\nOne last thing before I get off my soapbox, \"ssl_certificate\" might lean towards client ssl certificate for authentication.","commit_id":"990c5bd3ce6aa2c842efc499da344580469c6c59"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"0e68264458a42817ff50c5bce0f9532bde62f766","unresolved":false,"context_lines":[{"line_number":117,"context_line":""},{"line_number":118,"context_line":"    if not (insecure or ssl_certificate):"},{"line_number":119,"context_line":"        msg \u003d _(\"TLS CA certificate file missing.\")"},{"line_number":120,"context_line":"        raise exception.OneViewError(error\u003dmsg)"},{"line_number":121,"context_line":""},{"line_number":122,"context_line":"    # NOTE(nicodemos) Ignore the CA certificate if it\u0027s an insecure connection"},{"line_number":123,"context_line":"    if insecure and ssl_certificate:"}],"source_content_type":"text/x-python","patch_set":4,"id":"df87a7cf_a33e4bb5","line":120,"updated":"2017-12-11 14:51:07.000000000","message":"Why is letting the library fall back on system wide CA certificates not acceptable?","commit_id":"990c5bd3ce6aa2c842efc499da344580469c6c59"},{"author":{"_account_id":14675,"name":"Hugo Nicodemos","email":"hugo.brito@windriver.com","username":"nicodemos"},"change_message_id":"114355140a34517cd5d5f12d414e4fc404a92ace","unresolved":false,"context_lines":[{"line_number":117,"context_line":""},{"line_number":118,"context_line":"    if not (insecure or ssl_certificate):"},{"line_number":119,"context_line":"        msg \u003d _(\"TLS CA certificate file missing.\")"},{"line_number":120,"context_line":"        raise exception.OneViewError(error\u003dmsg)"},{"line_number":121,"context_line":""},{"line_number":122,"context_line":"    # NOTE(nicodemos) Ignore the CA certificate if it\u0027s an insecure connection"},{"line_number":123,"context_line":"    if insecure and ssl_certificate:"}],"source_content_type":"text/x-python","patch_set":4,"id":"df87a7cf_ea1c2079","line":120,"in_reply_to":"df87a7cf_a33e4bb5","updated":"2017-12-11 17:29:30.000000000","message":"I\u0027m confused here too, I\u0027m raising a OneView driver exception because the user is trying a secure connection without a CA file path. If the path is set and is not a valid one the hpOneView library will raise an exception.","commit_id":"990c5bd3ce6aa2c842efc499da344580469c6c59"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"85961ef171ae7740ff3aedec3ee7d15dcaac96d3","unresolved":false,"context_lines":[{"line_number":117,"context_line":""},{"line_number":118,"context_line":"    if not (insecure or ssl_certificate):"},{"line_number":119,"context_line":"        msg \u003d _(\"TLS CA certificate file missing.\")"},{"line_number":120,"context_line":"        raise exception.OneViewError(error\u003dmsg)"},{"line_number":121,"context_line":""},{"line_number":122,"context_line":"    # NOTE(nicodemos) Ignore the CA certificate if it\u0027s an insecure connection"},{"line_number":123,"context_line":"    if insecure and ssl_certificate:"}],"source_content_type":"text/x-python","patch_set":4,"id":"df87a7cf_3cf47ef0","line":120,"in_reply_to":"df87a7cf_ea1c2079","updated":"2017-12-12 14:08:53.000000000","message":"Okay, except when we get down to the underlying ssl implementations, typically they will validate certificate signatures against local configuration on the disk, that might be present in /etc/ssl, which contains primary files that are used by many applications to validate server certificates.\n\nIf somehow the hpOneView is wired such that it will not do that, then.... Perhaps very verbose configuration parameters.","commit_id":"990c5bd3ce6aa2c842efc499da344580469c6c59"},{"author":{"_account_id":19072,"name":"Xavier","email":"marcusrafael@lsd.ufcg.edu.br","username":"marcusrafael"},"change_message_id":"24aa853b380fe24bc9b5e86192c251f08a50ad1c","unresolved":false,"context_lines":[{"line_number":120,"context_line":"        raise exception.OneViewError(error\u003dmsg)"},{"line_number":121,"context_line":""},{"line_number":122,"context_line":"    # NOTE(nicodemos) Ignore the CA certificate if it\u0027s an insecure connection"},{"line_number":123,"context_line":"    if insecure and ssl_certificate:"},{"line_number":124,"context_line":"        ssl_certificate \u003d None"},{"line_number":125,"context_line":""},{"line_number":126,"context_line":"    config \u003d {"}],"source_content_type":"text/x-python","patch_set":4,"id":"df87a7cf_041c2b76","line":123,"updated":"2017-12-07 14:00:43.000000000","message":"I think would be better logging to make the operator aware cert is not being used.","commit_id":"990c5bd3ce6aa2c842efc499da344580469c6c59"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"0e68264458a42817ff50c5bce0f9532bde62f766","unresolved":false,"context_lines":[{"line_number":120,"context_line":"        raise exception.OneViewError(error\u003dmsg)"},{"line_number":121,"context_line":""},{"line_number":122,"context_line":"    # NOTE(nicodemos) Ignore the CA certificate if it\u0027s an insecure connection"},{"line_number":123,"context_line":"    if insecure and ssl_certificate:"},{"line_number":124,"context_line":"        ssl_certificate \u003d None"},{"line_number":125,"context_line":""},{"line_number":126,"context_line":"    config \u003d {"}],"source_content_type":"text/x-python","patch_set":4,"id":"df87a7cf_c326ef68","line":123,"in_reply_to":"df87a7cf_041c2b76","updated":"2017-12-11 14:51:07.000000000","message":"+1 as a debug perhaps.\n\nThe library\u0027s operating behavior seems to be fairly different from the way most applications implement ssl/tls. :\\","commit_id":"990c5bd3ce6aa2c842efc499da344580469c6c59"},{"author":{"_account_id":14675,"name":"Hugo Nicodemos","email":"hugo.brito@windriver.com","username":"nicodemos"},"change_message_id":"114355140a34517cd5d5f12d414e4fc404a92ace","unresolved":false,"context_lines":[{"line_number":120,"context_line":"        raise exception.OneViewError(error\u003dmsg)"},{"line_number":121,"context_line":""},{"line_number":122,"context_line":"    # NOTE(nicodemos) Ignore the CA certificate if it\u0027s an insecure connection"},{"line_number":123,"context_line":"    if insecure and ssl_certificate:"},{"line_number":124,"context_line":"        ssl_certificate \u003d None"},{"line_number":125,"context_line":""},{"line_number":126,"context_line":"    config \u003d {"}],"source_content_type":"text/x-python","patch_set":4,"id":"df87a7cf_ca5d9c79","line":123,"in_reply_to":"df87a7cf_c326ef68","updated":"2017-12-11 17:29:30.000000000","message":"Done","commit_id":"990c5bd3ce6aa2c842efc499da344580469c6c59"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"86af4e5268e21d89203265a4b39497a7c966ea32","unresolved":false,"context_lines":[{"line_number":121,"context_line":""},{"line_number":122,"context_line":"    # NOTE(nicodemos) Ignore the CA certificate if it\u0027s an insecure connection"},{"line_number":123,"context_line":"    if insecure and ssl_certificate:"},{"line_number":124,"context_line":"        LOG.debug(\"Doing an insecure connection with OneView, the CA \""},{"line_number":125,"context_line":"                  \"certificate file: %s will be ignored.\", ssl_certificate)"},{"line_number":126,"context_line":"        ssl_certificate \u003d None"},{"line_number":127,"context_line":""}],"source_content_type":"text/x-python","patch_set":6,"id":"7f96bb07_4ef11f6b","line":124,"updated":"2018-01-15 09:50:39.000000000","message":"I\u0027d prefer to warn once and set some flag like \"already_warned\"","commit_id":"97a8ae1c7765aae06b86162b3191186b14f1c8c6"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"40268b805616acf679c59d035a1126d06064c048","unresolved":false,"context_lines":[{"line_number":121,"context_line":""},{"line_number":122,"context_line":"    # NOTE(nicodemos) Ignore the CA certificate if it\u0027s an insecure connection"},{"line_number":123,"context_line":"    if insecure and ssl_certificate:"},{"line_number":124,"context_line":"        LOG.debug(\"Doing an insecure connection with OneView, the CA \""},{"line_number":125,"context_line":"                  \"certificate file: %s will be ignored.\", ssl_certificate)"},{"line_number":126,"context_line":"        ssl_certificate \u003d None"},{"line_number":127,"context_line":""}],"source_content_type":"text/x-python","patch_set":6,"id":"df87a7cf_adca564c","line":124,"updated":"2017-12-14 16:59:09.000000000","message":"I\u0027m not convinced that debug is right here, but I\u0027m not sure it would make sense anywhere else aside from warning, and then it is going to be too noisy.","commit_id":"97a8ae1c7765aae06b86162b3191186b14f1c8c6"}],"ironic/tests/unit/drivers/third_party_driver_mock_specs.py":[{"author":{"_account_id":19072,"name":"Xavier","email":"marcusrafael@lsd.ufcg.edu.br","username":"marcusrafael"},"change_message_id":"24aa853b380fe24bc9b5e86192c251f08a50ad1c","unresolved":false,"context_lines":[{"line_number":144,"context_line":"    \u0027ONEVIEW_ERROR\u0027,"},{"line_number":145,"context_line":")"},{"line_number":146,"context_line":""},{"line_number":147,"context_line":"HPONEVIEW_SPEC \u003d ("},{"line_number":148,"context_line":"    \u0027oneview_client\u0027,"},{"line_number":149,"context_line":"    \u0027resources\u0027,"},{"line_number":150,"context_line":"    \u0027exceptions\u0027,"}],"source_content_type":"text/x-python","patch_set":4,"id":"df87a7cf_dfa7ee0a","line":147,"range":{"start_line":147,"start_character":0,"end_line":147,"end_character":14},"updated":"2017-12-07 14:00:43.000000000","message":"nit: s/HPONEVIEW_SPEC/HPE_ONEVIEW_SPEC/\n\nto me, this is more readable.","commit_id":"990c5bd3ce6aa2c842efc499da344580469c6c59"},{"author":{"_account_id":14675,"name":"Hugo Nicodemos","email":"hugo.brito@windriver.com","username":"nicodemos"},"change_message_id":"114355140a34517cd5d5f12d414e4fc404a92ace","unresolved":false,"context_lines":[{"line_number":144,"context_line":"    \u0027ONEVIEW_ERROR\u0027,"},{"line_number":145,"context_line":")"},{"line_number":146,"context_line":""},{"line_number":147,"context_line":"HPONEVIEW_SPEC \u003d ("},{"line_number":148,"context_line":"    \u0027oneview_client\u0027,"},{"line_number":149,"context_line":"    \u0027resources\u0027,"},{"line_number":150,"context_line":"    \u0027exceptions\u0027,"}],"source_content_type":"text/x-python","patch_set":4,"id":"df87a7cf_2a068821","line":147,"range":{"start_line":147,"start_character":0,"end_line":147,"end_character":14},"in_reply_to":"df87a7cf_dfa7ee0a","updated":"2017-12-11 17:29:30.000000000","message":"Done","commit_id":"990c5bd3ce6aa2c842efc499da344580469c6c59"},{"author":{"_account_id":19072,"name":"Xavier","email":"marcusrafael@lsd.ufcg.edu.br","username":"marcusrafael"},"change_message_id":"24aa853b380fe24bc9b5e86192c251f08a50ad1c","unresolved":false,"context_lines":[{"line_number":150,"context_line":"    \u0027exceptions\u0027,"},{"line_number":151,"context_line":")"},{"line_number":152,"context_line":""},{"line_number":153,"context_line":"HPONEVIEW_CLS_SPEC \u003d ("},{"line_number":154,"context_line":")"},{"line_number":155,"context_line":""},{"line_number":156,"context_line":"HPONEVIEW_STATES_SPEC \u003d ("}],"source_content_type":"text/x-python","patch_set":4,"id":"df87a7cf_7fb02244","line":153,"range":{"start_line":153,"start_character":0,"end_line":153,"end_character":18},"updated":"2017-12-07 14:00:43.000000000","message":"ditto","commit_id":"990c5bd3ce6aa2c842efc499da344580469c6c59"},{"author":{"_account_id":14675,"name":"Hugo Nicodemos","email":"hugo.brito@windriver.com","username":"nicodemos"},"change_message_id":"114355140a34517cd5d5f12d414e4fc404a92ace","unresolved":false,"context_lines":[{"line_number":150,"context_line":"    \u0027exceptions\u0027,"},{"line_number":151,"context_line":")"},{"line_number":152,"context_line":""},{"line_number":153,"context_line":"HPONEVIEW_CLS_SPEC \u003d ("},{"line_number":154,"context_line":")"},{"line_number":155,"context_line":""},{"line_number":156,"context_line":"HPONEVIEW_STATES_SPEC \u003d ("}],"source_content_type":"text/x-python","patch_set":4,"id":"df87a7cf_e501b306","line":153,"range":{"start_line":153,"start_character":0,"end_line":153,"end_character":18},"in_reply_to":"df87a7cf_7fb02244","updated":"2017-12-11 17:29:30.000000000","message":"Done","commit_id":"990c5bd3ce6aa2c842efc499da344580469c6c59"},{"author":{"_account_id":19072,"name":"Xavier","email":"marcusrafael@lsd.ufcg.edu.br","username":"marcusrafael"},"change_message_id":"24aa853b380fe24bc9b5e86192c251f08a50ad1c","unresolved":false,"context_lines":[{"line_number":153,"context_line":"HPONEVIEW_CLS_SPEC \u003d ("},{"line_number":154,"context_line":")"},{"line_number":155,"context_line":""},{"line_number":156,"context_line":"HPONEVIEW_STATES_SPEC \u003d ("},{"line_number":157,"context_line":"    \u0027ONEVIEW_POWER_OFF\u0027,"},{"line_number":158,"context_line":"    \u0027ONEVIEW_POWERING_OFF\u0027,"},{"line_number":159,"context_line":"    \u0027ONEVIEW_POWER_ON\u0027,"}],"source_content_type":"text/x-python","patch_set":4,"id":"df87a7cf_3fb61a40","line":156,"range":{"start_line":156,"start_character":0,"end_line":156,"end_character":21},"updated":"2017-12-07 14:00:43.000000000","message":"ditto","commit_id":"990c5bd3ce6aa2c842efc499da344580469c6c59"},{"author":{"_account_id":14675,"name":"Hugo Nicodemos","email":"hugo.brito@windriver.com","username":"nicodemos"},"change_message_id":"114355140a34517cd5d5f12d414e4fc404a92ace","unresolved":false,"context_lines":[{"line_number":153,"context_line":"HPONEVIEW_CLS_SPEC \u003d ("},{"line_number":154,"context_line":")"},{"line_number":155,"context_line":""},{"line_number":156,"context_line":"HPONEVIEW_STATES_SPEC \u003d ("},{"line_number":157,"context_line":"    \u0027ONEVIEW_POWER_OFF\u0027,"},{"line_number":158,"context_line":"    \u0027ONEVIEW_POWERING_OFF\u0027,"},{"line_number":159,"context_line":"    \u0027ONEVIEW_POWER_ON\u0027,"}],"source_content_type":"text/x-python","patch_set":4,"id":"df87a7cf_0505b710","line":156,"range":{"start_line":156,"start_character":0,"end_line":156,"end_character":21},"in_reply_to":"df87a7cf_3fb61a40","updated":"2017-12-11 17:29:30.000000000","message":"Done","commit_id":"990c5bd3ce6aa2c842efc499da344580469c6c59"}]}
