)]}'
{".zuul.yaml":[{"author":{"_account_id":9061,"name":"David Moreau Simard","email":"moi@dmsimard.com","username":"dmsimard"},"change_message_id":"f589363ce3c6f43926368830a7172e5c4f7adf69","unresolved":false,"context_lines":[{"line_number":1,"context_line":"- job:"},{"line_number":2,"context_line":"    name: tempest-tox-plugin-sanity-check"},{"line_number":3,"context_line":"    nodeset: legacy-ubuntu-xenial"},{"line_number":4,"context_line":"    run: playbooks/tempest-tox-plugin-sanity-check/run"},{"line_number":5,"context_line":"    post-run: playbooks/tempest-tox-plugin-sanity-check/post"},{"line_number":6,"context_line":"    voting: false"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"3f4b6375_f6343afd","line":3,"range":{"start_line":3,"start_character":13,"end_line":3,"end_character":33},"updated":"2017-10-23 12:36:10.000000000","message":"Don\u0027t use legacy- when designing new jobs. \u0027ubuntu-xenial\u0027 exists and will work fine.","commit_id":"510615f69066ef7d1cbce1ec3bff4b7f3d397f44"},{"author":{"_account_id":9061,"name":"David Moreau Simard","email":"moi@dmsimard.com","username":"dmsimard"},"change_message_id":"f589363ce3c6f43926368830a7172e5c4f7adf69","unresolved":false,"context_lines":[{"line_number":6,"context_line":"    voting: false"},{"line_number":7,"context_line":"    timeout: 2400"},{"line_number":8,"context_line":"    required-projects:"},{"line_number":9,"context_line":"\t  - openstack/almanach"},{"line_number":10,"context_line":"\t  - openstack/aodh"},{"line_number":11,"context_line":"\t  - openstack/barbican-tempest-plugin"},{"line_number":12,"context_line":"\t  - openstack/ceilometer"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"3f4b6375_565aee4e","line":9,"range":{"start_line":9,"start_character":0,"end_line":9,"end_character":3},"updated":"2017-10-23 12:36:10.000000000","message":"Those are tabs, please use spaces","commit_id":"510615f69066ef7d1cbce1ec3bff4b7f3d397f44"},{"author":{"_account_id":6547,"name":"Andreas Jaeger","email":"jaegerandi@gmail.com","username":"jaegerandi"},"change_message_id":"9863ee89ef56b8870a80f66fa25c045f5f5cf970","unresolved":false,"context_lines":[{"line_number":1,"context_line":"- job:"},{"line_number":2,"context_line":"    name: tempest-tox-plugin-sanity-check"},{"line_number":3,"context_line":"    nodeset: ubuntu-xenial"},{"line_number":4,"context_line":"    run: playbooks/tempest-tox-plugin-sanity-check/run"},{"line_number":5,"context_line":"    post-run: playbooks/tempest-tox-plugin-sanity-check/post"},{"line_number":6,"context_line":"    voting: false"},{"line_number":7,"context_line":"    timeout: 2400"}],"source_content_type":"text/x-yaml","patch_set":7,"id":"3f4b6375_e93a1c96","line":4,"updated":"2017-10-23 14:08:35.000000000","message":"you need to add a parent","commit_id":"d5b9424e5041d3936279629a68dcf8ed479ba2c4"},{"author":{"_account_id":1921,"name":"Andrea Frittoli","email":"andrea.frittoli@gmail.com","username":"andrea-frittoli"},"change_message_id":"3ed02f505e41b0e06061cb06e4e06c75e24ea2ef","unresolved":false,"context_lines":[{"line_number":79,"context_line":"    check:"},{"line_number":80,"context_line":"      jobs:"},{"line_number":81,"context_line":"        - tempest-tox-plugin-sanity-check"},{"line_number":82,"context_line":"    gate:"},{"line_number":83,"context_line":"      jobs:"},{"line_number":84,"context_line":"        - tempest-tox-plugin-sanity-check"}],"source_content_type":"text/x-yaml","patch_set":10,"id":"3f4b6375_1401f905","line":84,"range":{"start_line":82,"start_character":0,"end_line":84,"end_character":41},"updated":"2017-10-24 04:47:38.000000000","message":"We\u0027re not going to run this in the gate.","commit_id":"7fb1327830613d8e50a48506ba1cd1f2a527f1c2"},{"author":{"_account_id":1921,"name":"Andrea Frittoli","email":"andrea.frittoli@gmail.com","username":"andrea-frittoli"},"change_message_id":"b16904ac0f813dc3c9fe27da9e60361d6da03f6d","unresolved":false,"context_lines":[{"line_number":11,"context_line":"      devstack_services:"},{"line_number":12,"context_line":"        tempest: True"},{"line_number":13,"context_line":"    run: playbooks/devstack-tempest.yaml"},{"line_number":14,"context_line":"    "},{"line_number":15,"context_line":" - job:"},{"line_number":16,"context_line":"    name: tempest-tox-plugin-sanity-check"},{"line_number":17,"context_line":"    parent: tox"}],"source_content_type":"text/x-yaml","patch_set":18,"id":"1f485f77_b9ab4c87","line":14,"range":{"start_line":14,"start_character":0,"end_line":14,"end_character":4},"updated":"2017-11-15 10:35:04.000000000","message":"extra space","commit_id":"fcf31e51b1e4145476ca241e17e3889724f8cdde"}],"/COMMIT_MSG":[{"author":{"_account_id":1921,"name":"Andrea Frittoli","email":"andrea.frittoli@gmail.com","username":"andrea-frittoli"},"change_message_id":"e43a91a2c2a0f48baa5dfc610b34b44107e4f453","unresolved":false,"context_lines":[{"line_number":9,"context_line":"* Modified the tempest plugin sanity script to check for"},{"line_number":10,"context_line":"  failed status."},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"Depends-On: Id08618a497b0f9205680a97d31600481b92eab08"},{"line_number":13,"context_line":"Depends-On: I3de3d6c6928d31af9c2deeba800b201bb681ac4e"},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"Change-Id: I2bd52892b05d5c4044e11a34b2ca150dd2445c07"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":22,"id":"ff82abbf_2ccc3c88","line":13,"range":{"start_line":12,"start_character":0,"end_line":13,"end_character":53},"updated":"2017-11-20 10:32:57.000000000","message":"This patch should not depend on the patches on plugins side.\nWe can complete the migration to zuulv3 native job without them.\nThe fact that the job fails means that it\u0027s doing it\u0027s job and finding issues in plugins - which is the reason for this job to be non-voting.","commit_id":"271b3fef285870cdabe06f7b931ba320521747d8"}],"playbooks/tempest-tox-plugin-sanity-check/post.yaml":[{"author":{"_account_id":1921,"name":"Andrea Frittoli","email":"andrea.frittoli@gmail.com","username":"andrea-frittoli"},"change_message_id":"3ed02f505e41b0e06061cb06e4e06c75e24ea2ef","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":10,"id":"3f4b6375_74adcde7","updated":"2017-10-24 04:47:38.000000000","message":"I don\u0027t see anything relevant in this post.... in fact if you look at the logs for this job none of this copies anything. You don\u0027t really need a post job unless you have some custom files you need to copy.","commit_id":"7fb1327830613d8e50a48506ba1cd1f2a527f1c2"},{"author":{"_account_id":1921,"name":"Andrea Frittoli","email":"andrea.frittoli@gmail.com","username":"andrea-frittoli"},"change_message_id":"3ed02f505e41b0e06061cb06e4e06c75e24ea2ef","unresolved":false,"context_lines":[{"line_number":9,"context_line":"        copy_links: true"},{"line_number":10,"context_line":"        verify_host: true"},{"line_number":11,"context_line":"        rsync_opts:"},{"line_number":12,"context_line":"          - --include\u003d**/*nose_results.html"},{"line_number":13,"context_line":"          - --include\u003d*/"},{"line_number":14,"context_line":"          - --exclude\u003d*"},{"line_number":15,"context_line":"          - --prune-empty-dirs"}],"source_content_type":"text/x-yaml","patch_set":10,"id":"3f4b6375_f42e5d90","line":12,"range":{"start_line":12,"start_character":0,"end_line":12,"end_character":43},"updated":"2017-10-24 04:47:38.000000000","message":"Why do you need nose results?","commit_id":"7fb1327830613d8e50a48506ba1cd1f2a527f1c2"},{"author":{"_account_id":1921,"name":"Andrea Frittoli","email":"andrea.frittoli@gmail.com","username":"andrea-frittoli"},"change_message_id":"3ed02f505e41b0e06061cb06e4e06c75e24ea2ef","unresolved":false,"context_lines":[{"line_number":22,"context_line":"        copy_links: true"},{"line_number":23,"context_line":"        verify_host: true"},{"line_number":24,"context_line":"        rsync_opts:"},{"line_number":25,"context_line":"          - --include\u003d**/*testr_results.html.gz"},{"line_number":26,"context_line":"          - --include\u003d*/"},{"line_number":27,"context_line":"          - --exclude\u003d*"},{"line_number":28,"context_line":"          - --prune-empty-dirs"}],"source_content_type":"text/x-yaml","patch_set":10,"id":"3f4b6375_d46da1cc","line":25,"range":{"start_line":25,"start_character":11,"end_line":25,"end_character":47},"updated":"2017-10-24 04:47:38.000000000","message":"We don\u0027t really run any test via (s)testr in this job","commit_id":"7fb1327830613d8e50a48506ba1cd1f2a527f1c2"},{"author":{"_account_id":1921,"name":"Andrea Frittoli","email":"andrea.frittoli@gmail.com","username":"andrea-frittoli"},"change_message_id":"3ed02f505e41b0e06061cb06e4e06c75e24ea2ef","unresolved":false,"context_lines":[{"line_number":35,"context_line":"        copy_links: true"},{"line_number":36,"context_line":"        verify_host: true"},{"line_number":37,"context_line":"        rsync_opts:"},{"line_number":38,"context_line":"          - --include\u003d/.testrepository/tmp*"},{"line_number":39,"context_line":"          - --include\u003d*/"},{"line_number":40,"context_line":"          - --exclude\u003d*"},{"line_number":41,"context_line":"          - --prune-empty-dirs"}],"source_content_type":"text/x-yaml","patch_set":10,"id":"3f4b6375_74682db8","line":38,"range":{"start_line":38,"start_character":10,"end_line":38,"end_character":43},"updated":"2017-10-24 04:47:38.000000000","message":"Ditto ^^^","commit_id":"7fb1327830613d8e50a48506ba1cd1f2a527f1c2"},{"author":{"_account_id":1921,"name":"Andrea Frittoli","email":"andrea.frittoli@gmail.com","username":"andrea-frittoli"},"change_message_id":"3ed02f505e41b0e06061cb06e4e06c75e24ea2ef","unresolved":false,"context_lines":[{"line_number":48,"context_line":"        copy_links: true"},{"line_number":49,"context_line":"        verify_host: true"},{"line_number":50,"context_line":"        rsync_opts:"},{"line_number":51,"context_line":"          - --include\u003d**/*testrepository.subunit.gz"},{"line_number":52,"context_line":"          - --include\u003d*/"},{"line_number":53,"context_line":"          - --exclude\u003d*"},{"line_number":54,"context_line":"          - --prune-empty-dirs"}],"source_content_type":"text/x-yaml","patch_set":10,"id":"3f4b6375_345e3512","line":51,"range":{"start_line":51,"start_character":0,"end_line":51,"end_character":51},"updated":"2017-10-24 04:47:38.000000000","message":"Ditto ^^^","commit_id":"7fb1327830613d8e50a48506ba1cd1f2a527f1c2"},{"author":{"_account_id":1921,"name":"Andrea Frittoli","email":"andrea.frittoli@gmail.com","username":"andrea-frittoli"},"change_message_id":"3ed02f505e41b0e06061cb06e4e06c75e24ea2ef","unresolved":false,"context_lines":[{"line_number":56,"context_line":"    - name: Copy files from {{ ansible_user_dir }}/workspace/ on node"},{"line_number":57,"context_line":"      synchronize:"},{"line_number":58,"context_line":"        src: \u0027{{ ansible_user_dir }}/workspace/\u0027"},{"line_number":59,"context_line":"        dest: \u0027{{ zuul.executor.log_root }}/tox\u0027"},{"line_number":60,"context_line":"        mode: pull"},{"line_number":61,"context_line":"        copy_links: true"},{"line_number":62,"context_line":"        verify_host: true"}],"source_content_type":"text/x-yaml","patch_set":10,"id":"3f4b6375_149d79bb","line":59,"range":{"start_line":59,"start_character":0,"end_line":59,"end_character":48},"updated":"2017-10-24 04:47:38.000000000","message":"The tox folder in logs is empty, not sure we need this","commit_id":"7fb1327830613d8e50a48506ba1cd1f2a527f1c2"}],"playbooks/tempest-tox-plugin-sanity-check/run.yaml":[{"author":{"_account_id":1921,"name":"Andrea Frittoli","email":"andrea.frittoli@gmail.com","username":"andrea-frittoli"},"change_message_id":"3ed02f505e41b0e06061cb06e4e06c75e24ea2ef","unresolved":false,"context_lines":[{"line_number":17,"context_line":"              rm -rf $CLONEMAP $REQS_DIR"},{"line_number":18,"context_line":"          }"},{"line_number":19,"context_line":"          trap cleanup EXIT"},{"line_number":20,"context_line":"          cat \u003e $CLONEMAP \u003c\u003c EOF"},{"line_number":21,"context_line":"          clonemap:"},{"line_number":22,"context_line":"            - name: $ZUUL_PROJECT"},{"line_number":23,"context_line":"              dest: ."},{"line_number":24,"context_line":"          EOF"},{"line_number":25,"context_line":"          # zuul cloner works poorly if there are 2 names that are the"},{"line_number":26,"context_line":"          # same in here."},{"line_number":27,"context_line":"          if [[ \"$ZUUL_PROJECT\" !\u003d \"openstack/requirements\" ]]; then"},{"line_number":28,"context_line":"          cat \u003e\u003e $CLONEMAP \u003c\u003c EOF"},{"line_number":29,"context_line":"            - name: openstack/requirements"},{"line_number":30,"context_line":"              dest: $REQS_DIR"},{"line_number":31,"context_line":"          EOF"},{"line_number":32,"context_line":"          fi"},{"line_number":33,"context_line":"          /usr/zuul-env/bin/zuul-cloner -m $CLONEMAP --cache-dir /opt/git \\"},{"line_number":34,"context_line":"              git://git.openstack.org $ZUUL_PROJECT openstack/requirements"},{"line_number":35,"context_line":"          # REQS_DIR is not set for openstack/requirements and there is also"},{"line_number":36,"context_line":"          # no need to copy in this case."},{"line_number":37,"context_line":"          if [[ \"$ZUUL_PROJECT\" !\u003d \"openstack/requirements\" ]]; then"}],"source_content_type":"text/x-yaml","patch_set":10,"id":"3f4b6375_f48add67","line":34,"range":{"start_line":20,"start_character":0,"end_line":34,"end_character":74},"updated":"2017-10-24 04:47:38.000000000","message":"Do you really need this? openstack/requirements is marked as a repo you need in the job definition, so it will already be cloned by zuul.","commit_id":"7fb1327830613d8e50a48506ba1cd1f2a527f1c2"},{"author":{"_account_id":1921,"name":"Andrea Frittoli","email":"andrea.frittoli@gmail.com","username":"andrea-frittoli"},"change_message_id":"3ed02f505e41b0e06061cb06e4e06c75e24ea2ef","unresolved":false,"context_lines":[{"line_number":64,"context_line":"        chdir: \u0027{{ ansible_user_dir }}/workspace\u0027"},{"line_number":65,"context_line":"      environment: \u0027{{ zuul | zuul_legacy_vars }}\u0027"},{"line_number":66,"context_line":""},{"line_number":67,"context_line":"    - shell:"},{"line_number":68,"context_line":"        cmd: /usr/local/jenkins/slave_scripts/run-tox.sh plugin-sanity-check"},{"line_number":69,"context_line":"        chdir: \u0027{{ ansible_user_dir }}/workspace\u0027"},{"line_number":70,"context_line":"      environment: \u0027{{ zuul | zuul_legacy_vars }}\u0027"},{"line_number":71,"context_line":""},{"line_number":72,"context_line":"    - shell:"},{"line_number":73,"context_line":"        cmd: |"}],"source_content_type":"text/x-yaml","patch_set":10,"id":"3f4b6375_14d45947","line":70,"range":{"start_line":67,"start_character":0,"end_line":70,"end_character":50},"updated":"2017-10-24 04:47:38.000000000","message":"This seems to me the only thing you really need. I\u0027m not sure you need zuul legacy vars in the environment though, but it may be that run-tox uses them.","commit_id":"7fb1327830613d8e50a48506ba1cd1f2a527f1c2"}],"tools/tempest-plugin-sanity.sh":[{"author":{"_account_id":1921,"name":"Andrea Frittoli","email":"andrea.frittoli@gmail.com","username":"andrea-frittoli"},"change_message_id":"3ed02f505e41b0e06061cb06e4e06c75e24ea2ef","unresolved":false,"context_lines":[{"line_number":47,"context_line":"# retrieve a list of projects having tempest plugins"},{"line_number":48,"context_line":"PROJECT_LIST\u003d\"$(python tools/generate-tempest-plugins-list.py)\""},{"line_number":49,"context_line":"# List of projects having tempest plugin stale or unmaintained from long time"},{"line_number":50,"context_line":"BLACKLIST\u003d\"trio2o nova-lxd\""},{"line_number":51,"context_line":""},{"line_number":52,"context_line":"# Function to clone project using zuul-cloner or from git"},{"line_number":53,"context_line":"function clone_project() {"}],"source_content_type":"text/x-sh","patch_set":10,"id":"3f4b6375_f4665dc1","line":50,"range":{"start_line":50,"start_character":0,"end_line":50,"end_character":27},"updated":"2017-10-24 04:47:38.000000000","message":"This change is unrelated to the zuulv3 migration, but I see why you need it, so I guess it\u0027s ok.","commit_id":"7fb1327830613d8e50a48506ba1cd1f2a527f1c2"}]}
