)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"577a8c03d327b300f388added76d0f2e0555b578","unresolved":false,"context_lines":[{"line_number":20,"context_line":"* auth_strategy is not relevant in the [placement] section of a"},{"line_number":21,"context_line":"  nova process"},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"The name of the function is maintained, in case there are plugins which"},{"line_number":24,"context_line":"call it, but a comment is added to indicate that other services besides"},{"line_number":25,"context_line":"nova compute (such as the cell conductor) may use the function."},{"line_number":26,"context_line":""},{"line_number":27,"context_line":"Change-Id: I4a46b6460596e9a445bd90de2d52dbb71fb963df"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"bfdaf3ff_1a90484e","line":24,"range":{"start_line":23,"start_character":58,"end_line":24,"end_character":7},"updated":"2019-01-15 22:55:12.000000000","message":"If those are outside of nova, is it possible they\u0027re sourcing lib/placement and not sourcing lib/nova and will therefore break despite the method name having remained unchanged?\n\nTo remain super-duper backward compatible, presumably one would have to make the original function in lib/placement a shim like\n\n if \u003cfancy typeset output doesn\u0027t contain real_method_name\u003e; then\n     source lib/nova\n fi\n real_method_name \"$@\"\n\nBasically I\u0027m wondering if there\u0027s value in retaining the method name if we\u0027re not going to be super careful about it. And if we\u0027re not (which I\u0027m actually fine with - let those plugins break and do the right thing to fix themselves - presumably put a similar method in their own lib/*) then we should rename the method to what we think is right (which would be what, remove _nova_compute?)","commit_id":"16a10d7435be54c97982b93bbc07686ebeb536ac"},{"author":{"_account_id":11564,"name":"Chris Dent","email":"cdent@anticdent.org","username":"chdent"},"change_message_id":"37fade9237c02dbb4a1c2ed07039fc0aec78570d","unresolved":false,"context_lines":[{"line_number":20,"context_line":"* auth_strategy is not relevant in the [placement] section of a"},{"line_number":21,"context_line":"  nova process"},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"The name of the function is maintained, in case there are plugins which"},{"line_number":24,"context_line":"call it, but a comment is added to indicate that other services besides"},{"line_number":25,"context_line":"nova compute (such as the cell conductor) may use the function."},{"line_number":26,"context_line":""},{"line_number":27,"context_line":"Change-Id: I4a46b6460596e9a445bd90de2d52dbb71fb963df"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"bfdaf3ff_b3a35e9e","line":24,"range":{"start_line":23,"start_character":58,"end_line":24,"end_character":7},"in_reply_to":"bfdaf3ff_1a90484e","updated":"2019-01-16 11:49:40.000000000","message":"My assumption was that the only people who would be using this method would be sourcing lib/nova somewhere in their stacking, because of the name and intent of the method: set up nova compute to talk to placement. So the straightest path to getting something working, but in the right place, was to keep the name.\n\nThe other reason for keeping the same name is that the method is called from a few different places within lib/nova as well as stack.sh and it seemed pointless to change the name, given that for all but one of those places, the name fits.\n\nSo in the end my decision was effectively: do the small change that works and gets the goal.\n\nPutting a shim like you describe in lib/placement is way more effort than I think we want or devstack deserves.\n\nI we wanted to do the actually right thing, which I did not want to do at this time, we could consider creating a generic function which covers \"creating config for service a to talk to service b\" and sticking it wherever such functions live.\n\nBut that was effort and velocity killing and so is this conversation ;)","commit_id":"16a10d7435be54c97982b93bbc07686ebeb536ac"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"f2b3bed05d9baaa2dcd8ba83e86b6637e55c7d3a","unresolved":false,"context_lines":[{"line_number":20,"context_line":"* auth_strategy is not relevant in the [placement] section of a"},{"line_number":21,"context_line":"  nova process"},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"The name of the function is maintained, in case there are plugins which"},{"line_number":24,"context_line":"call it, but a comment is added to indicate that other services besides"},{"line_number":25,"context_line":"nova compute (such as the cell conductor) may use the function."},{"line_number":26,"context_line":""},{"line_number":27,"context_line":"Change-Id: I4a46b6460596e9a445bd90de2d52dbb71fb963df"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"bfdaf3ff_8eaf10e2","line":24,"range":{"start_line":23,"start_character":58,"end_line":24,"end_character":7},"in_reply_to":"bfdaf3ff_b3a35e9e","updated":"2019-01-16 15:10:53.000000000","message":"Fair enough. Being me, I had to ask :P","commit_id":"16a10d7435be54c97982b93bbc07686ebeb536ac"}],"lib/placement":[{"author":{"_account_id":7118,"name":"Ian Wienand","email":"iwienand@redhat.com","username":"iwienand"},"change_message_id":"48657452f231a7df7e973aeddea87422258d96ff","unresolved":false,"context_lines":[{"line_number":93,"context_line":"    \" -i $placement_api_apache_conf"},{"line_number":94,"context_line":"}"},{"line_number":95,"context_line":""},{"line_number":96,"context_line":"function configure_placement_nova_compute {"},{"line_number":97,"context_line":"    # Use the provided config file path or default to $NOVA_CONF."},{"line_number":98,"context_line":"    local conf\u003d${1:-$NOVA_CONF}"},{"line_number":99,"context_line":"    iniset $conf placement auth_type \"password\""}],"source_content_type":"application/x-shellscript","patch_set":1,"id":"9fdfeff1_b294e845","side":"PARENT","line":96,"updated":"2019-01-22 20:14:21.000000000","message":"hrm, I noticed that [1] calls \"configure_placement\" without including lib/nova ... but then [2] seems fine.  Do we care?\n\n[1] http://git.openstack.org/cgit/openstack-dev/grenade/tree/projects/60_nova/from-newton/upgrade-nova\n[2] http://git.openstack.org/cgit/openstack-dev/grenade/tree/projects/60_nova/from-rocky/upgrade-nova","commit_id":"772ade5368ff124d219f9e55b61bb9bc763e47a7"},{"author":{"_account_id":11564,"name":"Chris Dent","email":"cdent@anticdent.org","username":"chdent"},"change_message_id":"203212fb7220c9d2082a0152c83bfec066bc68f4","unresolved":false,"context_lines":[{"line_number":93,"context_line":"    \" -i $placement_api_apache_conf"},{"line_number":94,"context_line":"}"},{"line_number":95,"context_line":""},{"line_number":96,"context_line":"function configure_placement_nova_compute {"},{"line_number":97,"context_line":"    # Use the provided config file path or default to $NOVA_CONF."},{"line_number":98,"context_line":"    local conf\u003d${1:-$NOVA_CONF}"},{"line_number":99,"context_line":"    iniset $conf placement auth_type \"password\""}],"source_content_type":"application/x-shellscript","patch_set":1,"id":"9fdfeff1_065c9923","side":"PARENT","line":96,"in_reply_to":"9fdfeff1_b294e845","updated":"2019-01-22 20:51:35.000000000","message":"In from-newton, the target devstack will be ocata-based, where the function is still in the same place, yeah? So should be okay?","commit_id":"772ade5368ff124d219f9e55b61bb9bc763e47a7"}]}
