)]}'
{"jenkins/jobs/dragonflow.yaml":[{"author":{"_account_id":4146,"name":"Clark Boylan","email":"cboylan@sapwetik.org","username":"cboylan"},"change_message_id":"58647c18381fedad94ffcea5eb8b10987cb24a97","unresolved":false,"context_lines":[{"line_number":21,"context_line":""},{"line_number":22,"context_line":"          export OVERRIDE_ENABLED_SERVICES\u003drabbit,mysql,key,n-cpu,n-api"},{"line_number":23,"context_line":"          ,n-crt,n-obj,n-cond,n-sch,n-novnc,n-cauth,neutron,q-svc,q-df-l3,"},{"line_number":24,"context_line":"          q-df-agt,q-dhcp,q-meta,cinder,g-api,g-reg,c-api,c-vol,c-sch,c-bak"},{"line_number":25,"context_line":""},{"line_number":26,"context_line":"          export BRANCH_OVERRIDE\u003d{branch-override}"},{"line_number":27,"context_line":"          if [ \"$BRANCH_OVERRIDE\" !\u003d \"default\" ] ; then"}],"source_content_type":"text/x-yaml","patch_set":3,"id":"dac4157f_12c5503b","line":24,"updated":"2015-04-20 22:48:40.000000000","message":"Why are you overriding the default service list in this change? I would expect neutron plugins to use a default env and update it if necessary.\n\nThe overrides were specifically there for functional testing where we don\u0027t want to install a full set of services which you appear to have done above.","commit_id":"bfbc5b293960779fade05dde55d8fa7ac3733011"},{"author":{"_account_id":11343,"name":"Gal Sagie","email":"gal.sagie@gmail.com","username":"GalSagie"},"change_message_id":"cda9acfd69a3cca3902eca6b5c47047e6ed93980","unresolved":false,"context_lines":[{"line_number":21,"context_line":""},{"line_number":22,"context_line":"          export OVERRIDE_ENABLED_SERVICES\u003drabbit,mysql,key,n-cpu,n-api"},{"line_number":23,"context_line":"          ,n-crt,n-obj,n-cond,n-sch,n-novnc,n-cauth,neutron,q-svc,q-df-l3,"},{"line_number":24,"context_line":"          q-df-agt,q-dhcp,q-meta,cinder,g-api,g-reg,c-api,c-vol,c-sch,c-bak"},{"line_number":25,"context_line":""},{"line_number":26,"context_line":"          export BRANCH_OVERRIDE\u003d{branch-override}"},{"line_number":27,"context_line":"          if [ \"$BRANCH_OVERRIDE\" !\u003d \"default\" ] ; then"}],"source_content_type":"text/x-yaml","patch_set":3,"id":"dac4157f_db1dacbe","line":24,"in_reply_to":"dac4157f_12c5503b","updated":"2015-04-21 05:31:22.000000000","message":"We need neutron q-l3 and q-agt to be disabled, and we enable our own services instead (q-df-agt, q-df-l3)\n\nIf there is a better way to solve it, please suggest and i will happily change","commit_id":"bfbc5b293960779fade05dde55d8fa7ac3733011"},{"author":{"_account_id":4146,"name":"Clark Boylan","email":"cboylan@sapwetik.org","username":"cboylan"},"change_message_id":"58647c18381fedad94ffcea5eb8b10987cb24a97","unresolved":false,"context_lines":[{"line_number":32,"context_line":"          # reference magic for testing changes."},{"line_number":33,"context_line":"          export PROJECTS\u003d\"stackforge/dragonflow $PROJECTS\""},{"line_number":34,"context_line":""},{"line_number":35,"context_line":"          export DEVSTACK_LOCAL_CONFIG\u003d\"enable_plugin dragonflow https://github.com/stackforge/dragonflow.git\""},{"line_number":36,"context_line":"          export DEVSTACK_LOCAL_CONFIG\u003d\"Q_ENABLE_DRAGONFLOW\u003dTrue\""},{"line_number":37,"context_line":"          export DEVSTACK_LOCAL_CONFIG\u003d\"ML2_L3_PLUGIN\u003ddragonflow.neutron.services.l3.l3_controller_plugin.ControllerL3ServicePlugin\""},{"line_number":38,"context_line":""}],"source_content_type":"text/x-yaml","patch_set":3,"id":"dac4157f_f2c1bc2f","line":35,"updated":"2015-04-20 22:48:40.000000000","message":"You should never install stackforge items from github. Please use https://git.openstack.org/stackforge/dragonflow instead.","commit_id":"bfbc5b293960779fade05dde55d8fa7ac3733011"},{"author":{"_account_id":11343,"name":"Gal Sagie","email":"gal.sagie@gmail.com","username":"GalSagie"},"change_message_id":"cda9acfd69a3cca3902eca6b5c47047e6ed93980","unresolved":false,"context_lines":[{"line_number":32,"context_line":"          # reference magic for testing changes."},{"line_number":33,"context_line":"          export PROJECTS\u003d\"stackforge/dragonflow $PROJECTS\""},{"line_number":34,"context_line":""},{"line_number":35,"context_line":"          export DEVSTACK_LOCAL_CONFIG\u003d\"enable_plugin dragonflow https://github.com/stackforge/dragonflow.git\""},{"line_number":36,"context_line":"          export DEVSTACK_LOCAL_CONFIG\u003d\"Q_ENABLE_DRAGONFLOW\u003dTrue\""},{"line_number":37,"context_line":"          export DEVSTACK_LOCAL_CONFIG\u003d\"ML2_L3_PLUGIN\u003ddragonflow.neutron.services.l3.l3_controller_plugin.ControllerL3ServicePlugin\""},{"line_number":38,"context_line":""}],"source_content_type":"text/x-yaml","patch_set":3,"id":"dac4157f_7be8e07c","line":35,"in_reply_to":"dac4157f_f2c1bc2f","updated":"2015-04-21 05:31:22.000000000","message":"Done","commit_id":"bfbc5b293960779fade05dde55d8fa7ac3733011"},{"author":{"_account_id":6547,"name":"Andreas Jaeger","email":"jaegerandi@gmail.com","username":"jaegerandi"},"change_message_id":"5c8c771be1f309e91cf66063a6c7890435dcdc7b","unresolved":false,"context_lines":[{"line_number":20,"context_line":""},{"line_number":21,"context_line":""},{"line_number":22,"context_line":"          export OVERRIDE_ENABLED_SERVICES\u003drabbit,mysql,key,n-cpu,n-api"},{"line_number":23,"context_line":"          ,n-crt,n-obj,n-cond,n-sch,n-novnc,n-cauth,neutron,q-svc,q-df-l3,"},{"line_number":24,"context_line":"          q-df-agt,q-dhcp,q-meta,cinder,g-api,g-reg,c-api,c-vol,c-sch,c-bak"},{"line_number":25,"context_line":""},{"line_number":26,"context_line":"          export BRANCH_OVERRIDE\u003d{branch-override}"}],"source_content_type":"text/x-yaml","patch_set":4,"id":"dac4157f_3de11c9b","line":23,"updated":"2015-04-21 19:26:29.000000000","message":"This will not work, you cannot put this on multiple lines.","commit_id":"8fb9eb78c335eab6c0d93e8a1c313dfe698304aa"},{"author":{"_account_id":4146,"name":"Clark Boylan","email":"cboylan@sapwetik.org","username":"cboylan"},"change_message_id":"dfebd2cec176cae4a54cf2dcaa0ab300049cb3d9","unresolved":false,"context_lines":[{"line_number":21,"context_line":""},{"line_number":22,"context_line":"          export OVERRIDE_ENABLED_SERVICES\u003drabbit,mysql,key,n-cpu,n-api"},{"line_number":23,"context_line":"          ,n-crt,n-obj,n-cond,n-sch,n-novnc,n-cauth,neutron,q-svc,q-df-l3,"},{"line_number":24,"context_line":"          q-df-agt,q-dhcp,q-meta,cinder,g-api,g-reg,c-api,c-vol,c-sch,c-bak"},{"line_number":25,"context_line":""},{"line_number":26,"context_line":"          export BRANCH_OVERRIDE\u003d{branch-override}"},{"line_number":27,"context_line":"          if [ \"$BRANCH_OVERRIDE\" !\u003d \"default\" ] ; then"}],"source_content_type":"text/x-yaml","patch_set":6,"id":"3acd31a7_bba908e2","line":24,"updated":"2015-04-29 16:14:44.000000000","message":"See the comment on patchset 4, Andreas correctly points out that this will not work as is. You will need to do the multiline listing properly.","commit_id":"3865e1d2f2955e99bee1a28eb373c643309b57cb"},{"author":{"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"},"change_message_id":"b85963a09f219a0eb0134e95275eb92b573f4218","unresolved":false,"context_lines":[{"line_number":34,"context_line":""},{"line_number":35,"context_line":"          export DEVSTACK_LOCAL_CONFIG\u003d\"enable_plugin dragonflow https://git.openstack.org/stackforge/dragonflow\""},{"line_number":36,"context_line":"          export DEVSTACK_LOCAL_CONFIG\u003d\"Q_ENABLE_DRAGONFLOW\u003dTrue\""},{"line_number":37,"context_line":"          export DEVSTACK_LOCAL_CONFIG\u003d\"ML2_L3_PLUGIN\u003ddragonflow.neutron.services.l3.l3_controller_plugin.ControllerL3ServicePlugin\""},{"line_number":38,"context_line":""},{"line_number":39,"context_line":"          # Keep localrc to be able to set some vars in pre_test_hook"},{"line_number":40,"context_line":"          export KEEP_LOCALRC\u003d1"}],"source_content_type":"text/x-yaml","patch_set":7,"id":"3acd31a7_dc735a7f","line":37,"updated":"2015-05-01 12:52:38.000000000","message":"this won\u0027t do what you want, please look at the ironic use of DEVSTACK_LOCAL_CONFIG to see how to do multiline config pass through.","commit_id":"be750bc396edf5c6e3671c6da354a307a5f2e473"},{"author":{"_account_id":11343,"name":"Gal Sagie","email":"gal.sagie@gmail.com","username":"GalSagie"},"change_message_id":"a96d21e0fc40dc62eefbd7d9f1461b41c619935c","unresolved":false,"context_lines":[{"line_number":34,"context_line":""},{"line_number":35,"context_line":"          export DEVSTACK_LOCAL_CONFIG\u003d\"enable_plugin dragonflow https://git.openstack.org/stackforge/dragonflow\""},{"line_number":36,"context_line":"          export DEVSTACK_LOCAL_CONFIG\u003d\"Q_ENABLE_DRAGONFLOW\u003dTrue\""},{"line_number":37,"context_line":"          export DEVSTACK_LOCAL_CONFIG\u003d\"ML2_L3_PLUGIN\u003ddragonflow.neutron.services.l3.l3_controller_plugin.ControllerL3ServicePlugin\""},{"line_number":38,"context_line":""},{"line_number":39,"context_line":"          # Keep localrc to be able to set some vars in pre_test_hook"},{"line_number":40,"context_line":"          export KEEP_LOCALRC\u003d1"}],"source_content_type":"text/x-yaml","patch_set":7,"id":"3acd31a7_aeebc177","line":37,"in_reply_to":"3acd31a7_dc735a7f","updated":"2015-05-01 16:25:26.000000000","message":"Done","commit_id":"be750bc396edf5c6e3671c6da354a307a5f2e473"},{"author":{"_account_id":2023,"name":"Saggi Mizrahi","email":"ficoos+osreview@gmail.com","username":"ficoos"},"change_message_id":"08fe9444c69b55415771e4dedea3c9c0cc44cab2","unresolved":false,"context_lines":[{"line_number":12,"context_line":"      - net-info"},{"line_number":13,"context_line":"      - devstack-checkout"},{"line_number":14,"context_line":"      - shell: |"},{"line_number":15,"context_line":"          #!/bin/bash -xe"},{"line_number":16,"context_line":"          export PYTHONUNBUFFERED\u003dtrue"},{"line_number":17,"context_line":"          export DEVSTACK_GATE_TIMEOUT\u003d120"},{"line_number":18,"context_line":"          export DEVSTACK_GATE_NEUTRON\u003d1"}],"source_content_type":"text/x-yaml","patch_set":8,"id":"3acd31a7_14c5105a","line":15,"updated":"2015-05-03 15:33:22.000000000","message":"#!/usr/bin/env bash -xe","commit_id":"c99c34ed2d1aac5dcba274f6ba9c76a4155b2270"},{"author":{"_account_id":6547,"name":"Andreas Jaeger","email":"jaegerandi@gmail.com","username":"jaegerandi"},"change_message_id":"1805c633ebc7e5c3f7d2881a580fecb950fe62d6","unresolved":false,"context_lines":[{"line_number":12,"context_line":"      - net-info"},{"line_number":13,"context_line":"      - devstack-checkout"},{"line_number":14,"context_line":"      - shell: |"},{"line_number":15,"context_line":"          #!/bin/bash -xe"},{"line_number":16,"context_line":"          export PYTHONUNBUFFERED\u003dtrue"},{"line_number":17,"context_line":"          export DEVSTACK_GATE_TIMEOUT\u003d120"},{"line_number":18,"context_line":"          export DEVSTACK_GATE_NEUTRON\u003d1"}],"source_content_type":"text/x-yaml","patch_set":8,"id":"3acd31a7_f47a94f0","line":15,"in_reply_to":"3acd31a7_14c5105a","updated":"2015-05-03 16:18:23.000000000","message":"#!/bin/bash is just fine for the infra scripts and what we use everywhere.","commit_id":"c99c34ed2d1aac5dcba274f6ba9c76a4155b2270"}],"jenkins/jobs/projects.yaml":[{"author":{"_account_id":10035,"name":"greghaynes","email":"greg@greghaynes.net","username":"greghaynes"},"change_message_id":"0ea85376a9ef9a4fb7806610e464812f8543fcaa","unresolved":false,"context_lines":[{"line_number":3628,"context_line":"    jobs:"},{"line_number":3629,"context_line":"      - python-jobs"},{"line_number":3630,"context_line":"      - pypi-jobs"},{"line_number":3631,"context_line":"      - \u0027{pipeline}-tempest-dsvm-dragonflow{branch-designator}\u0027:"},{"line_number":3632,"context_line":"          pipeline: check"},{"line_number":3633,"context_line":"          node: \u0027devstack-precise || devstack-trusty\u0027"},{"line_number":3634,"context_line":"          branch-designator: \u0027\u0027"}],"source_content_type":"text/x-yaml","patch_set":8,"id":"3acd31a7_51a04c9f","line":3631,"updated":"2015-05-01 16:52:41.000000000","message":"No - before branch-designator?","commit_id":"c99c34ed2d1aac5dcba274f6ba9c76a4155b2270"},{"author":{"_account_id":6547,"name":"Andreas Jaeger","email":"jaegerandi@gmail.com","username":"jaegerandi"},"change_message_id":"898b1a7fbe647999099ab48e568787698cb73cc7","unresolved":false,"context_lines":[{"line_number":3628,"context_line":"    jobs:"},{"line_number":3629,"context_line":"      - python-jobs"},{"line_number":3630,"context_line":"      - pypi-jobs"},{"line_number":3631,"context_line":"      - \u0027{pipeline}-tempest-dsvm-dragonflow{branch-designator}\u0027:"},{"line_number":3632,"context_line":"          pipeline: check"},{"line_number":3633,"context_line":"          node: \u0027devstack-precise || devstack-trusty\u0027"},{"line_number":3634,"context_line":"          branch-designator: \u0027\u0027"}],"source_content_type":"text/x-yaml","patch_set":8,"id":"3acd31a7_83868c11","line":3631,"in_reply_to":"3acd31a7_51a04c9f","updated":"2015-05-03 05:04:09.000000000","message":"Correct, see other examples. branch-designator is empty","commit_id":"c99c34ed2d1aac5dcba274f6ba9c76a4155b2270"}],"zuul/layout.yaml":[{"author":{"_account_id":7069,"name":"Joshua Hesketh","email":"josh@nitrotech.org","username":"jhesketh"},"change_message_id":"2b2c535bb45243f44a0d030f3ed8843b55d4924a","unresolved":false,"context_lines":[{"line_number":711,"context_line":"    branch: ^(?!stable)"},{"line_number":712,"context_line":"    voting: false"},{"line_number":713,"context_line":"  - name: ^(check)-tempest-dsvm-dragonflow"},{"line_number":714,"context_line":"    branch: ^(?!stable)"},{"line_number":715,"context_line":"    voting: false"},{"line_number":716,"context_line":"  - name: ^check-neutron-fwaas-dsvm-functional$"},{"line_number":717,"context_line":"    voting: false"}],"source_content_type":"text/x-yaml","patch_set":8,"id":"3acd31a7_c0b7cfd6","line":714,"updated":"2015-05-04 07:29:19.000000000","message":"You don\u0027t want to run this on stable branches?","commit_id":"c99c34ed2d1aac5dcba274f6ba9c76a4155b2270"},{"author":{"_account_id":11343,"name":"Gal Sagie","email":"gal.sagie@gmail.com","username":"GalSagie"},"change_message_id":"f9a8d67aa8e6b5bf96640753b2923f1141be42ee","unresolved":false,"context_lines":[{"line_number":711,"context_line":"    branch: ^(?!stable)"},{"line_number":712,"context_line":"    voting: false"},{"line_number":713,"context_line":"  - name: ^(check)-tempest-dsvm-dragonflow"},{"line_number":714,"context_line":"    branch: ^(?!stable)"},{"line_number":715,"context_line":"    voting: false"},{"line_number":716,"context_line":"  - name: ^check-neutron-fwaas-dsvm-functional$"},{"line_number":717,"context_line":"    voting: false"}],"source_content_type":"text/x-yaml","patch_set":8,"id":"3acd31a7_6c5c74ed","line":714,"in_reply_to":"3acd31a7_c0b7cfd6","updated":"2015-05-04 11:24:45.000000000","message":"No, we want to see any error on latest branches","commit_id":"c99c34ed2d1aac5dcba274f6ba9c76a4155b2270"},{"author":{"_account_id":7069,"name":"Joshua Hesketh","email":"josh@nitrotech.org","username":"jhesketh"},"change_message_id":"2b2c535bb45243f44a0d030f3ed8843b55d4924a","unresolved":false,"context_lines":[{"line_number":5096,"context_line":"      - name: publish-to-pypi"},{"line_number":5097,"context_line":"      - name: check-requirements"},{"line_number":5098,"context_line":"    check:"},{"line_number":5099,"context_line":"      - check-tempest-dsvm-dragonflow"},{"line_number":5100,"context_line":""},{"line_number":5101,"context_line":"  - name: stackforge/drbd-devstack"},{"line_number":5102,"context_line":"    template:"}],"source_content_type":"text/x-yaml","patch_set":8,"id":"3acd31a7_e0a9ab7c","line":5099,"updated":"2015-05-04 07:29:19.000000000","message":"If the job is largely unstable (as the commit message indicates) this should be an experimental job to save resources until it is closer to being ready.","commit_id":"c99c34ed2d1aac5dcba274f6ba9c76a4155b2270"},{"author":{"_account_id":11343,"name":"Gal Sagie","email":"gal.sagie@gmail.com","username":"GalSagie"},"change_message_id":"f9a8d67aa8e6b5bf96640753b2923f1141be42ee","unresolved":false,"context_lines":[{"line_number":5096,"context_line":"      - name: publish-to-pypi"},{"line_number":5097,"context_line":"      - name: check-requirements"},{"line_number":5098,"context_line":"    check:"},{"line_number":5099,"context_line":"      - check-tempest-dsvm-dragonflow"},{"line_number":5100,"context_line":""},{"line_number":5101,"context_line":"  - name: stackforge/drbd-devstack"},{"line_number":5102,"context_line":"    template:"}],"source_content_type":"text/x-yaml","patch_set":8,"id":"3acd31a7_cc2dc847","line":5099,"in_reply_to":"3acd31a7_e0a9ab7c","updated":"2015-05-04 11:24:45.000000000","message":"Its not unstable, we are constantly working on this and we are constantly using devstack to deploy this.\nI only indicated that i want it to be non-voting as this is the first time we run this job.\n\nI dont see any difference from networking-ovn, which as you can see got in.\nso i think we can have this very important gate job approved for this project as well.","commit_id":"c99c34ed2d1aac5dcba274f6ba9c76a4155b2270"},{"author":{"_account_id":6547,"name":"Andreas Jaeger","email":"jaegerandi@gmail.com","username":"jaegerandi"},"change_message_id":"cda54130258a2b4e5a1437a4cfa01f32571ec3a9","unresolved":false,"context_lines":[{"line_number":711,"context_line":"    branch: ^(?!stable)"},{"line_number":712,"context_line":"    voting: false"},{"line_number":713,"context_line":"  - name: ^(check)-tempest-dsvm-dragonflow"},{"line_number":714,"context_line":"    branch: ^(?!stable)"},{"line_number":715,"context_line":"    voting: false"},{"line_number":716,"context_line":"  - name: ^check-neutron-fwaas-dsvm-functional$"},{"line_number":717,"context_line":"    voting: false"}],"source_content_type":"text/x-yaml","patch_set":9,"id":"3acd31a7_26045448","line":714,"updated":"2015-05-04 14:31:32.000000000","message":"If you want to run this on liberty but not on stable/kilo, use something like:\n\n ^(?!stable/kilo).*$","commit_id":"fe53c7928bc0de1d9207d6e11d5ce1bd9be9e2cd"}]}
