)]}'
{"jenkins/jobs/omni.yaml":[{"author":{"_account_id":6547,"name":"Andreas Jaeger","email":"jaegerandi@gmail.com","username":"jaegerandi"},"change_message_id":"e95579978c2f61f356dcef2a486e094a9cd27bbb","unresolved":false,"context_lines":[{"line_number":1,"context_line":"- job-template:"},{"line_number":2,"context_line":"    name: \u0027{pipeline}-omni-unittests\u0027"},{"line_number":3,"context_line":"    node: \u0027{node}\u0027"},{"line_number":4,"context_line":""},{"line_number":5,"context_line":"    wrappers:"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"7f231b9d_9197d945","line":2,"updated":"2017-06-19 17:07:09.000000000","message":"Do you really need devstack setup for unittests?\nare you not using \"tox -e python27\" etc?","commit_id":"f05d0b82c4b15156bd633c4da44c4da3bd7eaf75"},{"author":{"_account_id":26097,"name":"Pratik Shah","email":"pratik@infracloud.io","username":"pratikshah"},"change_message_id":"5a49415346f8d7f524a708f0b70af2af5c47ca18","unresolved":false,"context_lines":[{"line_number":1,"context_line":"- job-template:"},{"line_number":2,"context_line":"    name: \u0027{pipeline}-omni-unittests\u0027"},{"line_number":3,"context_line":"    node: \u0027{node}\u0027"},{"line_number":4,"context_line":""},{"line_number":5,"context_line":"    wrappers:"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"7f231b9d_3edb1b7e","line":2,"in_reply_to":"7f231b9d_9197d945","updated":"2017-06-20 09:15:46.000000000","message":"We need job which will run unit tests for Omni project whenever new review is posted with the project. Omni projects contains collection of drivers for different cloud vendors, we also need source of few Openstack\ncomponents (nova, glance, neutron, cinder) for running unit tests. We are using https://github.com/openstack/omni/blob/master/runtests.sh file which will run \"tox -epy27\" command to run tests after all dependencies are in place. Going ahead we are also planning to add devstack tests by enabling Omni plugins","commit_id":"f05d0b82c4b15156bd633c4da44c4da3bd7eaf75"},{"author":{"_account_id":6547,"name":"Andreas Jaeger","email":"jaegerandi@gmail.com","username":"jaegerandi"},"change_message_id":"3a140bcb64d715dd31ef29b163ff85f8c75ccc7b","unresolved":false,"context_lines":[{"line_number":8,"context_line":"      - timestamps"},{"line_number":9,"context_line":""},{"line_number":10,"context_line":"    builders:"},{"line_number":11,"context_line":"      - link-logs"},{"line_number":12,"context_line":"      - net-info"},{"line_number":13,"context_line":"      - shell: |"},{"line_number":14,"context_line":"          #!/bin/bash -xe"}],"source_content_type":"text/x-yaml","patch_set":3,"id":"5f201791_e7cbbc50","line":11,"updated":"2017-06-21 18:38:26.000000000","message":"add zuul-git-prep to check out your repository.\n\nadd install-distro-packages to install needed packages\n\nadd revoke-sudo if you do not need sudo","commit_id":"1999e858b16a21769579dca411c198f9605d52b9"},{"author":{"_account_id":26097,"name":"Pratik Shah","email":"pratik@infracloud.io","username":"pratikshah"},"change_message_id":"8b6c9ab0d7c50d6b950b83f7a7eb941432cc5750","unresolved":false,"context_lines":[{"line_number":8,"context_line":"      - timestamps"},{"line_number":9,"context_line":""},{"line_number":10,"context_line":"    builders:"},{"line_number":11,"context_line":"      - link-logs"},{"line_number":12,"context_line":"      - net-info"},{"line_number":13,"context_line":"      - shell: |"},{"line_number":14,"context_line":"          #!/bin/bash -xe"}],"source_content_type":"text/x-yaml","patch_set":3,"id":"5f201791_f7dfd8d3","line":11,"in_reply_to":"5f201791_e7cbbc50","updated":"2017-06-22 11:26:55.000000000","message":"This is not a devstack job yet. We are working on to write a devstack plugin for Omni project.","commit_id":"1999e858b16a21769579dca411c198f9605d52b9"},{"author":{"_account_id":6547,"name":"Andreas Jaeger","email":"jaegerandi@gmail.com","username":"jaegerandi"},"change_message_id":"3a140bcb64d715dd31ef29b163ff85f8c75ccc7b","unresolved":false,"context_lines":[{"line_number":11,"context_line":"      - link-logs"},{"line_number":12,"context_line":"      - net-info"},{"line_number":13,"context_line":"      - shell: |"},{"line_number":14,"context_line":"          #!/bin/bash -xe"},{"line_number":15,"context_line":"          export PYTHONUNBUFFERED\u003dtrue"},{"line_number":16,"context_line":"          export BRANCH_OVERRIDE\u003d{branch-override}"},{"line_number":17,"context_line":"          if [ \"$BRANCH_OVERRIDE\" !\u003d \"default\" ] ; then"},{"line_number":18,"context_line":"              export OVERRIDE_ZUUL_BRANCH\u003d$BRANCH_OVERRIDE"},{"line_number":19,"context_line":"          fi"},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"          function post_test_hook {{"},{"line_number":22,"context_line":"              # Configure and run unit tests"},{"line_number":23,"context_line":"              $BASE/new/omni/run_tests.sh -j"},{"line_number":24,"context_line":"          }}"},{"line_number":25,"context_line":"          export -f post_test_hook"},{"line_number":26,"context_line":""},{"line_number":27,"context_line":"    publishers:"},{"line_number":28,"context_line":"      - test-results"}],"source_content_type":"text/x-yaml","patch_set":3,"id":"5f201791_87c2c832","line":25,"range":{"start_line":14,"start_character":2,"end_line":25,"end_character":34},"updated":"2017-06-21 18:38:26.000000000","message":"That\u0027s all? Nobody will call and execute this hook.","commit_id":"1999e858b16a21769579dca411c198f9605d52b9"},{"author":{"_account_id":6547,"name":"Andreas Jaeger","email":"jaegerandi@gmail.com","username":"jaegerandi"},"change_message_id":"ab9163a4e7bae99c0953408729cb926e9ffc52cc","unresolved":false,"context_lines":[{"line_number":27,"context_line":"              ./run_tests.sh -j"},{"line_number":28,"context_line":"          }}"},{"line_number":29,"context_line":"          export -f post_test_hook"},{"line_number":30,"context_line":""},{"line_number":31,"context_line":"    publishers:"},{"line_number":32,"context_line":"      - test-results"},{"line_number":33,"context_line":"      - console-log"}],"source_content_type":"text/x-yaml","patch_set":4,"id":"5f201791_50cc4d60","line":30,"updated":"2017-06-22 15:26:39.000000000","message":"This will not run anything - only the above script is executed. nothing here calls post_test_hook","commit_id":"645e8803685f86b328a507ad04d0f2873052da52"},{"author":{"_account_id":25687,"name":"Sanket Sudake","email":"sanket@infracloud.io","username":"ssudake21"},"change_message_id":"7904ea65ddffa4a4d3b8181c5318a3387c61513e","unresolved":false,"context_lines":[{"line_number":27,"context_line":"              ./run_tests.sh -j"},{"line_number":28,"context_line":"          }}"},{"line_number":29,"context_line":"          export -f post_test_hook"},{"line_number":30,"context_line":""},{"line_number":31,"context_line":"    publishers:"},{"line_number":32,"context_line":"      - test-results"},{"line_number":33,"context_line":"      - console-log"}],"source_content_type":"text/x-yaml","patch_set":4,"id":"5f201791_4b237c06","line":30,"in_reply_to":"5f201791_50cc4d60","updated":"2017-06-22 15:54:05.000000000","message":"Removed function. Calling steps directly.","commit_id":"645e8803685f86b328a507ad04d0f2873052da52"},{"author":{"_account_id":6547,"name":"Andreas Jaeger","email":"jaegerandi@gmail.com","username":"jaegerandi"},"change_message_id":"61962f309c3aa372e1396eb18c652c82e63b25e7","unresolved":false,"context_lines":[{"line_number":16,"context_line":"      - shell: |"},{"line_number":17,"context_line":"          #!/bin/bash -xe"},{"line_number":18,"context_line":"          cd $BASE/new/omni/"},{"line_number":19,"context_line":"          /usr/zuul-env/bin/zuul-cloner --branch stable/newton \\"},{"line_number":20,"context_line":"          --cache-dir /opt/git \\"},{"line_number":21,"context_line":"          git://git.openstack.org \\"},{"line_number":22,"context_line":"          openstack/nova \\"}],"source_content_type":"text/x-yaml","patch_set":8,"id":"5f201791_6adfcd68","line":19,"updated":"2017-06-27 20:43:51.000000000","message":"Why newton? You\u0027re running master here","commit_id":"65c0faf60e63a8747ec6264f14db72f836794efe"},{"author":{"_account_id":25687,"name":"Sanket Sudake","email":"sanket@infracloud.io","username":"ssudake21"},"change_message_id":"1475d5162caed2bb86c578080f8a09755ff10a61","unresolved":false,"context_lines":[{"line_number":16,"context_line":"      - shell: |"},{"line_number":17,"context_line":"          #!/bin/bash -xe"},{"line_number":18,"context_line":"          cd $BASE/new/omni/"},{"line_number":19,"context_line":"          /usr/zuul-env/bin/zuul-cloner --branch stable/newton \\"},{"line_number":20,"context_line":"          --cache-dir /opt/git \\"},{"line_number":21,"context_line":"          git://git.openstack.org \\"},{"line_number":22,"context_line":"          openstack/nova \\"}],"source_content_type":"text/x-yaml","patch_set":8,"id":"3f1d235d_cac10c31","line":19,"in_reply_to":"5f201791_6adfcd68","updated":"2017-06-29 12:00:56.000000000","message":"Done","commit_id":"65c0faf60e63a8747ec6264f14db72f836794efe"},{"author":{"_account_id":6547,"name":"Andreas Jaeger","email":"jaegerandi@gmail.com","username":"jaegerandi"},"change_message_id":"61962f309c3aa372e1396eb18c652c82e63b25e7","unresolved":false,"context_lines":[{"line_number":24,"context_line":"          openstack/neutron \\"},{"line_number":25,"context_line":"          openstack/glance_store"},{"line_number":26,"context_line":""},{"line_number":27,"context_line":"          export PYTHONUNBUFFERED\u003dtrue"},{"line_number":28,"context_line":"          export BRANCH_OVERRIDE\u003d{branch-override}"},{"line_number":29,"context_line":"          if [ \"$BRANCH_OVERRIDE\" !\u003d \"default\" ] ; then"},{"line_number":30,"context_line":"              export OVERRIDE_ZUUL_BRANCH\u003d$BRANCH_OVERRIDE"},{"line_number":31,"context_line":"          fi"},{"line_number":32,"context_line":"          ./run_tests.sh -j"},{"line_number":33,"context_line":""},{"line_number":34,"context_line":"    publishers:"}],"source_content_type":"text/x-yaml","patch_set":8,"id":"5f201791_0ae05925","line":31,"range":{"start_line":27,"start_character":0,"end_line":31,"end_character":12},"updated":"2017-06-27 20:43:51.000000000","message":"This is specific for devstack jobs and shouldn\u0027t be needed.","commit_id":"65c0faf60e63a8747ec6264f14db72f836794efe"},{"author":{"_account_id":25687,"name":"Sanket Sudake","email":"sanket@infracloud.io","username":"ssudake21"},"change_message_id":"1475d5162caed2bb86c578080f8a09755ff10a61","unresolved":false,"context_lines":[{"line_number":24,"context_line":"          openstack/neutron \\"},{"line_number":25,"context_line":"          openstack/glance_store"},{"line_number":26,"context_line":""},{"line_number":27,"context_line":"          export PYTHONUNBUFFERED\u003dtrue"},{"line_number":28,"context_line":"          export BRANCH_OVERRIDE\u003d{branch-override}"},{"line_number":29,"context_line":"          if [ \"$BRANCH_OVERRIDE\" !\u003d \"default\" ] ; then"},{"line_number":30,"context_line":"              export OVERRIDE_ZUUL_BRANCH\u003d$BRANCH_OVERRIDE"},{"line_number":31,"context_line":"          fi"},{"line_number":32,"context_line":"          ./run_tests.sh -j"},{"line_number":33,"context_line":""},{"line_number":34,"context_line":"    publishers:"}],"source_content_type":"text/x-yaml","patch_set":8,"id":"3f1d235d_8ae1d4d3","line":31,"range":{"start_line":27,"start_character":0,"end_line":31,"end_character":12},"in_reply_to":"5f201791_0ae05925","updated":"2017-06-29 12:00:56.000000000","message":"Done","commit_id":"65c0faf60e63a8747ec6264f14db72f836794efe"},{"author":{"_account_id":4146,"name":"Clark Boylan","email":"cboylan@sapwetik.org","username":"cboylan"},"change_message_id":"5d204ff6f5bf6b3bd5086906a2be05b8849b607d","unresolved":false,"context_lines":[{"line_number":15,"context_line":"      - net-info"},{"line_number":16,"context_line":"      - shell: |"},{"line_number":17,"context_line":"          #!/bin/bash -xe"},{"line_number":18,"context_line":"          cd $BASE/new/omni/"},{"line_number":19,"context_line":"          /usr/zuul-env/bin/zuul-cloner --cache-dir /opt/git \\"},{"line_number":20,"context_line":"          git://git.openstack.org \\"},{"line_number":21,"context_line":"          openstack/nova \\"}],"source_content_type":"text/x-yaml","patch_set":11,"id":"3f1d235d_1a056f14","line":18,"updated":"2017-07-05 16:11:02.000000000","message":"$BASE is a devstack-gate env var. It won\u0027t be set here. Instead the shell script begines execution within the git repo which is configured by the zuul-git-prep macro.\n\nYou might also consider using the default tox running to run the unittests rather than invoking run_tests.sh directly below, this way you get all of the log gathering that is included with the tox runner.","commit_id":"7027b77db8d7be5640742a5fec9215e3a7588202"},{"author":{"_account_id":26097,"name":"Pratik Shah","email":"pratik@infracloud.io","username":"pratikshah"},"change_message_id":"6f98ad244514fc57fa7ad8ba0aa182a1100cec6d","unresolved":false,"context_lines":[{"line_number":15,"context_line":"      - net-info"},{"line_number":16,"context_line":"      - shell: |"},{"line_number":17,"context_line":"          #!/bin/bash -xe"},{"line_number":18,"context_line":"          cd $BASE/new/omni/"},{"line_number":19,"context_line":"          /usr/zuul-env/bin/zuul-cloner --cache-dir /opt/git \\"},{"line_number":20,"context_line":"          git://git.openstack.org \\"},{"line_number":21,"context_line":"          openstack/nova \\"}],"source_content_type":"text/x-yaml","patch_set":11,"id":"3f1d235d_dd435441","line":18,"in_reply_to":"3f1d235d_1a056f14","updated":"2017-07-06 09:28:40.000000000","message":"In run_tests.sh, we are using tox to run unittests. But before running tox, we need to copy driver files from Omni repository to respective components. Hence we are running script which will copy files and then run tox on individual components (nova, cinder, neutron, glance).","commit_id":"7027b77db8d7be5640742a5fec9215e3a7588202"}],"jenkins/jobs/projects.yaml":[{"author":{"_account_id":6547,"name":"Andreas Jaeger","email":"jaegerandi@gmail.com","username":"jaegerandi"},"change_message_id":"e95579978c2f61f356dcef2a486e094a9cd27bbb","unresolved":false,"context_lines":[{"line_number":8906,"context_line":""},{"line_number":8907,"context_line":"    jobs:"},{"line_number":8908,"context_line":"      - \u0027{pipeline}-omni-unittests\u0027:"},{"line_number":8909,"context_line":"          pipeline: experimental"},{"line_number":8910,"context_line":"          branch-override: default"},{"line_number":8911,"context_line":""},{"line_number":8912,"context_line":"- project:"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"7f231b9d_718c3d35","line":8909,"updated":"2017-06-19 17:07:09.000000000","message":"we only use gate and periodic here - not experimental","commit_id":"f05d0b82c4b15156bd633c4da44c4da3bd7eaf75"},{"author":{"_account_id":26097,"name":"Pratik Shah","email":"pratik@infracloud.io","username":"pratikshah"},"change_message_id":"5a49415346f8d7f524a708f0b70af2af5c47ca18","unresolved":false,"context_lines":[{"line_number":8906,"context_line":""},{"line_number":8907,"context_line":"    jobs:"},{"line_number":8908,"context_line":"      - \u0027{pipeline}-omni-unittests\u0027:"},{"line_number":8909,"context_line":"          pipeline: experimental"},{"line_number":8910,"context_line":"          branch-override: default"},{"line_number":8911,"context_line":""},{"line_number":8912,"context_line":"- project:"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"7f231b9d_d3542024","line":8909,"in_reply_to":"7f231b9d_718c3d35","updated":"2017-06-20 09:15:46.000000000","message":"will change it to \"gate\"","commit_id":"f05d0b82c4b15156bd633c4da44c4da3bd7eaf75"},{"author":{"_account_id":6547,"name":"Andreas Jaeger","email":"jaegerandi@gmail.com","username":"jaegerandi"},"change_message_id":"bfcfa2fb22538569214c540d82f4909f355a64cd","unresolved":false,"context_lines":[{"line_number":8993,"context_line":"      - \u0027{pipeline}-omni-tests\u0027:"},{"line_number":8994,"context_line":"          pipeline: gate"},{"line_number":8995,"context_line":"          node: ubuntu-xenial"},{"line_number":8996,"context_line":"          branch-override: default"},{"line_number":8997,"context_line":""},{"line_number":8998,"context_line":"- project:"},{"line_number":8999,"context_line":"    name: ooi"}],"source_content_type":"text/x-yaml","patch_set":10,"id":"3f1d235d_11b25495","line":8996,"updated":"2017-07-02 17:10:09.000000000","message":"this variable is unused, remove it.","commit_id":"2bcc293b806c4d4e2ac559bf4a2e50c374c19b35"}],"zuul/layout.yaml":[{"author":{"_account_id":6547,"name":"Andreas Jaeger","email":"jaegerandi@gmail.com","username":"jaegerandi"},"change_message_id":"e95579978c2f61f356dcef2a486e094a9cd27bbb","unresolved":false,"context_lines":[{"line_number":262,"context_line":"      - noop"},{"line_number":263,"context_line":""},{"line_number":264,"context_line":"  - name: omni"},{"line_number":265,"context_line":"    experimental:"},{"line_number":266,"context_line":"      - \u0027experimental-{name}-unittests\u0027"},{"line_number":267,"context_line":""},{"line_number":268,"context_line":"  - name: ansible-role-jobs"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"7f231b9d_518f0129","line":265,"updated":"2017-06-19 17:07:09.000000000","message":"this just defines a template and is not used.\nInstead of defining a template for single use, add it directly down to the project","commit_id":"f05d0b82c4b15156bd633c4da44c4da3bd7eaf75"},{"author":{"_account_id":6547,"name":"Andreas Jaeger","email":"jaegerandi@gmail.com","username":"jaegerandi"},"change_message_id":"ab9163a4e7bae99c0953408729cb926e9ffc52cc","unresolved":false,"context_lines":[{"line_number":2342,"context_line":"    branch: ^(?!stable/(mitaka|newton|ocata)).*$"},{"line_number":2343,"context_line":""},{"line_number":2344,"context_line":"  - name: ^gate-omni-tests"},{"line_number":2345,"context_line":"    branch: ^master$"},{"line_number":2346,"context_line":""},{"line_number":2347,"context_line":"    # BUG #1290562 pypy does not work with new setuptools, so is breaking"},{"line_number":2348,"context_line":"    # all jobs. Disable until there is resolution."}],"source_content_type":"text/x-yaml","patch_set":4,"id":"5f201791_30db111c","line":2345,"updated":"2017-06-22 15:26:39.000000000","message":"not needed, you only have a master branch","commit_id":"645e8803685f86b328a507ad04d0f2873052da52"},{"author":{"_account_id":25687,"name":"Sanket Sudake","email":"sanket@infracloud.io","username":"ssudake21"},"change_message_id":"7904ea65ddffa4a4d3b8181c5318a3387c61513e","unresolved":false,"context_lines":[{"line_number":2342,"context_line":"    branch: ^(?!stable/(mitaka|newton|ocata)).*$"},{"line_number":2343,"context_line":""},{"line_number":2344,"context_line":"  - name: ^gate-omni-tests"},{"line_number":2345,"context_line":"    branch: ^master$"},{"line_number":2346,"context_line":""},{"line_number":2347,"context_line":"    # BUG #1290562 pypy does not work with new setuptools, so is breaking"},{"line_number":2348,"context_line":"    # all jobs. Disable until there is resolution."}],"source_content_type":"text/x-yaml","patch_set":4,"id":"5f201791_0b4464b6","line":2345,"in_reply_to":"5f201791_30db111c","updated":"2017-06-22 15:54:05.000000000","message":"Removed.","commit_id":"645e8803685f86b328a507ad04d0f2873052da52"}]}
