)]}'
{".zuul.yaml":[{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"change_message_id":"32241a04447446e2526819e8eaad853242232eb8","unresolved":false,"context_lines":[{"line_number":1,"context_line":"- project:"},{"line_number":2,"context_line":"    templates:"},{"line_number":3,"context_line":"      - neutron-tempest-plugin-jobs"},{"line_number":4,"context_line":"      - openstack-cover-jobs"},{"line_number":5,"context_line":"      - openstack-lower-constraints-jobs"},{"line_number":6,"context_line":"      - openstack-python-jobs"},{"line_number":7,"context_line":"      - openstack-python35-jobs"},{"line_number":8,"context_line":"      - openstack-python36-jobs"},{"line_number":9,"context_line":"      - publish-openstack-docs-pti"},{"line_number":10,"context_line":"      - periodic-stable-jobs"},{"line_number":11,"context_line":"      - check-requirements"},{"line_number":12,"context_line":"      - integrated-gate"},{"line_number":13,"context_line":"      - integrated-gate-py35"},{"line_number":14,"context_line":"      - release-notes-jobs-python3"},{"line_number":15,"context_line":"    check:"},{"line_number":16,"context_line":"      debug: True"},{"line_number":17,"context_line":"      jobs:"},{"line_number":18,"context_line":"        - neutron-functional"},{"line_number":19,"context_line":"        - neutron-fullstack"},{"line_number":20,"context_line":"        - neutron-rally-task"},{"line_number":21,"context_line":"        - neutron-tempest-dvr"},{"line_number":22,"context_line":"        - neutron-tempest-linuxbridge"},{"line_number":23,"context_line":"        - neutron-tempest-linuxbridge-osprofiler"},{"line_number":24,"context_line":"        - neutron-grenade-multinode"},{"line_number":25,"context_line":"        - neutron-grenade-dvr-multinode"},{"line_number":26,"context_line":"        - tempest-multinode-full:"},{"line_number":27,"context_line":"            voting: false"},{"line_number":28,"context_line":"            # We don\u0027t run the job on things like neutron docs-only changes"},{"line_number":29,"context_line":"            irrelevant-files: \u0026tempest-irrelevant-files"},{"line_number":30,"context_line":"              - ^(test-|)requirements.txt$"},{"line_number":31,"context_line":"              - ^.*\\.rst$"},{"line_number":32,"context_line":"              - ^doc/.*$"},{"line_number":33,"context_line":"              - ^neutron/locale/.*$"},{"line_number":34,"context_line":"              - ^neutron/tests/unit/.*$"},{"line_number":35,"context_line":"              - ^releasenotes/.*$"},{"line_number":36,"context_line":"              - ^setup.cfg$"},{"line_number":37,"context_line":"              - ^tools/.*$"},{"line_number":38,"context_line":"              - ^tox.ini$"},{"line_number":39,"context_line":"        - neutron-tempest-dvr-ha-multinode-full"},{"line_number":40,"context_line":"        - neutron-tempest-iptables_hybrid"},{"line_number":41,"context_line":"        - neutron-grenade"},{"line_number":42,"context_line":"        - neutron-fullstack-python36"},{"line_number":43,"context_line":"        - ironic-tempest-dsvm-ipa-wholedisk-bios-agent_ipmitool-tinyipa:"},{"line_number":44,"context_line":"            voting: false"},{"line_number":45,"context_line":"            irrelevant-files: *tempest-irrelevant-files"},{"line_number":46,"context_line":"        - tempest-full:"},{"line_number":47,"context_line":"            irrelevant-files: *tempest-irrelevant-files"},{"line_number":48,"context_line":"        - tempest-slow:"},{"line_number":49,"context_line":"            irrelevant-files: *tempest-irrelevant-files"},{"line_number":50,"context_line":"    gate:"},{"line_number":51,"context_line":"      jobs:"},{"line_number":52,"context_line":"        - neutron-functional"},{"line_number":53,"context_line":"        - neutron-fullstack"},{"line_number":54,"context_line":"        - neutron-tempest-dvr"},{"line_number":55,"context_line":"        - neutron-tempest-linuxbridge"},{"line_number":56,"context_line":"        - neutron-tempest-iptables_hybrid"},{"line_number":57,"context_line":"        - neutron-grenade-multinode"},{"line_number":58,"context_line":"        - neutron-grenade-dvr-multinode"},{"line_number":59,"context_line":"        - neutron-grenade"},{"line_number":60,"context_line":"        - neutron-fullstack-python36"},{"line_number":61,"context_line":"    periodic:"},{"line_number":62,"context_line":"      jobs:"},{"line_number":63,"context_line":"        - neutron-functional"},{"line_number":64,"context_line":"        - neutron-tempest-postgres-full"},{"line_number":65,"context_line":"        - neutron-tempest-with-ryu-master"},{"line_number":66,"context_line":"    experimental:"},{"line_number":67,"context_line":"      jobs:"},{"line_number":68,"context_line":"        - neutron-functional-python35"},{"line_number":69,"context_line":"        - neutron-functional-with-uwsgi"},{"line_number":70,"context_line":"        - neutron-fullstack-with-uwsgi"},{"line_number":71,"context_line":"        - neutron-tempest-with-uwsgi"},{"line_number":72,"context_line":""},{"line_number":73,"context_line":"        - legacy-grenade-dsvm-neutron-linuxbridge-multinode:"},{"line_number":74,"context_line":"            irrelevant-files: *tempest-irrelevant-files"},{"line_number":75,"context_line":"        - legacy-grenade-dsvm-neutron-forward:"},{"line_number":76,"context_line":"            irrelevant-files: *tempest-irrelevant-files"},{"line_number":77,"context_line":"        - legacy-neutron-dsvm-api-pecan"},{"line_number":78,"context_line":"        - tempest-pg-full:"},{"line_number":79,"context_line":"            irrelevant-files: *tempest-irrelevant-files"},{"line_number":80,"context_line":"        - legacy-tempest-dsvm-neutron-pecan:"},{"line_number":81,"context_line":"            irrelevant-files: *tempest-irrelevant-files"},{"line_number":82,"context_line":"        - legacy-tempest-dsvm-neutron-full-centos-7:"},{"line_number":83,"context_line":"            irrelevant-files: *tempest-irrelevant-files"},{"line_number":84,"context_line":"        - legacy-tempest-dsvm-neutron-dvr-multinode-full:"},{"line_number":85,"context_line":"            irrelevant-files: *tempest-irrelevant-files"},{"line_number":86,"context_line":"        - legacy-tempest-dsvm-neutron-with-ryu-master:"},{"line_number":87,"context_line":"            irrelevant-files: *tempest-irrelevant-files"},{"line_number":88,"context_line":"        - tempest-full-py3-opensuse150:"},{"line_number":89,"context_line":"            irrelevant-files: *tempest-irrelevant-files"},{"line_number":90,"context_line":""},{"line_number":91,"context_line":"- job:"},{"line_number":92,"context_line":"    name: neutron-functional"},{"line_number":93,"context_line":"    parent: legacy-dsvm-base"}],"source_content_type":"text/x-yaml","patch_set":4,"id":"3f79a3b5_4674a204","line":90,"range":{"start_line":1,"start_character":2,"end_line":90,"end_character":0},"updated":"2018-10-22 14:15:47.000000000","message":"Job neutron-tempest-linuxbridge-osprofiler not defined","commit_id":"bdaeafc6c84358afce401c1b124a8d9dc7af0f67"},{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"change_message_id":"32241a04447446e2526819e8eaad853242232eb8","unresolved":false,"context_lines":[{"line_number":197,"context_line":"      - ^tools/.*$"},{"line_number":198,"context_line":"      - ^tox.ini$"},{"line_number":199,"context_line":""},{"line_number":200,"context_line":"- job:"},{"line_number":201,"context_line":"    name: neutron-tempest-linuxbridge-osprofiler"},{"line_number":202,"context_line":"    # FIXME Do we want to base this on a neutron-tempest-something job"},{"line_number":203,"context_line":"    # or on tempest-full? Since osprofiler can be easily used for"},{"line_number":204,"context_line":"    # cross-project tracing it would make sense to have an OpenStack-generic"},{"line_number":205,"context_line":"    # base job which just adds osprofiler to the environment. Then the traced"},{"line_number":206,"context_line":"    # load generation could be project specific."},{"line_number":207,"context_line":"    parent: neutron-tempest-linuxbridge"},{"line_number":208,"context_line":"    run: playbooks/legacy/neutron-tempest-linuxbridge-osprofiler/run.yaml"},{"line_number":209,"context_line":"    post-run: playbooks/legacy/neutron-tempest-linuxbridge/post.yaml"},{"line_number":210,"context_line":"    timeout: 8400"},{"line_number":211,"context_line":"    required-projects:"},{"line_number":212,"context_line":"      - openstack-infra/devstack-gate"},{"line_number":213,"context_line":"      - openstack/neutron"},{"line_number":214,"context_line":"      - openstack/osprofiler"},{"line_number":215,"context_line":"      - openstack/tempest"},{"line_number":216,"context_line":"    irrelevant-files:"},{"line_number":217,"context_line":"      - ^(test-|)requirements.txt$"},{"line_number":218,"context_line":"      - ^.*\\.rst$"},{"line_number":219,"context_line":"      - ^doc/.*$"},{"line_number":220,"context_line":"      - ^neutron/locale/.*$"},{"line_number":221,"context_line":"      - ^neutron/tests/.*$"},{"line_number":222,"context_line":"      - ^neutron/tests/unit/.*$"},{"line_number":223,"context_line":"      - ^releasenotes/.*$"},{"line_number":224,"context_line":"      - ^setup.cfg$"},{"line_number":225,"context_line":"      - ^tools/.*$"},{"line_number":226,"context_line":"      - ^tox.ini$"},{"line_number":227,"context_line":"    local_conf:"},{"line_number":228,"context_line":"      conf: |"},{"line_number":229,"context_line":"        [[local|localrc]]"},{"line_number":230,"context_line":"        enable_plugin osprofiler git://git.openstack.org/openstack/osprofiler"},{"line_number":231,"context_line":"        OSPROFILER_COLLECTOR\u003dredis"},{"line_number":232,"context_line":"        [[post-config|$NEUTRON_CONF]]"},{"line_number":233,"context_line":"        [DEFAULT]"},{"line_number":234,"context_line":"        graceful_shutdown_timeout \u003d 42"},{"line_number":235,"context_line":""},{"line_number":236,"context_line":"- job:"},{"line_number":237,"context_line":"    name: neutron-grenade-multinode"},{"line_number":238,"context_line":"    parent: legacy-dsvm-base-multinode"}],"source_content_type":"text/x-yaml","patch_set":4,"id":"3f79a3b5_a617b69d","line":235,"range":{"start_line":200,"start_character":2,"end_line":235,"end_character":0},"updated":"2018-10-22 14:15:47.000000000","message":"extra keys not allowed @ data[\u0027local_conf\u0027]","commit_id":"bdaeafc6c84358afce401c1b124a8d9dc7af0f67"},{"author":{"_account_id":13995,"name":"Nate Johnston","email":"nate.johnston@redhat.com","username":"natejohnston"},"change_message_id":"f44a122dcf668b44a5e35fc8d7619c0cb3c5b8a9","unresolved":false,"context_lines":[{"line_number":13,"context_line":"      - integrated-gate-py35"},{"line_number":14,"context_line":"      - release-notes-jobs-python3"},{"line_number":15,"context_line":"    check:"},{"line_number":16,"context_line":"      debug: True"},{"line_number":17,"context_line":"      jobs:"},{"line_number":18,"context_line":"        - neutron-functional"},{"line_number":19,"context_line":"        - neutron-fullstack"}],"source_content_type":"text/x-yaml","patch_set":5,"id":"3f79a3b5_7c8358ab","line":16,"updated":"2018-10-23 11:20:23.000000000","message":"I have not seen this line before.  But even after rechecking, I don\u0027t see this change popping up in http://zuul.openstack.org/status so perhaps try removing it and let\u0027s see if it starts to process?","commit_id":"0d714a9544f9691b10503a2790194c5dc96f4ca8"},{"author":{"_account_id":15554,"name":"Bence Romsics","email":"bence.romsics@gmail.com","username":"ebenrom","status":"inactive contributor"},"change_message_id":"c05fb82595a8b7feb18590fe5885ab1d219e44ac","unresolved":false,"context_lines":[{"line_number":13,"context_line":"      - integrated-gate-py35"},{"line_number":14,"context_line":"      - release-notes-jobs-python3"},{"line_number":15,"context_line":"    check:"},{"line_number":16,"context_line":"      debug: True"},{"line_number":17,"context_line":"      jobs:"},{"line_number":18,"context_line":"        - neutron-functional"},{"line_number":19,"context_line":"        - neutron-fullstack"}],"source_content_type":"text/x-yaml","patch_set":5,"id":"3f79a3b5_e8cc82bf","line":16,"in_reply_to":"3f79a3b5_7c8358ab","updated":"2018-10-23 14:16:28.000000000","message":"Sure, let\u0027s give it a try.","commit_id":"0d714a9544f9691b10503a2790194c5dc96f4ca8"},{"author":{"_account_id":13995,"name":"Nate Johnston","email":"nate.johnston@redhat.com","username":"natejohnston"},"change_message_id":"8f1ca89be8c6796015305767ac4f42559b0b041b","unresolved":false,"context_lines":[{"line_number":213,"context_line":"      - openstack/neutron"},{"line_number":214,"context_line":"      - openstack/osprofiler"},{"line_number":215,"context_line":"      - openstack/tempest"},{"line_number":216,"context_line":"    irrelevant-files:"},{"line_number":217,"context_line":"      - ^(test-|)requirements.txt$"},{"line_number":218,"context_line":"      - ^.*\\.rst$"},{"line_number":219,"context_line":"      - ^doc/.*$"}],"source_content_type":"text/x-yaml","patch_set":5,"id":"3f79a3b5_9c73d44f","line":216,"updated":"2018-10-23 11:04:27.000000000","message":"Can you use the `\u0026tempest-irrelevant-files` shorthand to reduce the size of this irrelevant-files section?  See one of the other tests for an example.","commit_id":"0d714a9544f9691b10503a2790194c5dc96f4ca8"},{"author":{"_account_id":15554,"name":"Bence Romsics","email":"bence.romsics@gmail.com","username":"ebenrom","status":"inactive contributor"},"change_message_id":"c05fb82595a8b7feb18590fe5885ab1d219e44ac","unresolved":false,"context_lines":[{"line_number":213,"context_line":"      - openstack/neutron"},{"line_number":214,"context_line":"      - openstack/osprofiler"},{"line_number":215,"context_line":"      - openstack/tempest"},{"line_number":216,"context_line":"    irrelevant-files:"},{"line_number":217,"context_line":"      - ^(test-|)requirements.txt$"},{"line_number":218,"context_line":"      - ^.*\\.rst$"},{"line_number":219,"context_line":"      - ^doc/.*$"}],"source_content_type":"text/x-yaml","patch_set":5,"id":"3f79a3b5_a899aa1e","line":216,"in_reply_to":"3f79a3b5_9c73d44f","updated":"2018-10-23 14:16:28.000000000","message":"Done","commit_id":"0d714a9544f9691b10503a2790194c5dc96f4ca8"},{"author":{"_account_id":17120,"name":"Manjeet Singh Bhatia","email":"manjeet.s.bhatia@intel.com","username":"manjeets"},"change_message_id":"8c9a7c5acbceedd22333e116788dbf13d2e0bbca","unresolved":false,"context_lines":[{"line_number":198,"context_line":""},{"line_number":199,"context_line":"- job:"},{"line_number":200,"context_line":"    name: neutron-tempest-linuxbridge-osprofiler"},{"line_number":201,"context_line":"    # FIXME Do we want to base this on a neutron-tempest-something job"},{"line_number":202,"context_line":"    # or on tempest-full? Since osprofiler can be easily used for"},{"line_number":203,"context_line":"    # cross-project tracing it would make sense to have an OpenStack-generic"},{"line_number":204,"context_line":"    # base job which just adds osprofiler to the environment. Then the traced"},{"line_number":205,"context_line":"    # load generation could be project specific."},{"line_number":206,"context_line":"    parent: neutron-tempest-linuxbridge"},{"line_number":207,"context_line":"    run: playbooks/legacy/neutron-tempest-linuxbridge-osprofiler/run.yaml"},{"line_number":208,"context_line":"    post-run: playbooks/legacy/neutron-tempest-linuxbridge/post.yaml"}],"source_content_type":"text/x-yaml","patch_set":7,"id":"3f79a3b5_de47f579","line":205,"range":{"start_line":201,"start_character":4,"end_line":205,"end_character":48},"updated":"2018-10-23 20:18:17.000000000","message":"IMO, we can start with the tempest scenario that consumes the most time which can change over time ?, so that we can track down the where its taking so much.","commit_id":"32c7fdbd509eaa2c2ba8bfc1fa285242c0458677"},{"author":{"_account_id":15554,"name":"Bence Romsics","email":"bence.romsics@gmail.com","username":"ebenrom","status":"inactive contributor"},"change_message_id":"413827c55791e62ba4b59a8872aed8cf1d21d528","unresolved":false,"context_lines":[{"line_number":198,"context_line":""},{"line_number":199,"context_line":"- job:"},{"line_number":200,"context_line":"    name: neutron-tempest-linuxbridge-osprofiler"},{"line_number":201,"context_line":"    # FIXME Do we want to base this on a neutron-tempest-something job"},{"line_number":202,"context_line":"    # or on tempest-full? Since osprofiler can be easily used for"},{"line_number":203,"context_line":"    # cross-project tracing it would make sense to have an OpenStack-generic"},{"line_number":204,"context_line":"    # base job which just adds osprofiler to the environment. Then the traced"},{"line_number":205,"context_line":"    # load generation could be project specific."},{"line_number":206,"context_line":"    parent: neutron-tempest-linuxbridge"},{"line_number":207,"context_line":"    run: playbooks/legacy/neutron-tempest-linuxbridge-osprofiler/run.yaml"},{"line_number":208,"context_line":"    post-run: playbooks/legacy/neutron-tempest-linuxbridge/post.yaml"}],"source_content_type":"text/x-yaml","patch_set":7,"id":"3f79a3b5_cba96778","line":205,"range":{"start_line":201,"start_character":4,"end_line":205,"end_character":48},"in_reply_to":"3f79a3b5_de47f579","updated":"2018-10-24 12:51:19.000000000","message":"At first I\u0027m trying to get osprofiler working on any job. Then when we\u0027ll have a consensus on which job to use for profiling that\u0027ll be easy to modify. The longest tempest job is a good candidate. But rally is another good one, because at the moment it\u0027s better integrated with osprofiler.","commit_id":"32c7fdbd509eaa2c2ba8bfc1fa285242c0458677"},{"author":{"_account_id":15554,"name":"Bence Romsics","email":"bence.romsics@gmail.com","username":"ebenrom","status":"inactive contributor"},"change_message_id":"413827c55791e62ba4b59a8872aed8cf1d21d528","unresolved":false,"context_lines":[{"line_number":213,"context_line":"      - openstack/osprofiler"},{"line_number":214,"context_line":"      - openstack/tempest"},{"line_number":215,"context_line":"    irrelevant-files: *tempest-irrelevant-files"},{"line_number":216,"context_line":"    vars:"},{"line_number":217,"context_line":"      devstack_plugins:"},{"line_number":218,"context_line":"        osprofiler: git://git.openstack.org/openstack/osprofiler"},{"line_number":219,"context_line":"      devstack_localrc:"},{"line_number":220,"context_line":"        OSPROFILER_COLLECTOR: redis"},{"line_number":221,"context_line":"    voting: false"},{"line_number":222,"context_line":""},{"line_number":223,"context_line":"- job:"}],"source_content_type":"text/x-yaml","patch_set":7,"id":"3f79a3b5_0b80bf48","line":220,"range":{"start_line":216,"start_character":0,"end_line":220,"end_character":35},"updated":"2018-10-24 12:51:19.000000000","message":"I think, for this to work, we\u0027d have to inherit this job from a non-legacy (ie. introduced together with zuul v3) parent job. When inheriting from a legacy parent this will be ignored.","commit_id":"32c7fdbd509eaa2c2ba8bfc1fa285242c0458677"}],"/COMMIT_MSG":[{"author":{"_account_id":13995,"name":"Nate Johnston","email":"nate.johnston@redhat.com","username":"natejohnston"},"change_message_id":"8f1ca89be8c6796015305767ac4f42559b0b041b","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"WIP New check job in gate: neutron-tempest-linuxbridge-osprofiler"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"I never added a gate job before. Let\u0027s see how this works."},{"line_number":10,"context_line":""},{"line_number":11,"context_line":"This is far from complete, or even usable."},{"line_number":12,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":5,"id":"3f79a3b5_5ca21c99","line":9,"updated":"2018-10-23 11:04:27.000000000","message":"I am with you - it is not exactly the most intuitive process!  That being said, I\u0027d probably put this in a comment.  :-)","commit_id":"0d714a9544f9691b10503a2790194c5dc96f4ca8"},{"author":{"_account_id":15554,"name":"Bence Romsics","email":"bence.romsics@gmail.com","username":"ebenrom","status":"inactive contributor"},"change_message_id":"c05fb82595a8b7feb18590fe5885ab1d219e44ac","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"WIP New check job in gate: neutron-tempest-linuxbridge-osprofiler"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"I never added a gate job before. Let\u0027s see how this works."},{"line_number":10,"context_line":""},{"line_number":11,"context_line":"This is far from complete, or even usable."},{"line_number":12,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":5,"id":"3f79a3b5_c89c260f","line":9,"in_reply_to":"3f79a3b5_5ca21c99","updated":"2018-10-23 14:16:28.000000000","message":"Done","commit_id":"0d714a9544f9691b10503a2790194c5dc96f4ca8"}],"playbooks/legacy/neutron-tempest-linuxbridge-osprofiler/run.yaml":[{"author":{"_account_id":15554,"name":"Bence Romsics","email":"bence.romsics@gmail.com","username":"ebenrom","status":"inactive contributor"},"change_message_id":"413827c55791e62ba4b59a8872aed8cf1d21d528","unresolved":false,"context_lines":[{"line_number":33,"context_line":"          cat \u003c\u003c \u0027EOF\u0027 \u003e\u003e\"/tmp/dg-local.conf\""},{"line_number":34,"context_line":"          [[local|localrc]]"},{"line_number":35,"context_line":"          Q_AGENT\u003dlinuxbridge"},{"line_number":36,"context_line":"          PHYSICAL_NETWORK\u003ddefault"},{"line_number":37,"context_line":""},{"line_number":38,"context_line":"          EOF"},{"line_number":39,"context_line":"        executable: /bin/bash"}],"source_content_type":"text/x-yaml","patch_set":7,"id":"3f79a3b5_8bd84f80","line":36,"updated":"2018-10-24 12:51:19.000000000","message":"On the other hand what we had here in ps3 was actually working as proved by having a [profiler] section in neutron.conf:\n\nhttp://logs.openstack.org/35/611835/3/check/neutron-tempest-linuxbridge-osprofiler/bd878b6/logs/etc/neutron/neutron.conf.txt.gz\n\nI was just too impatient to wait for all jobs to finish, therefore I was looking the wrong logs, which made me believe ps3 wasn\u0027t working. But it was.","commit_id":"32c7fdbd509eaa2c2ba8bfc1fa285242c0458677"},{"author":{"_account_id":15554,"name":"Bence Romsics","email":"bence.romsics@gmail.com","username":"ebenrom","status":"inactive contributor"},"change_message_id":"96f0a346e4e9c33d7a79a4a2adfdf707ec50b406","unresolved":false,"context_lines":[{"line_number":30,"context_line":"        cmd: |"},{"line_number":31,"context_line":"          set -e"},{"line_number":32,"context_line":"          set -x"},{"line_number":33,"context_line":"          cat \u003c\u003c \u0027EOF\u0027 \u003e\u003e\"/tmp/dg-local.conf\""},{"line_number":34,"context_line":"          [[local|localrc]]"},{"line_number":35,"context_line":"          Q_AGENT\u003dlinuxbridge"},{"line_number":36,"context_line":"          PHYSICAL_NETWORK\u003ddefault"}],"source_content_type":"text/x-yaml","patch_set":8,"id":"3f79a3b5_0b919ff7","line":33,"range":{"start_line":33,"start_character":26,"end_line":33,"end_character":44},"updated":"2018-10-24 13:01:32.000000000","message":"Technically speaking devstack-vm-gate.sh recommends against doing this, but everyone is doing it:\n\nhttps://github.com/openstack-infra/devstack-gate/blob/81ed118c2a14d91d6fedb7796d4d200e260c2e7a/devstack-vm-gate.sh#L608","commit_id":"cfb4da7456763b8396aa1536eb401817326619d9"}]}
