)]}'
{"ironic/conductor/manager.py":[{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"39f17abff243a8494b7526a9e771a388474edf54","unresolved":false,"context_lines":[{"line_number":3144,"context_line":"                          {\u0027url\u0027: callback_url, \u0027node\u0027: task.node.uuid})"},{"line_number":3145,"context_line":"                raise exception.InvalidParameterValue("},{"line_number":3146,"context_line":"                    _(\u0027TLS is required by configuration\u0027))"},{"line_number":3147,"context_line":""},{"line_number":3148,"context_line":"            if agent_verify_ca:"},{"line_number":3149,"context_line":"                agent_verify_ca \u003d utils.store_agent_certificate("},{"line_number":3150,"context_line":"                    task.node, agent_verify_ca)"}],"source_content_type":"text/x-python","patch_set":8,"id":"9f560f44_46612039","line":3147,"updated":"2020-09-08 15:00:45.000000000","message":"after token check, so this seems reasonable to check/store/use","commit_id":"901705a76566a29656831050fc55aa33f8a8d70c"}],"ironic/conductor/utils.py":[{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"39f17abff243a8494b7526a9e771a388474edf54","unresolved":false,"context_lines":[{"line_number":1264,"context_line":"            LOG.info(\u0027Current agent_verify_ca was not found for node \u0027"},{"line_number":1265,"context_line":"                     \u0027%s, assuming take over and storing\u0027, node.uuid)"},{"line_number":1266,"context_line":""},{"line_number":1267,"context_line":"    fname \u003d os.path.join(CONF.agent.certificates_path, \u0027%s.crt\u0027 % node.uuid)"},{"line_number":1268,"context_line":"    try:"},{"line_number":1269,"context_line":"        # FIXME(dtantsur): it makes more sense to create this path on conductor"},{"line_number":1270,"context_line":"        # start-up, but it requires reworking a ton of unit tests."}],"source_content_type":"text/x-python","patch_set":8,"id":"9f560f44_462ac0e6","line":1267,"updated":"2020-09-08 15:00:45.000000000","message":"slightly concerned around this workflow given storing files on the conductor in a request is picked up by another conductor. It _shouldn\u0027t_ happen though, so maybe I\u0027m just being overly cautious.","commit_id":"901705a76566a29656831050fc55aa33f8a8d70c"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"f1d3dd4f14b54c579ba0da1d59199d85cf59b4c0","unresolved":false,"context_lines":[{"line_number":1264,"context_line":"            LOG.info(\u0027Current agent_verify_ca was not found for node \u0027"},{"line_number":1265,"context_line":"                     \u0027%s, assuming take over and storing\u0027, node.uuid)"},{"line_number":1266,"context_line":""},{"line_number":1267,"context_line":"    fname \u003d os.path.join(CONF.agent.certificates_path, \u0027%s.crt\u0027 % node.uuid)"},{"line_number":1268,"context_line":"    try:"},{"line_number":1269,"context_line":"        # FIXME(dtantsur): it makes more sense to create this path on conductor"},{"line_number":1270,"context_line":"        # start-up, but it requires reworking a ton of unit tests."}],"source_content_type":"text/x-python","patch_set":8,"id":"9f560f44_fe3a62ca","line":1267,"in_reply_to":"9f560f44_462ac0e6","updated":"2020-09-09 14:52:41.000000000","message":"You mean, during rebalance? I guess there is a potential gap between the take over and the next heartbeat during which we don\u0027t have a valid certificate locally.. On the other hand, any actions are conductor in response to a heartbeat, so maybe it\u0027s not actually possible to see a broken state.","commit_id":"901705a76566a29656831050fc55aa33f8a8d70c"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"8276c951203cc67d37ace619a0360f6243be8c5e","unresolved":false,"context_lines":[{"line_number":1264,"context_line":"            LOG.info(\u0027Current agent_verify_ca was not found for node \u0027"},{"line_number":1265,"context_line":"                     \u0027%s, assuming take over and storing\u0027, node.uuid)"},{"line_number":1266,"context_line":""},{"line_number":1267,"context_line":"    fname \u003d os.path.join(CONF.agent.certificates_path, \u0027%s.crt\u0027 % node.uuid)"},{"line_number":1268,"context_line":"    try:"},{"line_number":1269,"context_line":"        # FIXME(dtantsur): it makes more sense to create this path on conductor"},{"line_number":1270,"context_line":"        # start-up, but it requires reworking a ton of unit tests."}],"source_content_type":"text/x-python","patch_set":8,"id":"9f560f44_289adc6d","line":1267,"in_reply_to":"9f560f44_fe3a62ca","updated":"2020-09-09 18:51:27.000000000","message":"Yeah, That is kind of what I\u0027m thinking as well, that we shouldn\u0027t ever actually see it since we check if present and populate.","commit_id":"901705a76566a29656831050fc55aa33f8a8d70c"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"39f17abff243a8494b7526a9e771a388474edf54","unresolved":false,"context_lines":[{"line_number":1268,"context_line":"    try:"},{"line_number":1269,"context_line":"        # FIXME(dtantsur): it makes more sense to create this path on conductor"},{"line_number":1270,"context_line":"        # start-up, but it requires reworking a ton of unit tests."},{"line_number":1271,"context_line":"        os.makedirs(CONF.agent.certificates_path, exist_ok\u003dTrue)"},{"line_number":1272,"context_line":"        with open(fname, \u0027wt\u0027) as fp:"},{"line_number":1273,"context_line":"            fp.write(agent_verify_ca)"},{"line_number":1274,"context_line":"    except EnvironmentError:"}],"source_content_type":"text/x-python","patch_set":8,"id":"9f560f44_a63abc30","line":1271,"updated":"2020-09-08 15:00:45.000000000","message":"I\u0027ll +1 moving it because stat, afaik, is supposed to read from the underlying storage and not the cache.","commit_id":"901705a76566a29656831050fc55aa33f8a8d70c"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"8276c951203cc67d37ace619a0360f6243be8c5e","unresolved":false,"context_lines":[{"line_number":1268,"context_line":"    try:"},{"line_number":1269,"context_line":"        # FIXME(dtantsur): it makes more sense to create this path on conductor"},{"line_number":1270,"context_line":"        # start-up, but it requires reworking a ton of unit tests."},{"line_number":1271,"context_line":"        os.makedirs(CONF.agent.certificates_path, exist_ok\u003dTrue)"},{"line_number":1272,"context_line":"        with open(fname, \u0027wt\u0027) as fp:"},{"line_number":1273,"context_line":"            fp.write(agent_verify_ca)"},{"line_number":1274,"context_line":"    except EnvironmentError:"}],"source_content_type":"text/x-python","patch_set":8,"id":"9f560f44_a8b1cc03","line":1271,"in_reply_to":"9f560f44_9e57e601","updated":"2020-09-09 18:51:27.000000000","message":"absolutely okay with that.","commit_id":"901705a76566a29656831050fc55aa33f8a8d70c"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"f1d3dd4f14b54c579ba0da1d59199d85cf59b4c0","unresolved":false,"context_lines":[{"line_number":1268,"context_line":"    try:"},{"line_number":1269,"context_line":"        # FIXME(dtantsur): it makes more sense to create this path on conductor"},{"line_number":1270,"context_line":"        # start-up, but it requires reworking a ton of unit tests."},{"line_number":1271,"context_line":"        os.makedirs(CONF.agent.certificates_path, exist_ok\u003dTrue)"},{"line_number":1272,"context_line":"        with open(fname, \u0027wt\u0027) as fp:"},{"line_number":1273,"context_line":"            fp.write(agent_verify_ca)"},{"line_number":1274,"context_line":"    except EnvironmentError:"}],"source_content_type":"text/x-python","patch_set":8,"id":"9f560f44_9e57e601","line":1271,"in_reply_to":"9f560f44_a63abc30","updated":"2020-09-09 14:52:41.000000000","message":"I\u0027ll look into it in a separate patch if you don\u0027t mind. Too invasive because of the way our tests are written.","commit_id":"901705a76566a29656831050fc55aa33f8a8d70c"}],"ironic/drivers/modules/agent_client.py":[{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"39f17abff243a8494b7526a9e771a388474edf54","unresolved":false,"context_lines":[{"line_number":76,"context_line":"            \u0027params\u0027: params,"},{"line_number":77,"context_line":"        })"},{"line_number":78,"context_line":""},{"line_number":79,"context_line":"    def _get_verify(self, node):"},{"line_number":80,"context_line":"        return (node.driver_internal_info.get(\u0027agent_verify_ca\u0027)"},{"line_number":81,"context_line":"                or node.driver_info.get(\u0027agent_verify_ca\u0027, True))"},{"line_number":82,"context_line":""}],"source_content_type":"text/x-python","patch_set":8,"id":"9f560f44_86b3389a","line":79,"updated":"2020-09-08 15:00:45.000000000","message":"looks like we need a test for returning this","commit_id":"901705a76566a29656831050fc55aa33f8a8d70c"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"f1d3dd4f14b54c579ba0da1d59199d85cf59b4c0","unresolved":false,"context_lines":[{"line_number":76,"context_line":"            \u0027params\u0027: params,"},{"line_number":77,"context_line":"        })"},{"line_number":78,"context_line":""},{"line_number":79,"context_line":"    def _get_verify(self, node):"},{"line_number":80,"context_line":"        return (node.driver_internal_info.get(\u0027agent_verify_ca\u0027)"},{"line_number":81,"context_line":"                or node.driver_info.get(\u0027agent_verify_ca\u0027, True))"},{"line_number":82,"context_line":""}],"source_content_type":"text/x-python","patch_set":8,"id":"9f560f44_de3cbec0","line":79,"in_reply_to":"9f560f44_86b3389a","updated":"2020-09-09 14:52:41.000000000","message":"Done","commit_id":"901705a76566a29656831050fc55aa33f8a8d70c"}]}
