)]}'
{"id":"openstack%2Fdevstack~77328","triplet_id":"openstack%2Fdevstack~master~If89de49878269b8a185e3a778b2fa42e3da46221","project":"openstack/devstack","branch":"master","topic":"bug/1273917-double","hashtags":[],"change_id":"If89de49878269b8a185e3a778b2fa42e3da46221","subject":"Fix logic in is_neutron_enabled","status":"ABANDONED","created":"2014-03-01 03:41:11.000000000","updated":"2014-03-04 19:25:33.000000000","total_comment_count":0,"unresolved_comment_count":0,"has_review_started":true,"meta_rev_id":"4898d1d5601c51236f7fdc5a03c9a2b546ffeb0d","_number":77328,"virtual_id_number":77328,"owner":{"_account_id":105,"name":"Kyle Mestery","email":"mestery@mestery.com","username":"mestery"},"actions":{},"labels":{"Verified":{"recommended":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"all":[{"value":1,"date":"2014-03-03 19:18:40.000000000","_account_id":3,"name":"Jenkins","username":"jenkins"},{"_account_id":105,"name":"Kyle Mestery","email":"mestery@mestery.com","username":"mestery"},{"_account_id":970,"name":"Dean Troyer","email":"dtroyer@gmail.com","username":"dtroyer"},{"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"}],"values":{"-2":"Fails","-1":"Doesn\u0027t seem to work"," 0":"No score","+1":"Works for me","+2":"Verified"},"description":"","value":1,"default_value":0,"optional":true},"Code-Review":{"disliked":{"_account_id":970,"name":"Dean Troyer","email":"dtroyer@gmail.com","username":"dtroyer"},"all":[{"value":0,"permitted_voting_range":{"min":-1,"max":1},"_account_id":3,"name":"Jenkins","username":"jenkins"},{"value":0,"date":"2014-03-04 03:18:57.000000000","permitted_voting_range":{"min":-1,"max":1},"_account_id":105,"name":"Kyle Mestery","email":"mestery@mestery.com","username":"mestery"},{"value":-1,"date":"2014-03-03 23:13:58.000000000","permitted_voting_range":{"min":-1,"max":1},"_account_id":970,"name":"Dean Troyer","email":"dtroyer@gmail.com","username":"dtroyer"},{"value":0,"permitted_voting_range":{"min":-1,"max":1},"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"}],"values":{"-2":"Do not merge","-1":"This patch needs further work before it can be merged"," 0":"No score","+1":"Looks good to me, but someone else must approve","+2":"Looks good to me (core reviewer)"},"description":"","value":-1,"default_value":0,"optional":true},"Workflow":{"all":[{"_account_id":3,"name":"Jenkins","username":"jenkins"},{"value":0,"permitted_voting_range":{"min":-1,"max":0},"_account_id":105,"name":"Kyle Mestery","email":"mestery@mestery.com","username":"mestery"},{"date":"2014-03-03 23:13:58.000000000","_account_id":970,"name":"Dean Troyer","email":"dtroyer@gmail.com","username":"dtroyer"},{"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"}],"values":{"-1":"Work in progress"," 0":"Ready for reviews","+1":"Approved"},"description":"","default_value":0,"optional":true},"Review-Priority":{"all":[{"value":0,"permitted_voting_range":{"min":0,"max":2},"_account_id":3,"name":"Jenkins","username":"jenkins"},{"value":0,"permitted_voting_range":{"min":0,"max":2},"_account_id":105,"name":"Kyle Mestery","email":"mestery@mestery.com","username":"mestery"},{"value":0,"permitted_voting_range":{"min":0,"max":2},"_account_id":970,"name":"Dean Troyer","email":"dtroyer@gmail.com","username":"dtroyer"},{"value":0,"permitted_voting_range":{"min":0,"max":2},"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"}],"values":{"-1":"Branch Freeze"," 0":"No Priority","+1":"Important Change","+2":"Gate Blocker Fix / Urgent Change"},"description":"","default_value":0,"optional":true}},"removable_reviewers":[],"reviewers":{"REVIEWER":[{"_account_id":3,"name":"Jenkins","username":"jenkins"},{"_account_id":105,"name":"Kyle Mestery","email":"mestery@mestery.com","username":"mestery"},{"_account_id":970,"name":"Dean Troyer","email":"dtroyer@gmail.com","username":"dtroyer"},{"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"}]},"pending_reviewers":{},"reviewer_updates":[{"updated":"2014-03-02 11:39:52.000000000","updated_by":{"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"},"reviewer":{"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"},"state":"REVIEWER"},{"updated":"2014-03-03 19:18:40.000000000","updated_by":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"reviewer":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"state":"REVIEWER"},{"updated":"2014-03-03 23:13:58.000000000","updated_by":{"_account_id":970,"name":"Dean Troyer","email":"dtroyer@gmail.com","username":"dtroyer"},"reviewer":{"_account_id":970,"name":"Dean Troyer","email":"dtroyer@gmail.com","username":"dtroyer"},"state":"REVIEWER"}],"messages":[{"id":"4e8be5d759e772201591f55ae19bee93f0bdbd8d","author":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"date":"2014-03-01 03:41:12.000000000","message":"Patch Set 1:\n\nStarting check jobs.\nhttp://status.openstack.org/zuul/","accounts_in_message":[],"_revision_number":1},{"id":"11a5345430d047d416a48abf95b1340d42256ff9","author":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"date":"2014-03-01 04:41:46.000000000","message":"Patch Set 1: Works for me\n\nBuild succeeded.\n\n- gate-devstack-bash8 http://logs.openstack.org/28/77328/1/check/gate-devstack-bash8/6db5dc0 : SUCCESS in 18s\n- check-devstack-dsvm-cells http://logs.openstack.org/28/77328/1/check/check-devstack-dsvm-cells/ec9b31a : SUCCESS in 15m 46s\n- check-tempest-dsvm-full http://logs.openstack.org/28/77328/1/check/check-tempest-dsvm-full/ac1352d : SUCCESS in 46m 01s\n- check-tempest-dsvm-postgres-full http://logs.openstack.org/28/77328/1/check/check-tempest-dsvm-postgres-full/0a627cf : SUCCESS in 45m 38s\n- check-tempest-dsvm-neutron http://logs.openstack.org/28/77328/1/check/check-tempest-dsvm-neutron/580127d : SUCCESS in 37m 36s\n- check-tempest-dsvm-neutron-full http://logs.openstack.org/28/77328/1/check/check-tempest-dsvm-neutron-full/40c12c0 : SUCCESS in 43m 45s (non-voting)\n- gate-tempest-dsvm-large-ops http://logs.openstack.org/28/77328/1/check/gate-tempest-dsvm-large-ops/dc51c58 : SUCCESS in 18m 53s\n- gate-tempest-dsvm-neutron-large-ops http://logs.openstack.org/28/77328/1/check/gate-tempest-dsvm-neutron-large-ops/2877472 : SUCCESS in 15m 23s\n- check-tempest-dsvm-neutron-heat-slow http://logs.openstack.org/28/77328/1/check/check-tempest-dsvm-neutron-heat-slow/c8fb33a : SUCCESS in 26m 24s (non-voting)\n- check-tempest-dsvm-cells-full http://logs.openstack.org/28/77328/1/check/check-tempest-dsvm-cells-full/9df006f : SUCCESS in 45m 27s (non-voting)\n- check-grenade-dsvm http://logs.openstack.org/28/77328/1/check/check-grenade-dsvm/34e99b6 : SUCCESS in 36m 45s\n- check-swift-dsvm-functional http://logs.openstack.org/28/77328/1/check/check-swift-dsvm-functional/c623106 : SUCCESS in 11m 24s\n- check-devstack-dsvm-neutron http://logs.openstack.org/28/77328/1/check/check-devstack-dsvm-neutron/5028ced : FAILURE in 15m 43s (non-voting)\n- check-tempest-dsvm-ironic-nv http://logs.openstack.org/28/77328/1/check/check-tempest-dsvm-ironic-nv/2771c36 : SUCCESS in 28m 07s (non-voting)\n- check-tempest-dsvm-ironic-postgres-nv http://logs.openstack.org/28/77328/1/check/check-tempest-dsvm-ironic-postgres-nv/1ee75aa : SUCCESS in 30m 17s (non-voting)\n- check-tempest-dsvm-savanna-full-nv http://logs.openstack.org/28/77328/1/check/check-tempest-dsvm-savanna-full-nv/1884d95 : SUCCESS in 52m 51s (non-voting)\n- check-tempest-dsvm-savanna-postgres-nv http://logs.openstack.org/28/77328/1/check/check-tempest-dsvm-savanna-postgres-nv/8ceb446 : SUCCESS in 20m 56s (non-voting)\n- check-tempest-dsvm-savanna-neutron-nv http://logs.openstack.org/28/77328/1/check/check-tempest-dsvm-savanna-neutron-nv/ea7dbab : SUCCESS in 31m 02s (non-voting)\n","accounts_in_message":[],"_revision_number":1},{"id":"7a47507a01faa44430beca31b51b5d91f0a1e760","author":{"_account_id":10385,"name":"Citrix XenServer CI","username":"citrix_xenserver_ci","tags":["SERVICE_USER"]},"date":"2014-03-01 04:50:38.000000000","message":"Patch Set 1:\n\nPassed using XenAPI driver with XenServer 6.2: Logs at http://ca.downloads.xensource.com/OpenStack/xenserver-ci/refs/changes/28/77328/1/\n\nStandard recheck supported; use \"xenserver recheck\" to trigger only xenserver re-check.  XenServer CI contact: openstack@citrix.com.","accounts_in_message":[],"_revision_number":1},{"id":"35644a32988fd430b2dbca52bfd42c7eb6f6824d","author":{"_account_id":970,"name":"Dean Troyer","email":"dtroyer@gmail.com","username":"dtroyer"},"date":"2014-03-01 05:10:06.000000000","message":"Patch Set 1: I would prefer that you didn\u0027t merge this\n\nTwo things:\n- \u0027neutron\u0027 should not be used in ENABLED_SERVICES, nothing (should) trigger on it being present, specific service names should be used\n- is_service_enabled() first does a direct match, so if \u0027neutron\u0027 is in ENABLED_SERVICES it will hit there before is_neutron_enabled() is aver called","accounts_in_message":[],"_revision_number":1},{"id":"923cbcd1a877b77159255c3d1b93b3ca13329806","author":{"_account_id":105,"name":"Kyle Mestery","email":"mestery@mestery.com","username":"mestery"},"date":"2014-03-02 01:09:46.000000000","message":"Patch Set 1:\n\nThanks for the comments dtroyer! So, in looking at is_service_enabled() in functions-common, what I see is that it does first check the base service, in this case neutron, and it sets \"enabled\" to \"0\". However, then it calls \"is_neutron_enabled, which only checks for \"q-\" being enabled, which then sets enabled to \"1\", causing this to fail. I think the fundamental problem is there is no way to tell a compute host it\u0027s running Neutron without any neutron services as this is structured. Thus, I think this patch is correct. What do you think?","accounts_in_message":[],"_revision_number":1},{"id":"2583f310d110fa94f4744b9a19e22f65d9b3e638","author":{"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"},"date":"2014-03-02 11:39:52.000000000","message":"Patch Set 1: I would prefer that you didn\u0027t merge this\n\nso what\u0027s actually going to be running on the compute node in the opendaylight case? (Maybe there needs to be a picture here?)\n\nwhat will actually be manipulating the host level network and creating vifs and routes?\n\nBecause \u0027neutron\u0027 isn\u0027t something that\u0027s typically in the enabled_services list, so I think we need to come back to more base principles here and think about what we actually expect on the compute hosts.","accounts_in_message":[],"_revision_number":1},{"id":"9d59d14bf4e2d310962cec1c5d61f83a1a5cfad6","author":{"_account_id":105,"name":"Kyle Mestery","email":"mestery@mestery.com","username":"mestery"},"date":"2014-03-02 13:39:49.000000000","message":"Patch Set 1:\n\nFor my testing, nova-comptue is all that\u0027s running. OpenDaylight uses OpenFlow and OVSDB to talk to each compute host to program networking on the host. libvirt sets the VIF up.\n\nThe basic issue here is that in the case of using Neutron with OpenDaylight, there are no Neutron services configured on the host itself. devstack currently makes that assumption. which is thus broken in this case.","accounts_in_message":[],"_revision_number":1},{"id":"f75a8c859e44db7be8d4a18875b2fe84e4b14e89","author":{"_account_id":105,"name":"Kyle Mestery","email":"mestery@mestery.com","username":"mestery"},"date":"2014-03-02 14:59:34.000000000","message":"Patch Set 1:\n\nI should be clear: A deployment of Neutron with OpenDaylight will have no Neutron services running on compute hosts. So when I said \"my testing\", I meant my development of OpenDaylight integration with Neutron.","accounts_in_message":[],"_revision_number":1},{"id":"e6cdf033efcee036aa51b96325493dadb7004803","author":{"_account_id":105,"name":"Kyle Mestery","email":"mestery@mestery.com","username":"mestery"},"date":"2014-03-03 18:16:52.000000000","message":"Uploaded patch set 2.","accounts_in_message":[],"_revision_number":2},{"id":"1b0e023703b92106868cf6cf822f566effac1b9c","author":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"date":"2014-03-03 18:16:53.000000000","message":"Patch Set 2:\n\nStarting check jobs.\nhttp://status.openstack.org/zuul/","accounts_in_message":[],"_revision_number":2},{"id":"5d99f96fed54e76b6a39b19765992a4b2c1b7707","author":{"_account_id":5494,"name":"Trivial Rebase","email":"trivial-rebase@review.openstack.org","username":"trivial-rebase"},"date":"2014-03-03 18:17:08.000000000","message":"Patch Set 2:\n\nNew patchset patch-id matches previous patchset, but commit message has changed.","accounts_in_message":[],"_revision_number":2},{"id":"2c345d45e25f411c38801d35fdc28ae162e14379","author":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"date":"2014-03-03 19:18:40.000000000","message":"Patch Set 2: Works for me\n\nBuild succeeded.\n\n- gate-devstack-bash8 http://logs.openstack.org/28/77328/2/check/gate-devstack-bash8/674c1ab : SUCCESS in 26s\n- check-devstack-dsvm-cells http://logs.openstack.org/28/77328/2/check/check-devstack-dsvm-cells/4bcb411 : SUCCESS in 19m 40s\n- check-tempest-dsvm-full http://logs.openstack.org/28/77328/2/check/check-tempest-dsvm-full/881e184 : SUCCESS in 53m 56s\n- check-tempest-dsvm-postgres-full http://logs.openstack.org/28/77328/2/check/check-tempest-dsvm-postgres-full/3acef50 : SUCCESS in 1h 01m 29s\n- check-tempest-dsvm-neutron http://logs.openstack.org/28/77328/2/check/check-tempest-dsvm-neutron/1887dac : SUCCESS in 30m 41s\n- check-tempest-dsvm-neutron-full http://logs.openstack.org/28/77328/2/check/check-tempest-dsvm-neutron-full/709afbc : SUCCESS in 1h 00m 56s (non-voting)\n- gate-tempest-dsvm-large-ops http://logs.openstack.org/28/77328/2/check/gate-tempest-dsvm-large-ops/5744d32 : SUCCESS in 14m 52s\n- gate-tempest-dsvm-neutron-large-ops http://logs.openstack.org/28/77328/2/check/gate-tempest-dsvm-neutron-large-ops/7f5f47b : SUCCESS in 15m 29s\n- check-tempest-dsvm-neutron-heat-slow http://logs.openstack.org/28/77328/2/check/check-tempest-dsvm-neutron-heat-slow/6605ebb : FAILURE in 27m 38s (non-voting)\n- check-tempest-dsvm-cells-full http://logs.openstack.org/28/77328/2/check/check-tempest-dsvm-cells-full/f11f94a : SUCCESS in 51m 01s (non-voting)\n- check-grenade-dsvm http://logs.openstack.org/28/77328/2/check/check-grenade-dsvm/fe39314 : SUCCESS in 30m 43s\n- check-swift-dsvm-functional http://logs.openstack.org/28/77328/2/check/check-swift-dsvm-functional/e336817 : SUCCESS in 17m 08s\n- check-devstack-dsvm-neutron http://logs.openstack.org/28/77328/2/check/check-devstack-dsvm-neutron/d884393 : FAILURE in 17m 34s (non-voting)\n- check-tempest-dsvm-ironic-nv http://logs.openstack.org/28/77328/2/check/check-tempest-dsvm-ironic-nv/217c065 : SUCCESS in 35m 54s (non-voting)\n- check-tempest-dsvm-ironic-postgres-nv http://logs.openstack.org/28/77328/2/check/check-tempest-dsvm-ironic-postgres-nv/1425227 : SUCCESS in 28m 40s (non-voting)\n- check-tempest-dsvm-savanna-full-nv http://logs.openstack.org/28/77328/2/check/check-tempest-dsvm-savanna-full-nv/8b5bd59 : SUCCESS in 47m 04s (non-voting)\n- check-tempest-dsvm-savanna-postgres-nv http://logs.openstack.org/28/77328/2/check/check-tempest-dsvm-savanna-postgres-nv/cff82f8 : SUCCESS in 19m 00s (non-voting)\n- check-tempest-dsvm-savanna-neutron-nv http://logs.openstack.org/28/77328/2/check/check-tempest-dsvm-savanna-neutron-nv/38ced48 : SUCCESS in 32m 19s (non-voting)\n","accounts_in_message":[],"_revision_number":2},{"id":"480e1accf03f94856881e8831ee558e96970c914","author":{"_account_id":10385,"name":"Citrix XenServer CI","username":"citrix_xenserver_ci","tags":["SERVICE_USER"]},"date":"2014-03-03 21:10:43.000000000","message":"Patch Set 2:\n\nPassed using XenAPI driver with XenServer 6.2: Logs at http://ca.downloads.xensource.com/OpenStack/xenserver-ci/refs/changes/28/77328/2/\n\nStandard recheck supported; use \"xenserver recheck\" to trigger only xenserver re-check.  XenServer CI contact: openstack@citrix.com.","accounts_in_message":[],"_revision_number":2},{"id":"67e77e0d76c2297a66e94bf090d4483c253c699c","author":{"_account_id":970,"name":"Dean Troyer","email":"dtroyer@gmail.com","username":"dtroyer"},"date":"2014-03-03 23:13:58.000000000","message":"Patch Set 2: I would prefer that you didn\u0027t merge this\n\nis_neutron_enabled() is doing exactly what it is expected to do, return success if it finds any \"q-*\" service listed in ENABLED_SERVICES.  If no neutron services are configured on a compute host, then this must not say they are.\n\nPutting \u0027neutron\u0027 in ENABLED_SERVICES does nothing and should do nothing.\n\nSince you are not implementing the ODS as a Neutron plugin (as far as DevStack is concerned) you should then treat it as a system service and configure it that way, adding \u0027opendaylight\u0027 to ENABLED_SERVICES whenever you want something to know it is being used.","accounts_in_message":[],"_revision_number":2},{"id":"c2f1da40132770a384fa7413884f4f97b9082718","author":{"_account_id":105,"name":"Kyle Mestery","email":"mestery@mestery.com","username":"mestery"},"date":"2014-03-04 03:18:57.000000000","message":"Patch Set 2:\n\n@dtroyer: I tried to explain this better in an email to the list here:\n\nhttp://lists.openstack.org/pipermail/openstack-dev/2014-March/028807.html\n\nThanks for your continued reviews here!","accounts_in_message":[],"_revision_number":2},{"id":"6126ea04e6597aed8d4c35c51fa5f4900a4cd3d6","author":{"_account_id":105,"name":"Kyle Mestery","email":"mestery@mestery.com","username":"mestery"},"date":"2014-03-04 19:25:33.000000000","message":"Patch Set 2: Abandoned\n\nPer discussion with Dean and Sean, abandoning this one.","accounts_in_message":[],"_revision_number":2}],"current_revision_number":2,"current_revision":"5761e4cc7e176543b72aa51315953b8c9ad93ea9","revisions":{"66f134ce673ac0121a16565e1e207bc770bebc73":{"kind":"REWORK","_number":1,"created":"2014-03-01 03:41:11.000000000","uploader":{"_account_id":105,"name":"Kyle Mestery","email":"mestery@mestery.com","username":"mestery"},"ref":"refs/changes/28/77328/1","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/devstack","ref":"refs/changes/28/77328/1","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/devstack refs/changes/28/77328/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/devstack refs/changes/28/77328/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/devstack refs/changes/28/77328/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/devstack refs/changes/28/77328/1"}}},"commit":{"parents":[{"commit":"9bd5b9399aa08306c76b3eeb15b32fa01ba5a59f","subject":"Merge \"Preinstall yum-utils; move sudo check before install\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/devstack/commit/9bd5b9399aa08306c76b3eeb15b32fa01ba5a59f"}]}],"author":{"name":"Kyle Mestery","email":"kmestery@cisco.com","date":"2014-02-28 21:30:23.000000000","tz":0},"committer":{"name":"Kyle Mestery","email":"kmestery@cisco.com","date":"2014-02-28 21:30:23.000000000","tz":0},"subject":"Fix logic in is_neutron_enabled","message":"Fix logic in is_neutron_enabled\n\nThe logic in is_neutron_enabled needs to take into account the case where a\ncompute host is running with a control node with Neutron, but no Neutron\nagents are on the host. This is the case for OpenDaylight. In this case,\nin the local.conf for the compute node, all that will be enabled is the\n\"neutron\" service, nothing prefixed with \"q-\".\n\nChange-Id: If89de49878269b8a185e3a778b2fa42e3da46221\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/devstack/commit/66f134ce673ac0121a16565e1e207bc770bebc73"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/devstack/commit/66f134ce673ac0121a16565e1e207bc770bebc73"}]},"branch":"refs/heads/master"},"5761e4cc7e176543b72aa51315953b8c9ad93ea9":{"kind":"TRIVIAL_REBASE_WITH_MESSAGE_UPDATE","_number":2,"created":"2014-03-03 18:16:52.000000000","uploader":{"_account_id":105,"name":"Kyle Mestery","email":"mestery@mestery.com","username":"mestery"},"ref":"refs/changes/28/77328/2","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/devstack","ref":"refs/changes/28/77328/2","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/devstack refs/changes/28/77328/2 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/devstack refs/changes/28/77328/2 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/devstack refs/changes/28/77328/2 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/devstack refs/changes/28/77328/2"}}},"commit":{"parents":[{"commit":"bd9dbef9329ef4dad0a5ecb3dca29dd9a282c2dc","subject":"Merge \"use \"rabbit_hosts\" config option instead of \"rabbit_host\"\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/devstack/commit/bd9dbef9329ef4dad0a5ecb3dca29dd9a282c2dc"}]}],"author":{"name":"Kyle Mestery","email":"kmestery@cisco.com","date":"2014-02-28 21:30:23.000000000","tz":0},"committer":{"name":"Kyle Mestery","email":"kmestery@cisco.com","date":"2014-03-03 12:14:32.000000000","tz":0},"subject":"Fix logic in is_neutron_enabled","message":"Fix logic in is_neutron_enabled\n\nThe logic in is_neutron_enabled needs to take into account the case where a\ncompute host is running with a control node with Neutron, but no Neutron\nagents are on the host. This means the multi-node devstack compute nodes will\nnot have any Neutron code running on them. Modifying \"is_neutron_enabled\" to\ntake into account enabling the meta \"neutron\" service serves this purpose\nquite nicely.\n\nNote: This is the case for OpenDaylight. In this case, in the local.conf for\nthe compute node, all that will be enabled is the \"neutron\" service, nothing\nprefixed with \"q-\".\n\nChange-Id: If89de49878269b8a185e3a778b2fa42e3da46221\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/devstack/commit/5761e4cc7e176543b72aa51315953b8c9ad93ea9"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/devstack/commit/5761e4cc7e176543b72aa51315953b8c9ad93ea9"}]},"branch":"refs/heads/master"}},"requirements":[],"submit_records":[],"submit_requirements":[]}
