)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":748,"name":"Armando Migliaccio","email":"armamig@gmail.com","username":"armando-migliaccio"},"change_message_id":"42554b55e8c26e264729f74b59d0e413c7728eb7","unresolved":false,"context_lines":[{"line_number":13,"context_line":"but added for future possible use."},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"Partial-Bug: #1643451"},{"line_number":16,"context_line":"Depends-On: I0a309272ec46b8477fe57eeb676a5cd850e4d60b"},{"line_number":17,"context_line":"Change-Id: I574fc28ab010f9ba77e257ffa436054a999e8d91"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":4,"id":"1a6eadb0_f5ea2773","line":16,"updated":"2016-12-15 15:15:17.000000000","message":"IMO, no need to make this patch dependent on the neutron change. In fact I think it\u0027s almost like the opposite as that one can\u0027t be validated without this one.","commit_id":"f07b91fa0dda4c3c8c8735755f2929713d711e3a"},{"author":{"_account_id":6854,"name":"YAMAMOTO Takashi","email":"yamamoto@midokura.com","username":"yamamoto"},"change_message_id":"1477edafa95b86864e2cbd1747fcaf7fce313393","unresolved":false,"context_lines":[{"line_number":13,"context_line":"but added for future possible use."},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"Partial-Bug: #1643451"},{"line_number":16,"context_line":"Depends-On: I0a309272ec46b8477fe57eeb676a5cd850e4d60b"},{"line_number":17,"context_line":"Change-Id: I574fc28ab010f9ba77e257ffa436054a999e8d91"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":4,"id":"1a6eadb0_27dc2274","line":16,"in_reply_to":"1a6eadb0_95bd736a","updated":"2016-12-18 04:59:56.000000000","message":"at least we should make gate_hook accept this \"rally\" argument before this change.","commit_id":"f07b91fa0dda4c3c8c8735755f2929713d711e3a"},{"author":{"_account_id":748,"name":"Armando Migliaccio","email":"armamig@gmail.com","username":"armando-migliaccio"},"change_message_id":"88ea217a3c797ff38933f11e1f8834d4ea5f50bc","unresolved":false,"context_lines":[{"line_number":13,"context_line":"but added for future possible use."},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"Partial-Bug: #1643451"},{"line_number":16,"context_line":"Depends-On: I0a309272ec46b8477fe57eeb676a5cd850e4d60b"},{"line_number":17,"context_line":"Change-Id: I574fc28ab010f9ba77e257ffa436054a999e8d91"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":4,"id":"1a6eadb0_95bd736a","line":16,"in_reply_to":"1a6eadb0_f5ea2773","updated":"2016-12-15 15:15:50.000000000","message":"actually, it IS like the opposite :)","commit_id":"f07b91fa0dda4c3c8c8735755f2929713d711e3a"}],"jenkins/jobs/rally.yaml":[{"author":{"_account_id":6547,"name":"Andreas Jaeger","email":"jaegerandi@gmail.com","username":"jaegerandi"},"change_message_id":"0048bef49b2887dbf542df08be69b16e3a0f451e","unresolved":false,"context_lines":[{"line_number":109,"context_line":"          if [ \"$ZUUL_PROJECT\" \u003d \"openstack/neutron\" -a \\"},{"line_number":110,"context_line":"               \"$RALLY_SCENARIO\" \u003d \"neutron-neutron\" ]; then"},{"line_number":111,"context_line":"              # NOTE(yamamoto): Neutron rally scenario uses trunk extension"},{"line_number":112,"context_line":"              # https://github.com/openstack/neutron/blob/master/rally-jobs/neutron-neutron.yaml"},{"line_number":113,"context_line":"              export ENABLED_SERVICES+\u003dq-trunk,"},{"line_number":114,"context_line":"          fi"},{"line_number":115,"context_line":"          if [ $DEVSTACK_GATE_IRONIC -ne 0 ]; then"}],"source_content_type":"text/x-yaml","patch_set":1,"id":"1a6eadb0_8fab0dd6","line":112,"range":{"start_line":112,"start_character":24,"end_line":112,"end_character":35},"updated":"2016-12-13 18:41:47.000000000","message":"Use git.openstack.org for links. github is just a mirror","commit_id":"05575626d8e238cffab98d7399b15fa06a584984"},{"author":{"_account_id":6854,"name":"YAMAMOTO Takashi","email":"yamamoto@midokura.com","username":"yamamoto"},"change_message_id":"2345b549744af6155606ff0b9e01e73142c736fb","unresolved":false,"context_lines":[{"line_number":109,"context_line":"          if [ \"$ZUUL_PROJECT\" \u003d \"openstack/neutron\" -a \\"},{"line_number":110,"context_line":"               \"$RALLY_SCENARIO\" \u003d \"neutron-neutron\" ]; then"},{"line_number":111,"context_line":"              # NOTE(yamamoto): Neutron rally scenario uses trunk extension"},{"line_number":112,"context_line":"              # https://github.com/openstack/neutron/blob/master/rally-jobs/neutron-neutron.yaml"},{"line_number":113,"context_line":"              export ENABLED_SERVICES+\u003dq-trunk,"},{"line_number":114,"context_line":"          fi"},{"line_number":115,"context_line":"          if [ $DEVSTACK_GATE_IRONIC -ne 0 ]; then"}],"source_content_type":"text/x-yaml","patch_set":1,"id":"1a6eadb0_d3f3e79c","line":112,"range":{"start_line":112,"start_character":24,"end_line":112,"end_character":35},"in_reply_to":"1a6eadb0_8fab0dd6","updated":"2016-12-13 22:58:56.000000000","message":"Done","commit_id":"05575626d8e238cffab98d7399b15fa06a584984"},{"author":{"_account_id":748,"name":"Armando Migliaccio","email":"armamig@gmail.com","username":"armando-migliaccio"},"change_message_id":"ac27bb6a8175bf71d2fa92dbc3bf8d44516e556d","unresolved":false,"context_lines":[{"line_number":108,"context_line":"          fi"},{"line_number":109,"context_line":"          if [ \"$ZUUL_PROJECT\" \u003d \"openstack/neutron\" -a \\"},{"line_number":110,"context_line":"               \"$RALLY_SCENARIO\" \u003d \"neutron-neutron\" ]; then"},{"line_number":111,"context_line":"              # NOTE(yamamoto): Neutron rally scenario uses trunk extension"},{"line_number":112,"context_line":"              # http://git.openstack.org/cgit/openstack/neutron/tree/rally-jobs/neutron-neutron.yaml?id\u003d09bc8a724e42fed0f527b56d38c5720167031764#n308"},{"line_number":113,"context_line":"              export ENABLED_SERVICES+\u003dq-trunk,"},{"line_number":114,"context_line":"          fi"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"1a6eadb0_d7f0fc93","line":111,"updated":"2016-12-14 20:37:32.000000000","message":"this is not only redundant but furthermore this is not the place where this belongs. On the other end, this is enabled in neutron, thanks to [1]\n\n[1] https://review.openstack.org/#/c/392947/","commit_id":"a8c2475b37741ac27259f60b07fadc9c329861ca"},{"author":{"_account_id":748,"name":"Armando Migliaccio","email":"armamig@gmail.com","username":"armando-migliaccio"},"change_message_id":"930938482c23a59c1969f50216408fa7d0362da4","unresolved":false,"context_lines":[{"line_number":110,"context_line":"               \"$RALLY_SCENARIO\" \u003d \"neutron-neutron\" ]; then"},{"line_number":111,"context_line":"              # NOTE(yamamoto): Neutron rally scenario uses trunk extension"},{"line_number":112,"context_line":"              # http://git.openstack.org/cgit/openstack/neutron/tree/rally-jobs/neutron-neutron.yaml?id\u003d09bc8a724e42fed0f527b56d38c5720167031764#n308"},{"line_number":113,"context_line":"              export ENABLED_SERVICES+\u003dq-trunk,"},{"line_number":114,"context_line":"          fi"},{"line_number":115,"context_line":"          if [ $DEVSTACK_GATE_IRONIC -ne 0 ]; then"},{"line_number":116,"context_line":"              export PROJECTS\u003d\"openstack/ironic $PROJECTS\""}],"source_content_type":"text/x-yaml","patch_set":2,"id":"1a6eadb0_6ca3da00","line":113,"updated":"2016-12-14 22:04:29.000000000","message":"what if you had a set of pre and post hooks at line 168 so that we can have tighter control of neutron-repo specific setup for rally? I should probably have done that in the first place, but I got lazy :)\n\nI am willing to redeem myself, if you don\u0027t want to respin this though!","commit_id":"a8c2475b37741ac27259f60b07fadc9c329861ca"},{"author":{"_account_id":6854,"name":"YAMAMOTO Takashi","email":"yamamoto@midokura.com","username":"yamamoto"},"change_message_id":"e57fbd46506cdc4c73cfc5bb7bc186d2eab00bbe","unresolved":false,"context_lines":[{"line_number":110,"context_line":"               \"$RALLY_SCENARIO\" \u003d \"neutron-neutron\" ]; then"},{"line_number":111,"context_line":"              # NOTE(yamamoto): Neutron rally scenario uses trunk extension"},{"line_number":112,"context_line":"              # http://git.openstack.org/cgit/openstack/neutron/tree/rally-jobs/neutron-neutron.yaml?id\u003d09bc8a724e42fed0f527b56d38c5720167031764#n308"},{"line_number":113,"context_line":"              export ENABLED_SERVICES+\u003dq-trunk,"},{"line_number":114,"context_line":"          fi"},{"line_number":115,"context_line":"          if [ $DEVSTACK_GATE_IRONIC -ne 0 ]; then"},{"line_number":116,"context_line":"              export PROJECTS\u003d\"openstack/ironic $PROJECTS\""}],"source_content_type":"text/x-yaml","patch_set":2,"id":"1a6eadb0_d0f4665c","line":113,"in_reply_to":"1a6eadb0_6ca3da00","updated":"2016-12-15 12:05:28.000000000","message":"ok, let me try.","commit_id":"a8c2475b37741ac27259f60b07fadc9c329861ca"},{"author":{"_account_id":748,"name":"Armando Migliaccio","email":"armamig@gmail.com","username":"armando-migliaccio"},"change_message_id":"362528a4cc41f6f469cf5f455685c949bd40183c","unresolved":false,"context_lines":[{"line_number":161,"context_line":"          if [[ \"$ZUUL_PROJECT\" \u003d \"openstack/neutron\" -a \\"},{"line_number":162,"context_line":"                ! \"stable/mitaka stable/newton\" \u003d~ $ZUUL_BRANCH ]]; then"},{"line_number":163,"context_line":"              function gate_hook {{"},{"line_number":164,"context_line":"                  bash -xe $BASE/new/neutron/neutron/tests/contrib/gate_hook.sh rally {scenario}"},{"line_number":165,"context_line":"              }}"},{"line_number":166,"context_line":"              export -f gate_hook"},{"line_number":167,"context_line":"          fi"}],"source_content_type":"text/x-yaml","patch_set":4,"id":"1a6eadb0_d5328b5d","line":164,"updated":"2016-12-15 15:13:25.000000000","message":"this file exists in both branches, we should not make this branch dependent, though it would be a no-op for rally, unless we backport changes (which we definitely could).","commit_id":"f07b91fa0dda4c3c8c8735755f2929713d711e3a"},{"author":{"_account_id":748,"name":"Armando Migliaccio","email":"armamig@gmail.com","username":"armando-migliaccio"},"change_message_id":"e729fe256c596ff83eccd91265909dd7a6281472","unresolved":false,"context_lines":[{"line_number":161,"context_line":"          if [[ \"$ZUUL_PROJECT\" \u003d \"openstack/neutron\" -a \\"},{"line_number":162,"context_line":"                ! \"stable/mitaka stable/newton\" \u003d~ $ZUUL_BRANCH ]]; then"},{"line_number":163,"context_line":"              function gate_hook {{"},{"line_number":164,"context_line":"                  bash -xe $BASE/new/neutron/neutron/tests/contrib/gate_hook.sh rally {scenario}"},{"line_number":165,"context_line":"              }}"},{"line_number":166,"context_line":"              export -f gate_hook"},{"line_number":167,"context_line":"          fi"}],"source_content_type":"text/x-yaml","patch_set":4,"id":"1a6eadb0_72197122","line":164,"in_reply_to":"1a6eadb0_67e61a46","updated":"2016-12-18 18:45:41.000000000","message":"if we want to configure rally properly for stable branches, then we need to go back here and remove this conditional, which seems like a step we can save.\n\nAs for newton, I suppose we can go ahead with your proposed neutron\u0027s patch, but I wouldn\u0027t be overly concerned with a tiny window where the rally job is broken, as stable branch churn is way smaller than master\u0027s","commit_id":"f07b91fa0dda4c3c8c8735755f2929713d711e3a"},{"author":{"_account_id":6854,"name":"YAMAMOTO Takashi","email":"yamamoto@midokura.com","username":"yamamoto"},"change_message_id":"1477edafa95b86864e2cbd1747fcaf7fce313393","unresolved":false,"context_lines":[{"line_number":161,"context_line":"          if [[ \"$ZUUL_PROJECT\" \u003d \"openstack/neutron\" -a \\"},{"line_number":162,"context_line":"                ! \"stable/mitaka stable/newton\" \u003d~ $ZUUL_BRANCH ]]; then"},{"line_number":163,"context_line":"              function gate_hook {{"},{"line_number":164,"context_line":"                  bash -xe $BASE/new/neutron/neutron/tests/contrib/gate_hook.sh rally {scenario}"},{"line_number":165,"context_line":"              }}"},{"line_number":166,"context_line":"              export -f gate_hook"},{"line_number":167,"context_line":"          fi"}],"source_content_type":"text/x-yaml","patch_set":4,"id":"1a6eadb0_67e61a46","line":164,"in_reply_to":"1a6eadb0_d5328b5d","updated":"2016-12-18 04:59:56.000000000","message":"the file exists but on newton it rejects unknown arguments.\non mitaka it isn\u0027t appropriate. (no call of devstack-vm-gate.sh)","commit_id":"f07b91fa0dda4c3c8c8735755f2929713d711e3a"},{"author":{"_account_id":748,"name":"Armando Migliaccio","email":"armamig@gmail.com","username":"armando-migliaccio"},"change_message_id":"362528a4cc41f6f469cf5f455685c949bd40183c","unresolved":false,"context_lines":[{"line_number":164,"context_line":"                  bash -xe $BASE/new/neutron/neutron/tests/contrib/gate_hook.sh rally {scenario}"},{"line_number":165,"context_line":"              }}"},{"line_number":166,"context_line":"              export -f gate_hook"},{"line_number":167,"context_line":"          fi"},{"line_number":168,"context_line":""},{"line_number":169,"context_line":"          function post_test_hook {{"},{"line_number":170,"context_line":"              $BASE/new/rally/tests/ci/rally-gate.sh"}],"source_content_type":"text/x-yaml","patch_set":4,"id":"1a6eadb0_754457b6","line":167,"updated":"2016-12-15 15:13:25.000000000","message":"have you considered adding a post-hook too, since we\u0027re at it?","commit_id":"f07b91fa0dda4c3c8c8735755f2929713d711e3a"},{"author":{"_account_id":6854,"name":"YAMAMOTO Takashi","email":"yamamoto@midokura.com","username":"yamamoto"},"change_message_id":"67778e14224da2cc16ebf82ff76190a43637001e","unresolved":false,"context_lines":[{"line_number":164,"context_line":"                  bash -xe $BASE/new/neutron/neutron/tests/contrib/gate_hook.sh rally {scenario}"},{"line_number":165,"context_line":"              }}"},{"line_number":166,"context_line":"              export -f gate_hook"},{"line_number":167,"context_line":"          fi"},{"line_number":168,"context_line":""},{"line_number":169,"context_line":"          function post_test_hook {{"},{"line_number":170,"context_line":"              $BASE/new/rally/tests/ci/rally-gate.sh"}],"source_content_type":"text/x-yaml","patch_set":4,"id":"da4df55a_fde4dbe0","line":167,"in_reply_to":"1a6eadb0_754457b6","updated":"2016-12-27 15:11:17.000000000","message":"i considered it but it doesn\u0027t seem straightforward as the hook is taken by rally-gate.sh.","commit_id":"f07b91fa0dda4c3c8c8735755f2929713d711e3a"},{"author":{"_account_id":748,"name":"Armando Migliaccio","email":"armamig@gmail.com","username":"armando-migliaccio"},"change_message_id":"6310a91266091c71e320c509d756f3c74e99b515","unresolved":false,"context_lines":[{"line_number":164,"context_line":"                  bash -xe $BASE/new/neutron/neutron/tests/contrib/gate_hook.sh rally {scenario}"},{"line_number":165,"context_line":"              }}"},{"line_number":166,"context_line":"              export -f gate_hook"},{"line_number":167,"context_line":"          fi"},{"line_number":168,"context_line":""},{"line_number":169,"context_line":"          function post_test_hook {{"},{"line_number":170,"context_line":"              $BASE/new/rally/tests/ci/rally-gate.sh"}],"source_content_type":"text/x-yaml","patch_set":4,"id":"da4df55a_ff4e7d6d","line":167,"in_reply_to":"da4df55a_06806cf6","updated":"2016-12-28 09:49:51.000000000","message":"We can leave it for future use, in case it comes handy. Though I am starting to think that we should probably revisit this whole extension strategy as it may potentially affect other projects in case the neutron hooks break for whatever reason, therefore the addition of hooks should be made conditional to the scenario variable being \u0027neutron-neutron\u0027, what do you think?","commit_id":"f07b91fa0dda4c3c8c8735755f2929713d711e3a"},{"author":{"_account_id":6854,"name":"YAMAMOTO Takashi","email":"yamamoto@midokura.com","username":"yamamoto"},"change_message_id":"427f8859af70d7fdef36b90ac230303e81c15c60","unresolved":false,"context_lines":[{"line_number":164,"context_line":"                  bash -xe $BASE/new/neutron/neutron/tests/contrib/gate_hook.sh rally {scenario}"},{"line_number":165,"context_line":"              }}"},{"line_number":166,"context_line":"              export -f gate_hook"},{"line_number":167,"context_line":"          fi"},{"line_number":168,"context_line":""},{"line_number":169,"context_line":"          function post_test_hook {{"},{"line_number":170,"context_line":"              $BASE/new/rally/tests/ci/rally-gate.sh"}],"source_content_type":"text/x-yaml","patch_set":4,"id":"da4df55a_06806cf6","line":167,"in_reply_to":"da4df55a_803284f0","updated":"2016-12-27 17:01:11.000000000","message":"we can.\nbut before or after rally-gate.sh?\ni\u0027m not sure what we might want to use it for.","commit_id":"f07b91fa0dda4c3c8c8735755f2929713d711e3a"},{"author":{"_account_id":748,"name":"Armando Migliaccio","email":"armamig@gmail.com","username":"armando-migliaccio"},"change_message_id":"aa28c610c4300a4d92f1d04039237bc4ffa85fd2","unresolved":false,"context_lines":[{"line_number":164,"context_line":"                  bash -xe $BASE/new/neutron/neutron/tests/contrib/gate_hook.sh rally {scenario}"},{"line_number":165,"context_line":"              }}"},{"line_number":166,"context_line":"              export -f gate_hook"},{"line_number":167,"context_line":"          fi"},{"line_number":168,"context_line":""},{"line_number":169,"context_line":"          function post_test_hook {{"},{"line_number":170,"context_line":"              $BASE/new/rally/tests/ci/rally-gate.sh"}],"source_content_type":"text/x-yaml","patch_set":4,"id":"da4df55a_803284f0","line":167,"in_reply_to":"da4df55a_9d010f09","updated":"2016-12-27 15:30:35.000000000","message":"can\u0027t we add \n\nbash -xe $BASE/new/neutron/neutron/tests/contrib/post_gate_hook.sh rally {scenario}\n\nto the post_test_hook function? neutron is assumed to exist as DEVSTACK_GATE_NEUTRON\u003d1","commit_id":"f07b91fa0dda4c3c8c8735755f2929713d711e3a"},{"author":{"_account_id":6854,"name":"YAMAMOTO Takashi","email":"yamamoto@midokura.com","username":"yamamoto"},"change_message_id":"b0710d2a741f319b89b3f5e3379ecb9d14cf641d","unresolved":false,"context_lines":[{"line_number":164,"context_line":"                  bash -xe $BASE/new/neutron/neutron/tests/contrib/gate_hook.sh rally {scenario}"},{"line_number":165,"context_line":"              }}"},{"line_number":166,"context_line":"              export -f gate_hook"},{"line_number":167,"context_line":"          fi"},{"line_number":168,"context_line":""},{"line_number":169,"context_line":"          function post_test_hook {{"},{"line_number":170,"context_line":"              $BASE/new/rally/tests/ci/rally-gate.sh"}],"source_content_type":"text/x-yaml","patch_set":4,"id":"ba5201f7_268a15c0","line":167,"in_reply_to":"da4df55a_dab9c716","updated":"2017-01-04 02:25:51.000000000","message":"i removed the branch conditional as all relevant branches are now ready.\n\ni prefer to postpone post_test_hook until it gets actually necessary because the requirements are not clear at this point.","commit_id":"f07b91fa0dda4c3c8c8735755f2929713d711e3a"},{"author":{"_account_id":748,"name":"Armando Migliaccio","email":"armamig@gmail.com","username":"armando-migliaccio"},"change_message_id":"eaa498ac8beae29d0e5c6ba6255efbafba61f707","unresolved":false,"context_lines":[{"line_number":164,"context_line":"                  bash -xe $BASE/new/neutron/neutron/tests/contrib/gate_hook.sh rally {scenario}"},{"line_number":165,"context_line":"              }}"},{"line_number":166,"context_line":"              export -f gate_hook"},{"line_number":167,"context_line":"          fi"},{"line_number":168,"context_line":""},{"line_number":169,"context_line":"          function post_test_hook {{"},{"line_number":170,"context_line":"              $BASE/new/rally/tests/ci/rally-gate.sh"}],"source_content_type":"text/x-yaml","patch_set":4,"id":"da4df55a_9d010f09","line":167,"in_reply_to":"da4df55a_fde4dbe0","updated":"2016-12-27 15:27:52.000000000","message":"if it\u0027s true, ie there can be only one hook per project, then by adding a hook, even though conditionally seems problematic.","commit_id":"f07b91fa0dda4c3c8c8735755f2929713d711e3a"},{"author":{"_account_id":6854,"name":"YAMAMOTO Takashi","email":"yamamoto@midokura.com","username":"yamamoto"},"change_message_id":"10948ce7f574823eb58e89fa644734bc82dcf95c","unresolved":false,"context_lines":[{"line_number":164,"context_line":"                  bash -xe $BASE/new/neutron/neutron/tests/contrib/gate_hook.sh rally {scenario}"},{"line_number":165,"context_line":"              }}"},{"line_number":166,"context_line":"              export -f gate_hook"},{"line_number":167,"context_line":"          fi"},{"line_number":168,"context_line":""},{"line_number":169,"context_line":"          function post_test_hook {{"},{"line_number":170,"context_line":"              $BASE/new/rally/tests/ci/rally-gate.sh"}],"source_content_type":"text/x-yaml","patch_set":4,"id":"da4df55a_dab9c716","line":167,"in_reply_to":"da4df55a_ff4e7d6d","updated":"2016-12-28 10:19:07.000000000","message":"the intention of \"$ZUUL_PROJECT\" \u003d \"openstack/neutron\" condition in L161 was to avoid affecting other projects.\n\ni chose it over the scenario name because:\n\n- other projects can have a scenario with the same name\n- neutron can have multiple scenarios\n\nwrt post hook, i think it\u0027s better to add it when/if we find a good use of it.","commit_id":"f07b91fa0dda4c3c8c8735755f2929713d711e3a"},{"author":{"_account_id":748,"name":"Armando Migliaccio","email":"armamig@gmail.com","username":"armando-migliaccio"},"change_message_id":"12af0437b0f1d4c3f24e61ec94149672f4dc4733","unresolved":false,"context_lines":[{"line_number":157,"context_line":"          export DEVSTACK_LOCAL_CONFIG"},{"line_number":158,"context_line":""},{"line_number":159,"context_line":"          if [[ \"$ZUUL_PROJECT\" \u003d \"openstack/neutron\" -a \\"},{"line_number":160,"context_line":"                ! \"stable/mitaka stable/newton\" \u003d~ $ZUUL_BRANCH ]]; then"},{"line_number":161,"context_line":"              function gate_hook {{"},{"line_number":162,"context_line":"                  bash -xe $BASE/new/neutron/neutron/tests/contrib/gate_hook.sh rally {scenario}"},{"line_number":163,"context_line":"              }}"}],"source_content_type":"text/x-yaml","patch_set":5,"id":"da4df55a_7da8eb20","line":160,"updated":"2016-12-27 15:27:57.000000000","message":"Please, don\u0027t make this conditional to the branch; we\u0027ll backport the neutron change to accept the hook, and be done with making changes to project-config.","commit_id":"35017b4aa266376603ca73321c1d3ece018de768"},{"author":{"_account_id":6854,"name":"YAMAMOTO Takashi","email":"yamamoto@midokura.com","username":"yamamoto"},"change_message_id":"3ad4165f6a0e8e452530714a51dd03bfe6161275","unresolved":false,"context_lines":[{"line_number":157,"context_line":"          export DEVSTACK_LOCAL_CONFIG"},{"line_number":158,"context_line":""},{"line_number":159,"context_line":"          if [[ \"$ZUUL_PROJECT\" \u003d \"openstack/neutron\" -a \\"},{"line_number":160,"context_line":"                ! \"stable/mitaka stable/newton\" \u003d~ $ZUUL_BRANCH ]]; then"},{"line_number":161,"context_line":"              function gate_hook {{"},{"line_number":162,"context_line":"                  bash -xe $BASE/new/neutron/neutron/tests/contrib/gate_hook.sh rally {scenario}"},{"line_number":163,"context_line":"              }}"}],"source_content_type":"text/x-yaml","patch_set":5,"id":"da4df55a_667bf828","line":160,"in_reply_to":"da4df55a_7da8eb20","updated":"2016-12-27 17:01:35.000000000","message":"ok","commit_id":"35017b4aa266376603ca73321c1d3ece018de768"}]}
