)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":6951,"name":"Brandon Logan","email":"brandon.logan@rackspace.com","username":"brandon-logan"},"change_message_id":"e7f6d06ad9762d5ddf18e04d70ff0da8ac1c7fe6","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     Miguel Angel Ajo \u003cmangelajo@redhat.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2016-06-20 11:20:56 +0200"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Allow deploying secondary nodes with no lbaas/neutron"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"This commit introduces a new parameter \"OCTAVIA_NODE\", which"},{"line_number":10,"context_line":"is standalone by default. Only the main (for ha) or standalone"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":16,"id":"5a9d85d2_59fd8939","line":7,"range":{"start_line":7,"start_character":16,"end_line":7,"end_character":31},"updated":"2016-06-27 18:59:39.000000000","message":"secondary api nodes? controller (worker) nodes?  All of them? Could you be more specific.  The API processes can be on two different nodes and there can be a controller worker process on any number of nodes as well.  I think its the same for the health manager and house keeping processes too.","commit_id":"a3b35e24e237601276a677aeecf0674559502add"},{"author":{"_account_id":8788,"name":"Miguel Angel Ajo","email":"mangelajo@redhat.com","username":"mangelajo"},"change_message_id":"7431e53218abd77dfc45c3edface9764b7d75647","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     Miguel Angel Ajo \u003cmangelajo@redhat.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2016-06-20 11:20:56 +0200"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Allow deploying secondary nodes with no lbaas/neutron"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"This commit introduces a new parameter \"OCTAVIA_NODE\", which"},{"line_number":10,"context_line":"is standalone by default. Only the main (for ha) or standalone"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":16,"id":"3aaa91ec_d125d05c","line":7,"range":{"start_line":7,"start_character":16,"end_line":7,"end_character":31},"in_reply_to":"5a9d85d2_59fd8939","updated":"2016-06-28 08:26:52.000000000","message":"You can actually do any combination, with the configuration knobs, the secondary nodes can be only api, or controllers too, it leaves freedom to setup any combination.\n\nI will elaborate the rest of the commit message a bit more.","commit_id":"a3b35e24e237601276a677aeecf0674559502add"},{"author":{"_account_id":6951,"name":"Brandon Logan","email":"brandon.logan@rackspace.com","username":"brandon-logan"},"change_message_id":"e7f6d06ad9762d5ddf18e04d70ff0da8ac1c7fe6","unresolved":false,"context_lines":[{"line_number":7,"context_line":"Allow deploying secondary nodes with no lbaas/neutron"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"This commit introduces a new parameter \"OCTAVIA_NODE\", which"},{"line_number":10,"context_line":"is standalone by default. Only the main (for ha) or standalone"},{"line_number":11,"context_line":"nodes create resources like accounts, the management network,"},{"line_number":12,"context_line":"images, etc."},{"line_number":13,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":16,"id":"5a9d85d2_79c165e4","line":10,"range":{"start_line":10,"start_character":52,"end_line":10,"end_character":62},"updated":"2016-06-27 18:59:39.000000000","message":"in the code you have it named single.  I do prefer standalone better.","commit_id":"a3b35e24e237601276a677aeecf0674559502add"},{"author":{"_account_id":8788,"name":"Miguel Angel Ajo","email":"mangelajo@redhat.com","username":"mangelajo"},"change_message_id":"7431e53218abd77dfc45c3edface9764b7d75647","unresolved":false,"context_lines":[{"line_number":7,"context_line":"Allow deploying secondary nodes with no lbaas/neutron"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"This commit introduces a new parameter \"OCTAVIA_NODE\", which"},{"line_number":10,"context_line":"is standalone by default. Only the main (for ha) or standalone"},{"line_number":11,"context_line":"nodes create resources like accounts, the management network,"},{"line_number":12,"context_line":"images, etc."},{"line_number":13,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":16,"id":"3aaa91ec_31eed4ec","line":10,"range":{"start_line":10,"start_character":52,"end_line":10,"end_character":62},"in_reply_to":"5a9d85d2_79c165e4","updated":"2016-06-28 08:26:52.000000000","message":"Oh, thank you, I\u0027ll fix that.","commit_id":"a3b35e24e237601276a677aeecf0674559502add"}],"devstack/plugin.sh":[{"author":{"_account_id":8788,"name":"Miguel Angel Ajo","email":"mangelajo@redhat.com","username":"mangelajo"},"change_message_id":"c15be79c01e72066c77c7e5db8c005e7f7799d63","unresolved":false,"context_lines":[{"line_number":139,"context_line":"}"},{"line_number":140,"context_line":""},{"line_number":141,"context_line":"function create_mgmt_network_interface {"},{"line_number":142,"context_line":"    id_and_mac\u003d$(neutron port-create --name octavia-health-manager-listen-port --security-group lb-mgmt-sec-grp --binding:host_id\u003d$(hostname) lb-mgmt-net | awk \u0027/ id | mac_address / {print $4}\u0027)"},{"line_number":143,"context_line":"    id_and_mac\u003d($id_and_mac)"},{"line_number":144,"context_line":"    MGMT_PORT_ID\u003d${id_and_mac[0]}"},{"line_number":145,"context_line":"    MGMT_PORT_MAC\u003d${id_and_mac[1]}"}],"source_content_type":"text/x-sh","patch_set":13,"id":"7aa08908_a5947b36","side":"PARENT","line":142,"range":{"start_line":142,"start_character":79,"end_line":142,"end_character":111},"updated":"2016-06-09 08:54:45.000000000","message":"yikes, this is removed accidentally in the merge conflict. Will fix.","commit_id":"177d7c7f315fff5f16f8dcd35eeb94533a304647"},{"author":{"_account_id":8788,"name":"Miguel Angel Ajo","email":"mangelajo@redhat.com","username":"mangelajo"},"change_message_id":"4da1dd4246114979e4e45e46fc4d8eb9e4e25f55","unresolved":false,"context_lines":[{"line_number":141,"context_line":"}"},{"line_number":142,"context_line":""},{"line_number":143,"context_line":"function create_mgmt_network_interface {"},{"line_number":144,"context_line":"    id_and_mac\u003d$(neutron port-create --name octavia-health-manager-listen-port --security-group lb-mgmt-sec-grp --binding:host_id\u003d$(hostname) lb-mgmt-net | awk \u0027/ id | mac_address / {print $4}\u0027)"},{"line_number":145,"context_line":"    id_and_mac\u003d($id_and_mac)"},{"line_number":146,"context_line":"    MGMT_PORT_ID\u003d${id_and_mac[0]}"},{"line_number":147,"context_line":"    MGMT_PORT_MAC\u003d${id_and_mac[1]}"}],"source_content_type":"text/x-sh","patch_set":14,"id":"7aa08908_ef240b0e","side":"PARENT","line":144,"range":{"start_line":144,"start_character":79,"end_line":144,"end_character":111},"updated":"2016-06-13 09:41:09.000000000","message":"yikes, fixing.","commit_id":"a4490d9ebd92ec495329092f795fcefa98d9d2d6"},{"author":{"_account_id":7293,"name":"Elena Ezhova","email":"ezhovaelena19@gmail.com","username":"elena"},"change_message_id":"3716e2019b9ae385c6d84bded6136b4d09fbc40d","unresolved":false,"context_lines":[{"line_number":298,"context_line":"        fi"},{"line_number":299,"context_line":""},{"line_number":300,"context_line":"        # Check if an amphora image is already loaded"},{"line_number":301,"context_line":"        AMPHORA_IMAGE_NAME\u003d$(nova image-list | awk \u0027/ amphora-x64-haproxy / {print $4}\u0027)"},{"line_number":302,"context_line":"        export AMPHORA_IMAGE_NAME"},{"line_number":303,"context_line":""},{"line_number":304,"context_line":"        if [ \"$DISABLE_AMP_IMAGE_BUILD\" \u003d\u003d \u0027True\u0027 ]; then"}],"source_content_type":"text/x-sh","patch_set":18,"id":"1aa78d24_aef70e8b","line":301,"range":{"start_line":301,"start_character":29,"end_line":301,"end_character":33},"updated":"2016-07-08 14:54:05.000000000","message":"Please use glance image-list","commit_id":"1d93c7a549a13602fad92640db9d4748380018b0"},{"author":{"_account_id":14591,"name":"Lubosz Kosnik (diltram)","email":"lubosz.kosnik@intel.com","username":"diltram"},"change_message_id":"d8f8ded232e0ab38ec6e49394a4e9556a9bafd6c","unresolved":false,"context_lines":[{"line_number":298,"context_line":"        fi"},{"line_number":299,"context_line":""},{"line_number":300,"context_line":"        # Check if an amphora image is already loaded"},{"line_number":301,"context_line":"        AMPHORA_IMAGE_NAME\u003d$(nova image-list | awk \u0027/ amphora-x64-haproxy / {print $4}\u0027)"},{"line_number":302,"context_line":"        export AMPHORA_IMAGE_NAME"},{"line_number":303,"context_line":""},{"line_number":304,"context_line":"        if [ \"$DISABLE_AMP_IMAGE_BUILD\" \u003d\u003d \u0027True\u0027 ]; then"}],"source_content_type":"text/x-sh","patch_set":18,"id":"1aa78d24_3d498e8f","line":301,"range":{"start_line":301,"start_character":29,"end_line":301,"end_character":33},"in_reply_to":"1aa78d24_aef70e8b","updated":"2016-07-08 16:12:55.000000000","message":"Why we\u0027re not using openstack client instead of separate ones?","commit_id":"1d93c7a549a13602fad92640db9d4748380018b0"},{"author":{"_account_id":8788,"name":"Miguel Angel Ajo","email":"mangelajo@redhat.com","username":"mangelajo"},"change_message_id":"c70dbe66d0e7f9d7e8da67829110a723274db040","unresolved":false,"context_lines":[{"line_number":298,"context_line":"        fi"},{"line_number":299,"context_line":""},{"line_number":300,"context_line":"        # Check if an amphora image is already loaded"},{"line_number":301,"context_line":"        AMPHORA_IMAGE_NAME\u003d$(nova image-list | awk \u0027/ amphora-x64-haproxy / {print $4}\u0027)"},{"line_number":302,"context_line":"        export AMPHORA_IMAGE_NAME"},{"line_number":303,"context_line":""},{"line_number":304,"context_line":"        if [ \"$DISABLE_AMP_IMAGE_BUILD\" \u003d\u003d \u0027True\u0027 ]; then"}],"source_content_type":"text/x-sh","patch_set":18,"id":"1aa78d24_e528f587","line":301,"range":{"start_line":301,"start_character":29,"end_line":301,"end_character":33},"in_reply_to":"1aa78d24_aef70e8b","updated":"2016-07-09 11:33:25.000000000","message":"oh, how did I revert that, probably through rebase, thanks, fixing!","commit_id":"1d93c7a549a13602fad92640db9d4748380018b0"}],"devstack/samples/multinode/Vagrantfile":[{"author":{"_account_id":6732,"name":"Lingxian Kong","email":"anlin.kong@gmail.com","username":"kong"},"change_message_id":"52ff2e26e9ee102488652e80a3e4bb234ee7c46e","unresolved":false,"context_lines":[{"line_number":6,"context_line":"Vagrant.configure(2) do |config|"},{"line_number":7,"context_line":""},{"line_number":8,"context_line":"  config.vm.define \u0027main\u0027 do |main|"},{"line_number":9,"context_line":"\tconfigure_providers(main.vm)"},{"line_number":10,"context_line":"        main.vm.network \"private_network\", ip:\"192.168.42.10\""},{"line_number":11,"context_line":"        main.vm.hostname \u003d \"main\""},{"line_number":12,"context_line":"\tmain.vm.provision \"shell\", privileged: false, inline: \u003c\u003c-SHELL"}],"source_content_type":"application/octet-stream","patch_set":12,"id":"7aa08908_de377cae","line":9,"updated":"2016-06-07 02:45:09.000000000","message":"please use spaces instead of tab","commit_id":"9b8151e43cb1829f296a8d9e3518fdad5613ede6"},{"author":{"_account_id":8788,"name":"Miguel Angel Ajo","email":"mangelajo@redhat.com","username":"mangelajo"},"change_message_id":"8fc4766be2e1dbacca4910785b307c6fef906c11","unresolved":false,"context_lines":[{"line_number":6,"context_line":"Vagrant.configure(2) do |config|"},{"line_number":7,"context_line":""},{"line_number":8,"context_line":"  config.vm.define \u0027main\u0027 do |main|"},{"line_number":9,"context_line":"\tconfigure_providers(main.vm)"},{"line_number":10,"context_line":"        main.vm.network \"private_network\", ip:\"192.168.42.10\""},{"line_number":11,"context_line":"        main.vm.hostname \u003d \"main\""},{"line_number":12,"context_line":"\tmain.vm.provision \"shell\", privileged: false, inline: \u003c\u003c-SHELL"}],"source_content_type":"application/octet-stream","patch_set":12,"id":"7aa08908_6d64d548","line":9,"in_reply_to":"7aa08908_de377cae","updated":"2016-06-07 08:06:40.000000000","message":"Ack, I will change it.","commit_id":"9b8151e43cb1829f296a8d9e3518fdad5613ede6"}],"devstack/samples/multinode/local-2.conf":[{"author":{"_account_id":6732,"name":"Lingxian Kong","email":"anlin.kong@gmail.com","username":"kong"},"change_message_id":"52ff2e26e9ee102488652e80a3e4bb234ee7c46e","unresolved":false,"context_lines":[{"line_number":48,"context_line":"enable_service o-api"},{"line_number":49,"context_line":"enable_service o-cw"},{"line_number":50,"context_line":"enable_service o-hm"},{"line_number":51,"context_line":"enable_service o-hk"},{"line_number":52,"context_line":""},{"line_number":53,"context_line":"OCTAVIA_USE_PREGENERATED_CERTS\u003dTrue"},{"line_number":54,"context_line":"OCTAVIA_USE_PREGENERATED_SSH_KEY\u003dTrue"}],"source_content_type":"text/plain","patch_set":12,"id":"7aa08908_be08b0da","line":51,"updated":"2016-06-07 02:45:09.000000000","message":"do we need to run house-keeping process on secondary node? There may be race condition when it decide how many amphroae need to be created.","commit_id":"9b8151e43cb1829f296a8d9e3518fdad5613ede6"},{"author":{"_account_id":8788,"name":"Miguel Angel Ajo","email":"mangelajo@redhat.com","username":"mangelajo"},"change_message_id":"ef30c3d34fe909cd8ea0e366d8870782afe06b55","unresolved":false,"context_lines":[{"line_number":48,"context_line":"enable_service o-api"},{"line_number":49,"context_line":"enable_service o-cw"},{"line_number":50,"context_line":"enable_service o-hm"},{"line_number":51,"context_line":"enable_service o-hk"},{"line_number":52,"context_line":""},{"line_number":53,"context_line":"OCTAVIA_USE_PREGENERATED_CERTS\u003dTrue"},{"line_number":54,"context_line":"OCTAVIA_USE_PREGENERATED_SSH_KEY\u003dTrue"}],"source_content_type":"text/plain","patch_set":12,"id":"7aa08908_2ffe13ae","line":51,"in_reply_to":"7aa08908_6d99751f","updated":"2016-06-13 09:29:44.000000000","message":"I added a note here for now, and let\u0027s try to fix it.","commit_id":"9b8151e43cb1829f296a8d9e3518fdad5613ede6"},{"author":{"_account_id":8788,"name":"Miguel Angel Ajo","email":"mangelajo@redhat.com","username":"mangelajo"},"change_message_id":"8fc4766be2e1dbacca4910785b307c6fef906c11","unresolved":false,"context_lines":[{"line_number":48,"context_line":"enable_service o-api"},{"line_number":49,"context_line":"enable_service o-cw"},{"line_number":50,"context_line":"enable_service o-hm"},{"line_number":51,"context_line":"enable_service o-hk"},{"line_number":52,"context_line":""},{"line_number":53,"context_line":"OCTAVIA_USE_PREGENERATED_CERTS\u003dTrue"},{"line_number":54,"context_line":"OCTAVIA_USE_PREGENERATED_SSH_KEY\u003dTrue"}],"source_content_type":"text/plain","patch_set":12,"id":"7aa08908_6d99751f","line":51,"in_reply_to":"7aa08908_be08b0da","updated":"2016-06-07 08:06:40.000000000","message":"Thanks for pointing this out.\n\nThat\u0027s the kind of race conditions I want to surface, look at, and fix by this.\n\nIf we want a really ha service we may need to fix those in the services themselves.\n\nDo you think there\u0027s a reasonable way to fix such thing from inside the house keeper?.","commit_id":"9b8151e43cb1829f296a8d9e3518fdad5613ede6"},{"author":{"_account_id":6732,"name":"Lingxian Kong","email":"anlin.kong@gmail.com","username":"kong"},"change_message_id":"52ff2e26e9ee102488652e80a3e4bb234ee7c46e","unresolved":false,"context_lines":[{"line_number":56,"context_line":"OCTAVIA_NODE\u003dsecond"},{"line_number":57,"context_line":""},{"line_number":58,"context_line":"# we are not enabling the mysql service here,"},{"line_number":59,"context_line":"# but we need the connection string constructed "},{"line_number":60,"context_line":"DATABASE_TYPE\u003dmysql"},{"line_number":61,"context_line":""},{"line_number":62,"context_line":"Q_PLUGIN\u003dml2"}],"source_content_type":"text/plain","patch_set":12,"id":"7aa08908_3e47a01e","line":59,"updated":"2016-06-07 02:45:09.000000000","message":"one space here.","commit_id":"9b8151e43cb1829f296a8d9e3518fdad5613ede6"},{"author":{"_account_id":8788,"name":"Miguel Angel Ajo","email":"mangelajo@redhat.com","username":"mangelajo"},"change_message_id":"8fc4766be2e1dbacca4910785b307c6fef906c11","unresolved":false,"context_lines":[{"line_number":56,"context_line":"OCTAVIA_NODE\u003dsecond"},{"line_number":57,"context_line":""},{"line_number":58,"context_line":"# we are not enabling the mysql service here,"},{"line_number":59,"context_line":"# but we need the connection string constructed "},{"line_number":60,"context_line":"DATABASE_TYPE\u003dmysql"},{"line_number":61,"context_line":""},{"line_number":62,"context_line":"Q_PLUGIN\u003dml2"}],"source_content_type":"text/plain","patch_set":12,"id":"7aa08908_ada35d4e","line":59,"in_reply_to":"7aa08908_3e47a01e","updated":"2016-06-07 08:06:40.000000000","message":"Thank you Lingxian.","commit_id":"9b8151e43cb1829f296a8d9e3518fdad5613ede6"}],"devstack/samples/providers.rb":[{"author":{"_account_id":10850,"name":"German Eichberger","email":"german.eichberger@gmail.com","username":"german"},"change_message_id":"fdbb16513971465de1997feaf19c84c0c5c7d274","unresolved":false,"context_lines":[{"line_number":19,"context_line":"     lb.cpus \u003d VM_CPUS"},{"line_number":20,"context_line":"     lb.suspend_mode \u003d \u0027managedsave\u0027"},{"line_number":21,"context_line":"  end"},{"line_number":22,"context_line":"end"}],"source_content_type":"text/x-ruby","patch_set":17,"id":"1aa78d24_acd11b25","line":22,"updated":"2016-07-07 14:09:30.000000000","message":"I have VMWare on my Mac but that can be added later ;-)","commit_id":"91e87514350ea4d840aaa43cda15e487af979b22"},{"author":{"_account_id":8788,"name":"Miguel Angel Ajo","email":"mangelajo@redhat.com","username":"mangelajo"},"change_message_id":"f308a69a3683bf6dd3ef0e365642c519db61c52a","unresolved":false,"context_lines":[{"line_number":19,"context_line":"     lb.cpus \u003d VM_CPUS"},{"line_number":20,"context_line":"     lb.suspend_mode \u003d \u0027managedsave\u0027"},{"line_number":21,"context_line":"  end"},{"line_number":22,"context_line":"end"}],"source_content_type":"text/x-ruby","patch_set":17,"id":"1aa78d24_0fc8e973","line":22,"in_reply_to":"1aa78d24_acd11b25","updated":"2016-07-08 12:19:14.000000000","message":"That would be great, I will also follow up making the \"single\" deployment use this definition, so we have all in one place.","commit_id":"91e87514350ea4d840aaa43cda15e487af979b22"}],"devstack/settings":[{"author":{"_account_id":6951,"name":"Brandon Logan","email":"brandon.logan@rackspace.com","username":"brandon-logan"},"change_message_id":"e7f6d06ad9762d5ddf18e04d70ff0da8ac1c7fe6","unresolved":false,"context_lines":[{"line_number":78,"context_line":""},{"line_number":79,"context_line":"OCTAVIA_USE_PREGENERATED_CERTS\u003d${OCTAVIA_USE_PREGENERATED_CERTS:-\"False\"}"},{"line_number":80,"context_line":"OCTAVIA_PREGENERATED_CERTS_DIR\u003d${OCTAVIA_PREGENERATED_CERTS_DIR:-\"${OCTAVIA_DIR}/devstack/pregenerated/certs\"}"},{"line_number":81,"context_line":"OCTAVIA_NODE\u003d${OCTAVIA_NODE:-\"single\"}"},{"line_number":82,"context_line":"OCTAVIA_CONTROLLER_IP_PORT_LIST\u003d${OCTAVIA_CONTROLLER_IP_PORT_LIST:-\"auto\"}"}],"source_content_type":"application/octet-stream","patch_set":16,"id":"5a9d85d2_59dc6912","line":81,"updated":"2016-06-27 18:59:39.000000000","message":"perhaps standalone is a better word?  I think it makes better sense than single.  You even said it in the commit message?  The only problem I see with it is the terminology clashing with octavia ha topology settings, but I think that\u0027s not too big of a deal.","commit_id":"a3b35e24e237601276a677aeecf0674559502add"},{"author":{"_account_id":8788,"name":"Miguel Angel Ajo","email":"mangelajo@redhat.com","username":"mangelajo"},"change_message_id":"7431e53218abd77dfc45c3edface9764b7d75647","unresolved":false,"context_lines":[{"line_number":78,"context_line":""},{"line_number":79,"context_line":"OCTAVIA_USE_PREGENERATED_CERTS\u003d${OCTAVIA_USE_PREGENERATED_CERTS:-\"False\"}"},{"line_number":80,"context_line":"OCTAVIA_PREGENERATED_CERTS_DIR\u003d${OCTAVIA_PREGENERATED_CERTS_DIR:-\"${OCTAVIA_DIR}/devstack/pregenerated/certs\"}"},{"line_number":81,"context_line":"OCTAVIA_NODE\u003d${OCTAVIA_NODE:-\"single\"}"},{"line_number":82,"context_line":"OCTAVIA_CONTROLLER_IP_PORT_LIST\u003d${OCTAVIA_CONTROLLER_IP_PORT_LIST:-\"auto\"}"}],"source_content_type":"application/octet-stream","patch_set":16,"id":"3aaa91ec_d18150fd","line":81,"in_reply_to":"5a9d85d2_59dc6912","updated":"2016-06-28 08:26:52.000000000","message":"I agree, probably I thought of standalone, and I ended up writing single.\n\nI will change this.","commit_id":"a3b35e24e237601276a677aeecf0674559502add"}]}
