)]}'
{".zuul.yaml":[{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"tag":"autogenerated:zuul:check","change_message_id":"1f7b7ec285667d1be0c57229f975acea7398cc50","unresolved":false,"context_lines":[{"line_number":210,"context_line":"    vars:"},{"line_number":211,"context_line":"      topology: multinode"},{"line_number":212,"context_line":""},{"line_number":213,"context_line":"- project:"},{"line_number":214,"context_line":"    templates:"},{"line_number":215,"context_line":"      #- openstack-cover-jobs"},{"line_number":216,"context_line":"      #- openstack-lower-constraints-jobs"},{"line_number":217,"context_line":"      #- openstack-python3-ussuri-jobs"},{"line_number":218,"context_line":"      #- periodic-stable-jobs"},{"line_number":219,"context_line":"      #- publish-openstack-docs-pti"},{"line_number":220,"context_line":"      #- check-requirements"},{"line_number":221,"context_line":"      #- release-notes-jobs-python3"},{"line_number":222,"context_line":"    check:"},{"line_number":223,"context_line":"      jobs:"},{"line_number":224,"context_line":"        #- grenade-heat"},{"line_number":225,"context_line":"        #- grenade-heat-multinode"},{"line_number":226,"context_line":"        - heat-functional"},{"line_number":227,"context_line":"        #- heat-functional-legacy"},{"line_number":228,"context_line":"        #- heat-functional-amqp1"},{"line_number":229,"context_line":"        #- heat-functional-non-apache"},{"line_number":230,"context_line":"    gate:"},{"line_number":231,"context_line":"      queue: heat"},{"line_number":232,"context_line":"      jobs:"},{"line_number":233,"context_line":"        #- grenade-heat"},{"line_number":234,"context_line":"        #- grenade-heat-multinode"},{"line_number":235,"context_line":"        - heat-functional"},{"line_number":236,"context_line":"        #- heat-functional-legacy"},{"line_number":237,"context_line":"    experimental:"},{"line_number":238,"context_line":"      jobs:"},{"line_number":239,"context_line":"        - tripleo-ci-centos-7-scenario002-standalone"}],"source_content_type":"text/x-yaml","patch_set":10,"id":"3fa7e38b_482b3f7b","line":239,"range":{"start_line":213,"start_character":2,"end_line":239,"end_character":0},"updated":"2019-12-27 02:29:54.000000000","message":"expected a list for dictionary value @ data[\u0027templates\u0027]","commit_id":"d5cabfba24ce522b20ef2fea62d25e3dbad47559"},{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"tag":"autogenerated:zuul:check","change_message_id":"576f5be54e446f8e2518f599c36decab549c5414","unresolved":false,"context_lines":[{"line_number":210,"context_line":"    vars:"},{"line_number":211,"context_line":"      topology: multinode"},{"line_number":212,"context_line":""},{"line_number":213,"context_line":"- project:"},{"line_number":214,"context_line":"    templates:"},{"line_number":215,"context_line":"      #- openstack-cover-jobs"},{"line_number":216,"context_line":"      #- openstack-lower-constraints-jobs"},{"line_number":217,"context_line":"      #- openstack-python3-ussuri-jobs"},{"line_number":218,"context_line":"      #- periodic-stable-jobs"},{"line_number":219,"context_line":"      #- publish-openstack-docs-pti"},{"line_number":220,"context_line":"      #- check-requirements"},{"line_number":221,"context_line":"      #- release-notes-jobs-python3"},{"line_number":222,"context_line":"    check:"},{"line_number":223,"context_line":"      jobs:"},{"line_number":224,"context_line":"        #- grenade-heat"},{"line_number":225,"context_line":"        #- grenade-heat-multinode"},{"line_number":226,"context_line":"        - heat-functional"},{"line_number":227,"context_line":"        #- heat-functional-legacy"},{"line_number":228,"context_line":"        #- heat-functional-amqp1"},{"line_number":229,"context_line":"        #- heat-functional-non-apache"},{"line_number":230,"context_line":"    gate:"},{"line_number":231,"context_line":"      queue: heat"},{"line_number":232,"context_line":"      jobs:"},{"line_number":233,"context_line":"        #- grenade-heat"},{"line_number":234,"context_line":"        #- grenade-heat-multinode"},{"line_number":235,"context_line":"        - heat-functional"},{"line_number":236,"context_line":"        #- heat-functional-legacy"},{"line_number":237,"context_line":"    experimental:"},{"line_number":238,"context_line":"      jobs:"},{"line_number":239,"context_line":"        - tripleo-ci-centos-7-scenario002-standalone"}],"source_content_type":"text/x-yaml","patch_set":11,"id":"3fa7e38b_886377dd","line":239,"range":{"start_line":213,"start_character":2,"end_line":239,"end_character":0},"updated":"2019-12-27 03:07:20.000000000","message":"expected a list for dictionary value @ data[\u0027templates\u0027]","commit_id":"2ddd4432f8f0f7c83885242c80df08663c2818f7"},{"author":{"_account_id":12404,"name":"Rico Lin","email":"ricolin@ricolky.com","username":"rico.lin"},"change_message_id":"40508ff43c1b684977610bc96c51856c8ca7d11a","unresolved":false,"context_lines":[{"line_number":110,"context_line":"        - grenade-heat-multinode"},{"line_number":111,"context_line":"        - heat-functional"},{"line_number":112,"context_line":"        - heat-functional-legacy"},{"line_number":113,"context_line":"        - heat-functional-amqp1"},{"line_number":114,"context_line":"        - heat-functional-non-apache"},{"line_number":115,"context_line":"    gate:"},{"line_number":116,"context_line":"      queue: heat"},{"line_number":117,"context_line":"      jobs:"}],"source_content_type":"text/x-yaml","patch_set":14,"id":"3fa7e38b_89f84fc1","side":"PARENT","line":114,"range":{"start_line":113,"start_character":0,"end_line":114,"end_character":36},"updated":"2020-01-01 07:13:32.000000000","message":"I didn\u0027t add these two jobs because I\u0027m not sure if we still need to run them. But will be fine to add them in if anyone thinks these jobs are useful","commit_id":"28ce9f3ad42e1a4713dea845bcc4bdc5a6d08fb9"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"bfbd14a635b33bf5006f4891eb81b2866be61fdb","unresolved":false,"context_lines":[{"line_number":1,"context_line":"- job:"},{"line_number":2,"context_line":"    name: heat-functional-base"},{"line_number":3,"context_line":"    parent: devstack-tempest"},{"line_number":4,"context_line":"    abstract: true"},{"line_number":5,"context_line":"    description: Base heat functional test job"},{"line_number":6,"context_line":"    timeout: 7800"}],"source_content_type":"text/x-yaml","patch_set":18,"id":"3fa7e38b_a12437c4","line":3,"range":{"start_line":3,"start_character":12,"end_line":3,"end_character":28},"updated":"2020-01-03 04:13:03.000000000","message":"Because you need to run tempest + non-tempest tests in this job then, you can drive from \u0027devstack\u0027 job.\n\nWith that, you will be able to reuse the existing scripts to run the heat_integration as well as the heat_tempest_plugin tests.\n\nI am writing the idea of playbooks below:\n\n    pre-run: playbooks/pre-heat-tests.yaml\n    run: playbooks/run-heat-tests.yaml\n    post-run: playbooks/post-heat-tests.yaml\n\nThese playbooks can run the new ansible roles something like below:\n\npre-heat-tests.yaml - this can have role which can run heat_integrationtests/pre_test_hook.sh\n\nrun-heat-tests.yaml - this can have role which can run heat_integrationtests/post_test_hook.sh which actually run tests. You can rename this script as name is confusing. It took time for me to actually find this location of tests run :).\n\nplaybooks/post-heat-tests.yaml - This does not need as such but you can do post run tasks here. devstack post-run will still be executed before heat playbook if any.","commit_id":"d253b06d6f1501ca852b793ec578c93f03387a5b"},{"author":{"_account_id":4257,"name":"Zane Bitter","email":"zbitter@redhat.com","username":"zaneb"},"change_message_id":"e0451026a1d3f1cedb0a4c1b38fcbd0a3f36301d","unresolved":false,"context_lines":[{"line_number":6,"context_line":"    post-run: playbooks/devstack/functional/post.yaml"},{"line_number":7,"context_line":"    description: Base heat functional test job"},{"line_number":8,"context_line":"    timeout: 7800"},{"line_number":9,"context_line":"    roles: \u0026base_roles"},{"line_number":10,"context_line":"      - zuul: opendev.org/openstack/devstack"},{"line_number":11,"context_line":"      - zuul: opendev.org/openstack/tempest"},{"line_number":12,"context_line":"    required-projects:"}],"source_content_type":"text/x-yaml","patch_set":23,"id":"3fa7e38b_50009635","line":9,"range":{"start_line":9,"start_character":11,"end_line":9,"end_character":22},"updated":"2020-01-06 18:43:49.000000000","message":"I don\u0027t see this anchor referenced elsewhere in this file, so can we delete it?\n\nThis is one of the worst \u0027features\u0027 of yaml, so let\u0027s avoid if possible :)","commit_id":"f0852561345359b453f1c0fdc07d0aa023cf58b0"},{"author":{"_account_id":12404,"name":"Rico Lin","email":"ricolin@ricolky.com","username":"rico.lin"},"change_message_id":"cb252ce6c4931c02ba38755ca693e76d8bac5a08","unresolved":false,"context_lines":[{"line_number":6,"context_line":"    post-run: playbooks/devstack/functional/post.yaml"},{"line_number":7,"context_line":"    description: Base heat functional test job"},{"line_number":8,"context_line":"    timeout: 7800"},{"line_number":9,"context_line":"    roles: \u0026base_roles"},{"line_number":10,"context_line":"      - zuul: opendev.org/openstack/devstack"},{"line_number":11,"context_line":"      - zuul: opendev.org/openstack/tempest"},{"line_number":12,"context_line":"    required-projects:"}],"source_content_type":"text/x-yaml","patch_set":23,"id":"3fa7e38b_b1754902","line":9,"range":{"start_line":9,"start_character":11,"end_line":9,"end_character":22},"updated":"2020-01-07 01:37:14.000000000","message":"should be fine to get rid of this, since roles already defined by *roles*","commit_id":"f0852561345359b453f1c0fdc07d0aa023cf58b0"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"f910bef496af6222765cd882f40271f9f2fad03c","unresolved":false,"context_lines":[{"line_number":30,"context_line":"      gabbi_tempest_path: heat_tempest_plugin.tests.api.gabbits"},{"line_number":31,"context_line":"      tempest_plugins:"},{"line_number":32,"context_line":"        - heat-tempest-plugin"},{"line_number":33,"context_line":"      tox_envlist: all"},{"line_number":34,"context_line":"      devstack_localrc:"},{"line_number":35,"context_line":"        TEMPEST_PLUGINS: \u0027/opt/stack/heat-tempest-plugin\u0027"},{"line_number":36,"context_line":"        HEAT_USE_MOD_WSGI: True"}],"source_content_type":"text/x-yaml","patch_set":23,"id":"3fa7e38b_d9003103","line":33,"range":{"start_line":33,"start_character":0,"end_line":33,"end_character":22},"updated":"2020-01-06 20:18:46.000000000","message":"this is not needed as you will use separate roles to run the tests not the tempest tox env.","commit_id":"f0852561345359b453f1c0fdc07d0aa023cf58b0"},{"author":{"_account_id":12404,"name":"Rico Lin","email":"ricolin@ricolky.com","username":"rico.lin"},"change_message_id":"cb252ce6c4931c02ba38755ca693e76d8bac5a08","unresolved":false,"context_lines":[{"line_number":30,"context_line":"      gabbi_tempest_path: heat_tempest_plugin.tests.api.gabbits"},{"line_number":31,"context_line":"      tempest_plugins:"},{"line_number":32,"context_line":"        - heat-tempest-plugin"},{"line_number":33,"context_line":"      tox_envlist: all"},{"line_number":34,"context_line":"      devstack_localrc:"},{"line_number":35,"context_line":"        TEMPEST_PLUGINS: \u0027/opt/stack/heat-tempest-plugin\u0027"},{"line_number":36,"context_line":"        HEAT_USE_MOD_WSGI: True"}],"source_content_type":"text/x-yaml","patch_set":23,"id":"3fa7e38b_d1dec50e","line":33,"range":{"start_line":33,"start_character":0,"end_line":33,"end_character":22},"in_reply_to":"3fa7e38b_d9003103","updated":"2020-01-07 01:37:14.000000000","message":"Done","commit_id":"f0852561345359b453f1c0fdc07d0aa023cf58b0"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"f910bef496af6222765cd882f40271f9f2fad03c","unresolved":false,"context_lines":[{"line_number":34,"context_line":"      devstack_localrc:"},{"line_number":35,"context_line":"        TEMPEST_PLUGINS: \u0027/opt/stack/heat-tempest-plugin\u0027"},{"line_number":36,"context_line":"        HEAT_USE_MOD_WSGI: True"},{"line_number":37,"context_line":"        USE_PYTHON3: true"},{"line_number":38,"context_line":"        CEILOMETER_PIPELINE_INTERVAL: 60"},{"line_number":39,"context_line":"      devstack_services:"},{"line_number":40,"context_line":"        tls-proxy: false"}],"source_content_type":"text/x-yaml","patch_set":23,"id":"3fa7e38b_7901fd02","line":37,"range":{"start_line":37,"start_character":0,"end_line":37,"end_character":25},"updated":"2020-01-06 20:18:46.000000000","message":"this is the default in devstack now so you can remove.","commit_id":"f0852561345359b453f1c0fdc07d0aa023cf58b0"},{"author":{"_account_id":12404,"name":"Rico Lin","email":"ricolin@ricolky.com","username":"rico.lin"},"change_message_id":"cb252ce6c4931c02ba38755ca693e76d8bac5a08","unresolved":false,"context_lines":[{"line_number":34,"context_line":"      devstack_localrc:"},{"line_number":35,"context_line":"        TEMPEST_PLUGINS: \u0027/opt/stack/heat-tempest-plugin\u0027"},{"line_number":36,"context_line":"        HEAT_USE_MOD_WSGI: True"},{"line_number":37,"context_line":"        USE_PYTHON3: true"},{"line_number":38,"context_line":"        CEILOMETER_PIPELINE_INTERVAL: 60"},{"line_number":39,"context_line":"      devstack_services:"},{"line_number":40,"context_line":"        tls-proxy: false"}],"source_content_type":"text/x-yaml","patch_set":23,"id":"3fa7e38b_71dfd10a","line":37,"range":{"start_line":37,"start_character":0,"end_line":37,"end_character":25},"in_reply_to":"3fa7e38b_7901fd02","updated":"2020-01-07 01:37:14.000000000","message":"Done","commit_id":"f0852561345359b453f1c0fdc07d0aa023cf58b0"},{"author":{"_account_id":4257,"name":"Zane Bitter","email":"zbitter@redhat.com","username":"zaneb"},"change_message_id":"e0451026a1d3f1cedb0a4c1b38fcbd0a3f36301d","unresolved":false,"context_lines":[{"line_number":54,"context_line":"        post-config:"},{"line_number":55,"context_line":"          $HEAT_CONF:"},{"line_number":56,"context_line":"            DEFAULT:"},{"line_number":57,"context_line":"              convergence_engine: true"},{"line_number":58,"context_line":"              stack_scheduler_hints: true"},{"line_number":59,"context_line":"              hidden_stack_tags: hidden"},{"line_number":60,"context_line":"              encrypt_parameters_and_properties: True"}],"source_content_type":"text/x-yaml","patch_set":23,"id":"3fa7e38b_73d4bcbb","line":57,"updated":"2020-01-06 18:43:49.000000000","message":"This is the default but I guess it doesn\u0027t hurt to be explicit.","commit_id":"f0852561345359b453f1c0fdc07d0aa023cf58b0"},{"author":{"_account_id":4257,"name":"Zane Bitter","email":"zbitter@redhat.com","username":"zaneb"},"change_message_id":"e0451026a1d3f1cedb0a4c1b38fcbd0a3f36301d","unresolved":false,"context_lines":[{"line_number":74,"context_line":"        test-config:"},{"line_number":75,"context_line":"          $TEMPEST_CONFIG:"},{"line_number":76,"context_line":"            heat_plugin:"},{"line_number":77,"context_line":"              convergence_engine_enabled: true"},{"line_number":78,"context_line":"              minimal_image_ref: ${DEFAULT_IMAGE_NAME:-cirros-0.3.6-x86_64-disk}"},{"line_number":79,"context_line":"              instance_type: m1.heat_int"},{"line_number":80,"context_line":"              minimal_instance_type: m1.heat_micro"}],"source_content_type":"text/x-yaml","patch_set":23,"id":"3fa7e38b_33dac4e5","line":77,"updated":"2020-01-06 18:43:49.000000000","message":"It\u0027s unfortunate that we now have to keep the tempest config and heat config in sync in separate places, but I can\u0027t think of a better way.","commit_id":"f0852561345359b453f1c0fdc07d0aa023cf58b0"},{"author":{"_account_id":4257,"name":"Zane Bitter","email":"zbitter@redhat.com","username":"zaneb"},"change_message_id":"6331d1a618911e0eca7f03e854a18fa69af41249","unresolved":false,"context_lines":[{"line_number":74,"context_line":"        test-config:"},{"line_number":75,"context_line":"          $TEMPEST_CONFIG:"},{"line_number":76,"context_line":"            heat_plugin:"},{"line_number":77,"context_line":"              convergence_engine_enabled: true"},{"line_number":78,"context_line":"              minimal_image_ref: ${DEFAULT_IMAGE_NAME:-cirros-0.3.6-x86_64-disk}"},{"line_number":79,"context_line":"              instance_type: m1.heat_int"},{"line_number":80,"context_line":"              minimal_instance_type: m1.heat_micro"}],"source_content_type":"text/x-yaml","patch_set":23,"id":"3fa7e38b_31ae392f","line":77,"in_reply_to":"3fa7e38b_11dc5d6f","updated":"2020-01-07 01:52:51.000000000","message":"What I meant is that in the old way if you wanted to make a legacy job, you only had to set one thing - \"disable_convergence: \u0027true\u0027\" on line 43 of the base. But now you have to remember to set two different things (on lines 128 \u0026 132), and if you don\u0027t change them both in lockstep then the configuration is invalid.\n\nThat\u0027s not a big deal, but it also applies to other things in this list of configs (e.g. hidden_stack_tag).\n\nMaybe in future we could change configure_tempest_for_heat to look at the Heat config and configure tempest to match for some of these, rather than need to specify both in the zuul.yaml.","commit_id":"f0852561345359b453f1c0fdc07d0aa023cf58b0"},{"author":{"_account_id":12404,"name":"Rico Lin","email":"ricolin@ricolky.com","username":"rico.lin"},"change_message_id":"cb252ce6c4931c02ba38755ca693e76d8bac5a08","unresolved":false,"context_lines":[{"line_number":74,"context_line":"        test-config:"},{"line_number":75,"context_line":"          $TEMPEST_CONFIG:"},{"line_number":76,"context_line":"            heat_plugin:"},{"line_number":77,"context_line":"              convergence_engine_enabled: true"},{"line_number":78,"context_line":"              minimal_image_ref: ${DEFAULT_IMAGE_NAME:-cirros-0.3.6-x86_64-disk}"},{"line_number":79,"context_line":"              instance_type: m1.heat_int"},{"line_number":80,"context_line":"              minimal_instance_type: m1.heat_micro"}],"source_content_type":"text/x-yaml","patch_set":23,"id":"3fa7e38b_11dc5d6f","line":77,"in_reply_to":"3fa7e38b_33dac4e5","updated":"2020-01-07 01:37:14.000000000","message":"this patch uses the same config place (in tempest.conf) actually, so is that a better way for you?","commit_id":"f0852561345359b453f1c0fdc07d0aa023cf58b0"},{"author":{"_account_id":4257,"name":"Zane Bitter","email":"zbitter@redhat.com","username":"zaneb"},"change_message_id":"e0451026a1d3f1cedb0a4c1b38fcbd0a3f36301d","unresolved":false,"context_lines":[{"line_number":84,"context_line":"              boot_config_env: /opt/stack/heat-templates/hot/software-config/boot-config/test_image_env.yaml"},{"line_number":85,"context_line":"              skip_scenario_test_list: \u0027AutoscalingLoadBalancerTest, AutoscalingLoadBalancerv2Test, SoftwareConfigIntegrationTest\u0027"},{"line_number":86,"context_line":"              # Skip LoadBalancerv2Test as deprecated neutron-lbaas service is not enabled"},{"line_number":87,"context_line":"              skip_functional_test_list: \u0027LoadBalancerv2Test, NotificationTest\u0027"},{"line_number":88,"context_line":"              credential_secret_id: $OS_CREDENTIAL_SECRET_ID"},{"line_number":89,"context_line":"            heat_features_enabled:"},{"line_number":90,"context_line":"              multi_cloud: True"}],"source_content_type":"text/x-yaml","patch_set":23,"id":"3fa7e38b_f3066ccd","line":87,"updated":"2020-01-06 18:43:49.000000000","message":"It could be mildly annoying that to change the skip lists we have to modify the Zuul config, with the result that *every* job (including e.g. requirements) has to be re-run. Could it go in the configure_tempest_for_heat function in the devstack plugin maybe?","commit_id":"f0852561345359b453f1c0fdc07d0aa023cf58b0"},{"author":{"_account_id":12404,"name":"Rico Lin","email":"ricolin@ricolky.com","username":"rico.lin"},"change_message_id":"cb252ce6c4931c02ba38755ca693e76d8bac5a08","unresolved":false,"context_lines":[{"line_number":84,"context_line":"              boot_config_env: /opt/stack/heat-templates/hot/software-config/boot-config/test_image_env.yaml"},{"line_number":85,"context_line":"              skip_scenario_test_list: \u0027AutoscalingLoadBalancerTest, AutoscalingLoadBalancerv2Test, SoftwareConfigIntegrationTest\u0027"},{"line_number":86,"context_line":"              # Skip LoadBalancerv2Test as deprecated neutron-lbaas service is not enabled"},{"line_number":87,"context_line":"              skip_functional_test_list: \u0027LoadBalancerv2Test, NotificationTest\u0027"},{"line_number":88,"context_line":"              credential_secret_id: $OS_CREDENTIAL_SECRET_ID"},{"line_number":89,"context_line":"            heat_features_enabled:"},{"line_number":90,"context_line":"              multi_cloud: True"}],"source_content_type":"text/x-yaml","patch_set":23,"id":"3fa7e38b_91e4cde0","line":87,"in_reply_to":"3fa7e38b_f3066ccd","updated":"2020-01-07 01:37:14.000000000","message":"Fine to put it configure_tempest_for_heat, so Done","commit_id":"f0852561345359b453f1c0fdc07d0aa023cf58b0"},{"author":{"_account_id":4257,"name":"Zane Bitter","email":"zbitter@redhat.com","username":"zaneb"},"change_message_id":"e0451026a1d3f1cedb0a4c1b38fcbd0a3f36301d","unresolved":false,"context_lines":[{"line_number":133,"context_line":""},{"line_number":134,"context_line":"- job:"},{"line_number":135,"context_line":"    name: grenade-heat"},{"line_number":136,"context_line":"    parent: legacy-dsvm-base"},{"line_number":137,"context_line":"    run: playbooks/devstack/grenade/run.yaml"},{"line_number":138,"context_line":"    post-run: playbooks/devstack/grenade/post.yaml"},{"line_number":139,"context_line":"    timeout: 7800"}],"source_content_type":"text/x-yaml","patch_set":23,"id":"3fa7e38b_704fd2bd","line":136,"updated":"2020-01-06 18:43:49.000000000","message":"Do you know what\u0027s involved in migrating the grenade job away from legacy as well? Would it be easier to do it at the same time?","commit_id":"f0852561345359b453f1c0fdc07d0aa023cf58b0"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"f910bef496af6222765cd882f40271f9f2fad03c","unresolved":false,"context_lines":[{"line_number":133,"context_line":""},{"line_number":134,"context_line":"- job:"},{"line_number":135,"context_line":"    name: grenade-heat"},{"line_number":136,"context_line":"    parent: legacy-dsvm-base"},{"line_number":137,"context_line":"    run: playbooks/devstack/grenade/run.yaml"},{"line_number":138,"context_line":"    post-run: playbooks/devstack/grenade/post.yaml"},{"line_number":139,"context_line":"    timeout: 7800"}],"source_content_type":"text/x-yaml","patch_set":23,"id":"3fa7e38b_791a5d6b","line":136,"in_reply_to":"3fa7e38b_704fd2bd","updated":"2020-01-06 20:18:46.000000000","message":"actually we do not have base zuulv3 job ready for grenade, which should be easy to use in all grenade jobs.\nwork is under review - https://review.opendev.org/#/c/548936/","commit_id":"f0852561345359b453f1c0fdc07d0aa023cf58b0"},{"author":{"_account_id":12404,"name":"Rico Lin","email":"ricolin@ricolky.com","username":"rico.lin"},"change_message_id":"cb252ce6c4931c02ba38755ca693e76d8bac5a08","unresolved":false,"context_lines":[{"line_number":133,"context_line":""},{"line_number":134,"context_line":"- job:"},{"line_number":135,"context_line":"    name: grenade-heat"},{"line_number":136,"context_line":"    parent: legacy-dsvm-base"},{"line_number":137,"context_line":"    run: playbooks/devstack/grenade/run.yaml"},{"line_number":138,"context_line":"    post-run: playbooks/devstack/grenade/post.yaml"},{"line_number":139,"context_line":"    timeout: 7800"}],"source_content_type":"text/x-yaml","patch_set":23,"id":"3fa7e38b_f140a1a5","line":136,"in_reply_to":"3fa7e38b_791a5d6b","updated":"2020-01-07 01:37:14.000000000","message":"\u003e actually we do not have base zuulv3 job ready for grenade, which\n \u003e should be easy to use in all grenade jobs.\n \u003e work is under review - https://review.opendev.org/#/c/548936/\n\nThanks for the info.","commit_id":"f0852561345359b453f1c0fdc07d0aa023cf58b0"}],"/COMMIT_MSG":[{"author":{"_account_id":12404,"name":"Rico Lin","email":"ricolin@ricolky.com","username":"rico.lin"},"change_message_id":"6673374ab1bc878d563734d4132f96ae8daacb8c","unresolved":false,"context_lines":[{"line_number":38,"context_line":"heat_integrationtests in heat-tempest-plugin, or put all heat tests in"},{"line_number":39,"context_line":"heat-tempest-plugin and seperate them from other tests."},{"line_number":40,"context_line":""},{"line_number":41,"context_line":"TODO: Use NODEPOOL_FEDORA_MIRROR for IMAGE_URLS references if possible."},{"line_number":42,"context_line":""},{"line_number":43,"context_line":"Story: #2007056"},{"line_number":44,"context_line":"Task: #37908"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":16,"id":"3fa7e38b_9bcc0d8b","line":41,"range":{"start_line":41,"start_character":0,"end_line":41,"end_character":4},"updated":"2020-01-02 15:32:00.000000000","message":"introduced in https://review.opendev.org/#/c/700858","commit_id":"050c185b55d1b66ec6408821536afc5973eddcf2"},{"author":{"_account_id":12404,"name":"Rico Lin","email":"ricolin@ricolky.com","username":"rico.lin"},"change_message_id":"f800cf9605be2ea6557b333f15298608005d199a","unresolved":false,"context_lines":[{"line_number":15,"context_line":"Use tempest config for all heat_integration tests. Also remove"},{"line_number":16,"context_line":"heat_integrationtests/common/configs since they\u0027re no longer required."},{"line_number":17,"context_line":""},{"line_number":18,"context_line":"* Remove test discover under `heat_integrationtests/__init__.py`, since"},{"line_number":19,"context_line":"it\u0027s no longer required."},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"* copy post.yaml for grenade jobs. As we migrate to zuul v3 for"},{"line_number":22,"context_line":"functional tests but not grenade (not yet), the post.yaml should exists"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":20,"id":"3fa7e38b_e25b0352","line":19,"range":{"start_line":18,"start_character":0,"end_line":19,"end_character":24},"updated":"2020-01-06 07:05:00.000000000","message":"undo this message too","commit_id":"cab0db4c7b09ac2031316c0d9f2b2887af782a79"},{"author":{"_account_id":12404,"name":"Rico Lin","email":"ricolin@ricolky.com","username":"rico.lin"},"change_message_id":"f800cf9605be2ea6557b333f15298608005d199a","unresolved":false,"context_lines":[{"line_number":24,"context_line":""},{"line_number":25,"context_line":"* Add PyMySQL to requirements."},{"line_number":26,"context_line":""},{"line_number":27,"context_line":"* Remove adding heat in service_available under heat devstack plugin since"},{"line_number":28,"context_line":"that\u0027s already covered by tempest plugin."},{"line_number":29,"context_line":""},{"line_number":30,"context_line":"*This patch also provide a new tempest plugin `heat_integrationtests` under"},{"line_number":31,"context_line":"heat repo. `devstack-tempest` job will call tests with native tempest way,"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":20,"id":"3fa7e38b_02597f59","line":28,"range":{"start_line":27,"start_character":0,"end_line":28,"end_character":41},"updated":"2020-01-06 07:05:00.000000000","message":"undo this message too","commit_id":"cab0db4c7b09ac2031316c0d9f2b2887af782a79"},{"author":{"_account_id":12404,"name":"Rico Lin","email":"ricolin@ricolky.com","username":"rico.lin"},"change_message_id":"242927348f8daefdd6fa3dcbca8775450ba4ba5f","unresolved":false,"context_lines":[{"line_number":27,"context_line":"* Remove adding heat in service_available under heat devstack plugin since"},{"line_number":28,"context_line":"that\u0027s already covered by tempest plugin."},{"line_number":29,"context_line":""},{"line_number":30,"context_line":"*This patch also provide a new tempest plugin `heat_integrationtests` under"},{"line_number":31,"context_line":"heat repo. `devstack-tempest` job will call tests with native tempest way,"},{"line_number":32,"context_line":"so we need to find a new way to combined tests from heat_integrationtests and"},{"line_number":33,"context_line":"heat_tempest_plugin. see todo below."},{"line_number":34,"context_line":""},{"line_number":35,"context_line":"TODO:"},{"line_number":36,"context_line":"We should move heat_integrationtests tempest tests out of heat repo."},{"line_number":37,"context_line":"As alternative, we can also consider to discover tests under"},{"line_number":38,"context_line":"heat_integrationtests in heat-tempest-plugin, or put all heat tests in"},{"line_number":39,"context_line":"heat-tempest-plugin and seperate them from other tests."},{"line_number":40,"context_line":""},{"line_number":41,"context_line":"Story: #2007056"},{"line_number":42,"context_line":"Task: #37908"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":20,"id":"3fa7e38b_62487389","line":39,"range":{"start_line":30,"start_character":0,"end_line":39,"end_character":55},"updated":"2020-01-06 06:03:11.000000000","message":"This is no longer true, remove it in next update","commit_id":"cab0db4c7b09ac2031316c0d9f2b2887af782a79"}],"devstack/lib/heat":[{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"bfbd14a635b33bf5006f4891eb81b2866be61fdb","unresolved":false,"context_lines":[{"line_number":442,"context_line":"# this function."},{"line_number":443,"context_line":"function configure_tempest_for_heat {"},{"line_number":444,"context_line":"    if is_service_enabled tempest; then"},{"line_number":445,"context_line":"        # already covered in lib/tempest:configure_tempest:586"},{"line_number":446,"context_line":"        #iniset $TEMPEST_CONFIG service_available heat True"},{"line_number":447,"context_line":""},{"line_number":448,"context_line":"        openstack flavor show m1.heat_int || openstack flavor create m1.heat_int --ram 512 --disk 4"},{"line_number":449,"context_line":"        openstack flavor show m1.heat_micro || openstack flavor create m1.heat_micro --ram 128 --disk 1"}],"source_content_type":"application/x-shellscript","patch_set":18,"id":"3fa7e38b_c1693326","line":446,"range":{"start_line":445,"start_character":0,"end_line":446,"end_character":59},"updated":"2020-01-03 04:13:03.000000000","message":"we need this as I am removing those form devstack side - https://review.opendev.org/#/c/619973/4","commit_id":"d253b06d6f1501ca852b793ec578c93f03387a5b"},{"author":{"_account_id":12404,"name":"Rico Lin","email":"ricolin@ricolky.com","username":"rico.lin"},"change_message_id":"8f04ca300d929824cdf3debecc92396ea442fadf","unresolved":false,"context_lines":[{"line_number":442,"context_line":"# this function."},{"line_number":443,"context_line":"function configure_tempest_for_heat {"},{"line_number":444,"context_line":"    if is_service_enabled tempest; then"},{"line_number":445,"context_line":"        # already covered in lib/tempest:configure_tempest:586"},{"line_number":446,"context_line":"        #iniset $TEMPEST_CONFIG service_available heat True"},{"line_number":447,"context_line":""},{"line_number":448,"context_line":"        openstack flavor show m1.heat_int || openstack flavor create m1.heat_int --ram 512 --disk 4"},{"line_number":449,"context_line":"        openstack flavor show m1.heat_micro || openstack flavor create m1.heat_micro --ram 128 --disk 1"}],"source_content_type":"application/x-shellscript","patch_set":18,"id":"3fa7e38b_6d8149fa","line":446,"range":{"start_line":445,"start_character":0,"end_line":446,"end_character":59},"in_reply_to":"3fa7e38b_c1693326","updated":"2020-01-05 08:34:42.000000000","message":"got it","commit_id":"d253b06d6f1501ca852b793ec578c93f03387a5b"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"f910bef496af6222765cd882f40271f9f2fad03c","unresolved":false,"context_lines":[{"line_number":451,"context_line":"    openstack subnet show heat-subnet || openstack subnet create heat-subnet --network heat-net --subnet-range 10.0.5.0/24"},{"line_number":452,"context_line":"    openstack router add subnet router1 heat-subnet"},{"line_number":453,"context_line":""},{"line_number":454,"context_line":"    iniset $TEMPEST_CONFIG heat_plugin username $OS_USERNAME"},{"line_number":455,"context_line":"    iniset $TEMPEST_CONFIG heat_plugin password $OS_PASSWORD"},{"line_number":456,"context_line":"    iniset $TEMPEST_CONFIG heat_plugin project_name $OS_PROJECT_NAME"},{"line_number":457,"context_line":"    iniset $TEMPEST_CONFIG heat_plugin auth_url $OS_AUTH_URL"},{"line_number":458,"context_line":"    iniset $TEMPEST_CONFIG heat_plugin user_domain_id $OS_USER_DOMAIN_ID"},{"line_number":459,"context_line":"    iniset $TEMPEST_CONFIG heat_plugin project_domain_id $OS_PROJECT_DOMAIN_ID"},{"line_number":460,"context_line":"    iniset $TEMPEST_CONFIG heat_plugin user_domain_name $OS_USER_DOMAIN_NAME"},{"line_number":461,"context_line":"    iniset $TEMPEST_CONFIG heat_plugin project_domain_name $OS_PROJECT_DOMAIN_NAME"},{"line_number":462,"context_line":"    iniset $TEMPEST_CONFIG heat_plugin region $OS_REGION_NAME"},{"line_number":463,"context_line":"    iniset $TEMPEST_CONFIG heat_plugin auth_version $OS_IDENTITY_API_VERSION"},{"line_number":464,"context_line":""},{"line_number":465,"context_line":"    source $TOP_DIR/openrc admin admin"},{"line_number":466,"context_line":"    iniset $TEMPEST_CONFIG heat_plugin admin_username $OS_USERNAME"},{"line_number":467,"context_line":"    iniset $TEMPEST_CONFIG heat_plugin admin_password $OS_PASSWORD"},{"line_number":468,"context_line":"    if [[ -e /etc/ci/mirror_info.sh ]]; then"},{"line_number":469,"context_line":"        source /etc/ci/mirror_info.sh"},{"line_number":470,"context_line":"    fi"}],"source_content_type":"application/x-shellscript","patch_set":23,"id":"3fa7e38b_9954f9fe","line":467,"range":{"start_line":454,"start_character":0,"end_line":467,"end_character":66},"updated":"2020-01-06 20:18:46.000000000","message":"almost all of these are present and set on tempest by devstack. You should be able to use those directly from tempest namepsace but that need heat-tempest-plugin to update.\n\nThis is something can be optimized later.","commit_id":"f0852561345359b453f1c0fdc07d0aa023cf58b0"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"2b0ab98e9c2954320c7a49183e77b938c1d0d06b","unresolved":false,"context_lines":[{"line_number":451,"context_line":"    openstack subnet show heat-subnet || openstack subnet create heat-subnet --network heat-net --subnet-range 10.0.5.0/24"},{"line_number":452,"context_line":"    openstack router add subnet router1 heat-subnet"},{"line_number":453,"context_line":""},{"line_number":454,"context_line":"    iniset $TEMPEST_CONFIG heat_plugin username $OS_USERNAME"},{"line_number":455,"context_line":"    iniset $TEMPEST_CONFIG heat_plugin password $OS_PASSWORD"},{"line_number":456,"context_line":"    iniset $TEMPEST_CONFIG heat_plugin project_name $OS_PROJECT_NAME"},{"line_number":457,"context_line":"    iniset $TEMPEST_CONFIG heat_plugin auth_url $OS_AUTH_URL"},{"line_number":458,"context_line":"    iniset $TEMPEST_CONFIG heat_plugin user_domain_id $OS_USER_DOMAIN_ID"},{"line_number":459,"context_line":"    iniset $TEMPEST_CONFIG heat_plugin project_domain_id $OS_PROJECT_DOMAIN_ID"},{"line_number":460,"context_line":"    iniset $TEMPEST_CONFIG heat_plugin user_domain_name $OS_USER_DOMAIN_NAME"},{"line_number":461,"context_line":"    iniset $TEMPEST_CONFIG heat_plugin project_domain_name $OS_PROJECT_DOMAIN_NAME"},{"line_number":462,"context_line":"    iniset $TEMPEST_CONFIG heat_plugin region $OS_REGION_NAME"},{"line_number":463,"context_line":"    iniset $TEMPEST_CONFIG heat_plugin auth_version $OS_IDENTITY_API_VERSION"},{"line_number":464,"context_line":""},{"line_number":465,"context_line":"    source $TOP_DIR/openrc admin admin"},{"line_number":466,"context_line":"    iniset $TEMPEST_CONFIG heat_plugin admin_username $OS_USERNAME"},{"line_number":467,"context_line":"    iniset $TEMPEST_CONFIG heat_plugin admin_password $OS_PASSWORD"},{"line_number":468,"context_line":"    if [[ -e /etc/ci/mirror_info.sh ]]; then"},{"line_number":469,"context_line":"        source /etc/ci/mirror_info.sh"},{"line_number":470,"context_line":"    fi"}],"source_content_type":"application/x-shellscript","patch_set":23,"id":"3fa7e38b_0532d05d","line":467,"range":{"start_line":454,"start_character":0,"end_line":467,"end_character":66},"in_reply_to":"3fa7e38b_1163fdac","updated":"2020-01-07 18:05:50.000000000","message":"+1 on that idea. that will make tests easy to maintain for long term.","commit_id":"f0852561345359b453f1c0fdc07d0aa023cf58b0"},{"author":{"_account_id":12404,"name":"Rico Lin","email":"ricolin@ricolky.com","username":"rico.lin"},"change_message_id":"cb252ce6c4931c02ba38755ca693e76d8bac5a08","unresolved":false,"context_lines":[{"line_number":451,"context_line":"    openstack subnet show heat-subnet || openstack subnet create heat-subnet --network heat-net --subnet-range 10.0.5.0/24"},{"line_number":452,"context_line":"    openstack router add subnet router1 heat-subnet"},{"line_number":453,"context_line":""},{"line_number":454,"context_line":"    iniset $TEMPEST_CONFIG heat_plugin username $OS_USERNAME"},{"line_number":455,"context_line":"    iniset $TEMPEST_CONFIG heat_plugin password $OS_PASSWORD"},{"line_number":456,"context_line":"    iniset $TEMPEST_CONFIG heat_plugin project_name $OS_PROJECT_NAME"},{"line_number":457,"context_line":"    iniset $TEMPEST_CONFIG heat_plugin auth_url $OS_AUTH_URL"},{"line_number":458,"context_line":"    iniset $TEMPEST_CONFIG heat_plugin user_domain_id $OS_USER_DOMAIN_ID"},{"line_number":459,"context_line":"    iniset $TEMPEST_CONFIG heat_plugin project_domain_id $OS_PROJECT_DOMAIN_ID"},{"line_number":460,"context_line":"    iniset $TEMPEST_CONFIG heat_plugin user_domain_name $OS_USER_DOMAIN_NAME"},{"line_number":461,"context_line":"    iniset $TEMPEST_CONFIG heat_plugin project_domain_name $OS_PROJECT_DOMAIN_NAME"},{"line_number":462,"context_line":"    iniset $TEMPEST_CONFIG heat_plugin region $OS_REGION_NAME"},{"line_number":463,"context_line":"    iniset $TEMPEST_CONFIG heat_plugin auth_version $OS_IDENTITY_API_VERSION"},{"line_number":464,"context_line":""},{"line_number":465,"context_line":"    source $TOP_DIR/openrc admin admin"},{"line_number":466,"context_line":"    iniset $TEMPEST_CONFIG heat_plugin admin_username $OS_USERNAME"},{"line_number":467,"context_line":"    iniset $TEMPEST_CONFIG heat_plugin admin_password $OS_PASSWORD"},{"line_number":468,"context_line":"    if [[ -e /etc/ci/mirror_info.sh ]]; then"},{"line_number":469,"context_line":"        source /etc/ci/mirror_info.sh"},{"line_number":470,"context_line":"    fi"}],"source_content_type":"application/x-shellscript","patch_set":23,"id":"3fa7e38b_1163fdac","line":467,"range":{"start_line":454,"start_character":0,"end_line":467,"end_character":66},"in_reply_to":"3fa7e38b_9954f9fe","updated":"2020-01-07 01:37:14.000000000","message":"agree, but I\u0027m more thing about trigger discussion to use native tempest client and get rid of python client dependency, but that will be another thing too","commit_id":"f0852561345359b453f1c0fdc07d0aa023cf58b0"},{"author":{"_account_id":4257,"name":"Zane Bitter","email":"zbitter@redhat.com","username":"zaneb"},"change_message_id":"e0451026a1d3f1cedb0a4c1b38fcbd0a3f36301d","unresolved":false,"context_lines":[{"line_number":480,"context_line":"    if is_service_enabled tls-proxy; then"},{"line_number":481,"context_line":"        iniset $TEMPEST_CONFIG heat_plugin ca_file $SSL_BUNDLE_FILE"},{"line_number":482,"context_line":"    fi"},{"line_number":483,"context_line":"    # Skip SoftwareConfigIntegrationTest because it requires a custom image"},{"line_number":484,"context_line":"    # Skip VolumeBackupRestoreIntegrationTest skipped until failure rate can be reduced ref bug #1382300"},{"line_number":485,"context_line":"    # Skip AutoscalingLoadBalancerTest and AutoscalingLoadBalancerv2Test as deprecated neutron-lbaas service is not enabled"},{"line_number":486,"context_line":"    # support test multi-cloud"},{"line_number":487,"context_line":"    app_cred_id\u003d$(openstack application credential show  heat_multicloud || openstack application credential create heat_multicloud \\"},{"line_number":488,"context_line":"        --secret secret --unrestricted -c id -f value)"},{"line_number":489,"context_line":"    export OS_CREDENTIAL_SECRET_ID\u003d$(openstack secret store -n heat-multi-cloud-test-cred --payload \\"}],"source_content_type":"application/x-shellscript","patch_set":23,"id":"3fa7e38b_9307f8c8","line":486,"range":{"start_line":483,"start_character":0,"end_line":486,"end_character":30},"updated":"2020-01-06 18:43:49.000000000","message":"These comments should be wherever the skip lists are (currently .zuul.yaml).","commit_id":"f0852561345359b453f1c0fdc07d0aa023cf58b0"},{"author":{"_account_id":12404,"name":"Rico Lin","email":"ricolin@ricolky.com","username":"rico.lin"},"change_message_id":"cb252ce6c4931c02ba38755ca693e76d8bac5a08","unresolved":false,"context_lines":[{"line_number":480,"context_line":"    if is_service_enabled tls-proxy; then"},{"line_number":481,"context_line":"        iniset $TEMPEST_CONFIG heat_plugin ca_file $SSL_BUNDLE_FILE"},{"line_number":482,"context_line":"    fi"},{"line_number":483,"context_line":"    # Skip SoftwareConfigIntegrationTest because it requires a custom image"},{"line_number":484,"context_line":"    # Skip VolumeBackupRestoreIntegrationTest skipped until failure rate can be reduced ref bug #1382300"},{"line_number":485,"context_line":"    # Skip AutoscalingLoadBalancerTest and AutoscalingLoadBalancerv2Test as deprecated neutron-lbaas service is not enabled"},{"line_number":486,"context_line":"    # support test multi-cloud"},{"line_number":487,"context_line":"    app_cred_id\u003d$(openstack application credential show  heat_multicloud || openstack application credential create heat_multicloud \\"},{"line_number":488,"context_line":"        --secret secret --unrestricted -c id -f value)"},{"line_number":489,"context_line":"    export OS_CREDENTIAL_SECRET_ID\u003d$(openstack secret store -n heat-multi-cloud-test-cred --payload \\"}],"source_content_type":"application/x-shellscript","patch_set":23,"id":"3fa7e38b_b101c9b7","line":486,"range":{"start_line":483,"start_character":0,"end_line":486,"end_character":30},"in_reply_to":"3fa7e38b_9307f8c8","updated":"2020-01-07 01:37:14.000000000","message":"Done","commit_id":"f0852561345359b453f1c0fdc07d0aa023cf58b0"}],"devstack/plugin.sh":[{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"bfbd14a635b33bf5006f4891eb81b2866be61fdb","unresolved":false,"context_lines":[{"line_number":17,"context_line":"        install_heatclient"},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"    elif [[ \"$1\" \u003d\u003d \"stack\" \u0026\u0026 \"$2\" \u003d\u003d \"test-config\" ]]; then"},{"line_number":20,"context_line":"        echo_summary \"Configuring Tempest for Heat\""},{"line_number":21,"context_line":"        configure_tempest_for_heat"},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"    elif [[ \"$1\" \u003d\u003d \"stack\" \u0026\u0026 \"$2\" \u003d\u003d \"post-config\" ]]; then"},{"line_number":24,"context_line":"        echo_summary \"Cleaning up heat\""}],"source_content_type":"text/x-sh","patch_set":18,"id":"3fa7e38b_816fbb27","line":21,"range":{"start_line":20,"start_character":0,"end_line":21,"end_character":34},"updated":"2020-01-03 04:13:03.000000000","message":"you can do these only if Tempest is enabled. \n\n    if is_service_enabled tempest; then\n        echo_summary \"Configuring Tempest for Heat\"\n        configure_tempest_for_heat","commit_id":"d253b06d6f1501ca852b793ec578c93f03387a5b"},{"author":{"_account_id":12404,"name":"Rico Lin","email":"ricolin@ricolky.com","username":"rico.lin"},"change_message_id":"8f04ca300d929824cdf3debecc92396ea442fadf","unresolved":false,"context_lines":[{"line_number":17,"context_line":"        install_heatclient"},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"    elif [[ \"$1\" \u003d\u003d \"stack\" \u0026\u0026 \"$2\" \u003d\u003d \"test-config\" ]]; then"},{"line_number":20,"context_line":"        echo_summary \"Configuring Tempest for Heat\""},{"line_number":21,"context_line":"        configure_tempest_for_heat"},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"    elif [[ \"$1\" \u003d\u003d \"stack\" \u0026\u0026 \"$2\" \u003d\u003d \"post-config\" ]]; then"},{"line_number":24,"context_line":"        echo_summary \"Cleaning up heat\""}],"source_content_type":"text/x-sh","patch_set":18,"id":"3fa7e38b_ad8bc11b","line":21,"range":{"start_line":20,"start_character":0,"end_line":21,"end_character":34},"in_reply_to":"3fa7e38b_816fbb27","updated":"2020-01-05 08:34:42.000000000","message":"The logic already added in https://review.opendev.org/#/c/660877/18/devstack/lib/heat but since I\u0027m update the patch, I guess I can move it to here","commit_id":"d253b06d6f1501ca852b793ec578c93f03387a5b"},{"author":{"_account_id":8833,"name":"Rabi Mishra","email":"ramishra@redhat.com","username":"rabi"},"change_message_id":"23e471ab9f93790b1de1c4bce9b25178425bcaf1","unresolved":false,"context_lines":[{"line_number":36,"context_line":"        echo_summary \"Starting heat\""},{"line_number":37,"context_line":"        start_heat"},{"line_number":38,"context_line":""},{"line_number":39,"context_line":"    elif [[ \"$1\" \u003d\u003d \"stack\" \u0026\u0026 \"$2\" \u003d\u003d \"test-config\" ]]; then"},{"line_number":40,"context_line":"        echo_summary \"Configuring Tempest for Heat\""},{"line_number":41,"context_line":"        configure_tempest_for_heat"},{"line_number":42,"context_line":"    fi"},{"line_number":43,"context_line":""},{"line_number":44,"context_line":"    if [[ \"$1\" \u003d\u003d \"unstack\" ]]; then"}],"source_content_type":"text/x-sh","patch_set":24,"id":"3fa7e38b_b427771e","side":"PARENT","line":41,"range":{"start_line":39,"start_character":4,"end_line":41,"end_character":34},"updated":"2020-01-07 04:17:56.000000000","message":"This seems like not reachable code merged a year back;)","commit_id":"28ce9f3ad42e1a4713dea845bcc4bdc5a6d08fb9"}],"heat_integrationtests/__init__.py":[{"author":{"_account_id":4257,"name":"Zane Bitter","email":"zbitter@redhat.com","username":"zaneb"},"change_message_id":"e0451026a1d3f1cedb0a4c1b38fcbd0a3f36301d","unresolved":false,"context_lines":[{"line_number":22,"context_line":""},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"def load_tests(loader, standard_tests, pattern):"},{"line_number":25,"context_line":"    logging.setup(config.init_conf(), __name__)"},{"line_number":26,"context_line":""},{"line_number":27,"context_line":"    suite \u003d unittest.TestSuite()"},{"line_number":28,"context_line":""}],"source_content_type":"text/x-python","patch_set":23,"id":"3fa7e38b_531e600d","side":"PARENT","line":25,"updated":"2020-01-06 18:43:49.000000000","message":"No logging of test discovery any more? (I wasn\u0027t able to find the messages below in any logs, at least.) That seems like a step backwards.\n\nI\u0027d expect we should be able to use the config from Tempest itself to set up logging. I don\u0027t think Tempest sets it up prior to test discovery, which is why this was here.","commit_id":"28ce9f3ad42e1a4713dea845bcc4bdc5a6d08fb9"},{"author":{"_account_id":12404,"name":"Rico Lin","email":"ricolin@ricolky.com","username":"rico.lin"},"change_message_id":"cb252ce6c4931c02ba38755ca693e76d8bac5a08","unresolved":false,"context_lines":[{"line_number":22,"context_line":""},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"def load_tests(loader, standard_tests, pattern):"},{"line_number":25,"context_line":"    logging.setup(config.init_conf(), __name__)"},{"line_number":26,"context_line":""},{"line_number":27,"context_line":"    suite \u003d unittest.TestSuite()"},{"line_number":28,"context_line":""}],"source_content_type":"text/x-python","patch_set":23,"id":"3fa7e38b_11bbfdbd","side":"PARENT","line":25,"in_reply_to":"3fa7e38b_531e600d","updated":"2020-01-07 01:37:14.000000000","message":"Done","commit_id":"28ce9f3ad42e1a4713dea845bcc4bdc5a6d08fb9"}],"heat_integrationtests/post_test_hook.sh":[{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"bfbd14a635b33bf5006f4891eb81b2866be61fdb","unresolved":false,"context_lines":[{"line_number":20,"context_line":"export TOP_DIR\u003d${TOP_DIR:-/opt/stack/new/devstack}"},{"line_number":21,"context_line":"sudo -E $DEST/heat/heat_integrationtests/prepare_test_env.sh"},{"line_number":22,"context_line":"sudo -E $DEST/heat/heat_integrationtests/prepare_test_network.sh"},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"cd $DEST/tempest"},{"line_number":25,"context_line":"sudo tox -evenv-tempest -- stestr --test-path\u003d$DEST/heat/heat_integrationtests --top-dir\u003d$DEST/heat --group_regex\u003d\u0027heat_tempest_plugin\\.tests\\.api\\.test_heat_api[._]([^_]+)\u0027 run"},{"line_number":26,"context_line":""},{"line_number":27,"context_line":"sudo -E $DEST/heat/heat_integrationtests/cleanup_test_env.sh"}],"source_content_type":"text/x-sh","patch_set":18,"id":"3fa7e38b_2144c772","side":"PARENT","line":25,"range":{"start_line":23,"start_character":0,"end_line":25,"end_character":177},"updated":"2020-01-03 04:13:03.000000000","message":"so this is the one who run all the combined tests and this can be your \u0027run-heat-tests\u0027 role which can run from run.yaml playbook of zuulv3 native jobs.","commit_id":"28ce9f3ad42e1a4713dea845bcc4bdc5a6d08fb9"},{"author":{"_account_id":12404,"name":"Rico Lin","email":"ricolin@ricolky.com","username":"rico.lin"},"change_message_id":"8f04ca300d929824cdf3debecc92396ea442fadf","unresolved":false,"context_lines":[{"line_number":20,"context_line":"export TOP_DIR\u003d${TOP_DIR:-/opt/stack/new/devstack}"},{"line_number":21,"context_line":"sudo -E $DEST/heat/heat_integrationtests/prepare_test_env.sh"},{"line_number":22,"context_line":"sudo -E $DEST/heat/heat_integrationtests/prepare_test_network.sh"},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"cd $DEST/tempest"},{"line_number":25,"context_line":"sudo tox -evenv-tempest -- stestr --test-path\u003d$DEST/heat/heat_integrationtests --top-dir\u003d$DEST/heat --group_regex\u003d\u0027heat_tempest_plugin\\.tests\\.api\\.test_heat_api[._]([^_]+)\u0027 run"},{"line_number":26,"context_line":""},{"line_number":27,"context_line":"sudo -E $DEST/heat/heat_integrationtests/cleanup_test_env.sh"}],"source_content_type":"text/x-sh","patch_set":18,"id":"3fa7e38b_8d028571","side":"PARENT","line":25,"range":{"start_line":23,"start_character":0,"end_line":25,"end_character":177},"in_reply_to":"3fa7e38b_2144c772","updated":"2020-01-05 08:34:42.000000000","message":"This script is run under devstack-gate/devstack-vm-gate-wrap.sh, so if we make our own roles will need to check if we can run this script without that script. Because devstack-vm-gate-wrap.sh require variable like WORKSPACE, which is not recommended by zuul v3 native","commit_id":"28ce9f3ad42e1a4713dea845bcc4bdc5a6d08fb9"}],"playbooks/devstack/functional/post.yaml":[{"author":{"_account_id":4257,"name":"Zane Bitter","email":"zbitter@redhat.com","username":"zaneb"},"change_message_id":"e0451026a1d3f1cedb0a4c1b38fcbd0a3f36301d","unresolved":false,"context_lines":[{"line_number":15,"context_line":"  become: true"},{"line_number":16,"context_line":"  roles:"},{"line_number":17,"context_line":"    - role: fetch-subunit-output"},{"line_number":18,"context_line":"      zuul_work_dir: \u0027{{ devstack_base_dir }}/tempest\u0027"},{"line_number":19,"context_line":"    - role: process-stackviz"}],"source_content_type":"text/x-yaml","patch_set":23,"id":"3fa7e38b_73211cfc","line":18,"updated":"2020-01-06 18:43:49.000000000","message":"This seems to be working, but the testr_results.html.gz file isn\u0027t being generated. Any idea why?","commit_id":"f0852561345359b453f1c0fdc07d0aa023cf58b0"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"f910bef496af6222765cd882f40271f9f2fad03c","unresolved":false,"context_lines":[{"line_number":15,"context_line":"  become: true"},{"line_number":16,"context_line":"  roles:"},{"line_number":17,"context_line":"    - role: fetch-subunit-output"},{"line_number":18,"context_line":"      zuul_work_dir: \u0027{{ devstack_base_dir }}/tempest\u0027"},{"line_number":19,"context_line":"    - role: process-stackviz"}],"source_content_type":"text/x-yaml","patch_set":23,"id":"3fa7e38b_f9de4d69","line":18,"in_reply_to":"3fa7e38b_73211cfc","updated":"2020-01-06 20:18:46.000000000","message":"its there - https://zuul.opendev.org/t/openstack/build/4c416d01a2b444cc806b5a9fe1164625/logs","commit_id":"f0852561345359b453f1c0fdc07d0aa023cf58b0"},{"author":{"_account_id":4257,"name":"Zane Bitter","email":"zbitter@redhat.com","username":"zaneb"},"change_message_id":"6331d1a618911e0eca7f03e854a18fa69af41249","unresolved":false,"context_lines":[{"line_number":15,"context_line":"  become: true"},{"line_number":16,"context_line":"  roles:"},{"line_number":17,"context_line":"    - role: fetch-subunit-output"},{"line_number":18,"context_line":"      zuul_work_dir: \u0027{{ devstack_base_dir }}/tempest\u0027"},{"line_number":19,"context_line":"    - role: process-stackviz"}],"source_content_type":"text/x-yaml","patch_set":23,"id":"3fa7e38b_b15f894b","line":18,"in_reply_to":"3fa7e38b_f9de4d69","updated":"2020-01-07 01:52:51.000000000","message":"Oh, right, you have to click the \u0027raw\u0027 link. My bad, thanks.","commit_id":"f0852561345359b453f1c0fdc07d0aa023cf58b0"}],"playbooks/devstack/functional/run.yaml":[{"author":{"_account_id":8833,"name":"Rabi Mishra","email":"ramishra@redhat.com","username":"rabi"},"change_message_id":"23e471ab9f93790b1de1c4bce9b25178425bcaf1","unresolved":false,"context_lines":[{"line_number":7,"context_line":"    # This enviroment variable is used by the optional tempest-gabbi"},{"line_number":8,"context_line":"    # job provided by the gabbi-tempest plugin. It can be safely ignored"},{"line_number":9,"context_line":"    # if that plugin is not being used."},{"line_number":10,"context_line":"    GABBI_TEMPEST_PATH: \"{{ gabbi_tempest_path | default(\u0027\u0027) }}\""},{"line_number":11,"context_line":"  roles:"},{"line_number":12,"context_line":"    - setup-tempest-run-dir"},{"line_number":13,"context_line":"    - setup-tempest-data-dir"}],"source_content_type":"text/x-yaml","patch_set":24,"id":"3fa7e38b_143e8b25","line":10,"range":{"start_line":10,"start_character":4,"end_line":10,"end_character":64},"updated":"2020-01-07 04:17:56.000000000","message":"Is this required, though would be ignored? We don\u0027t use gabbi-tempest plugin or tempest-gabbi job.","commit_id":"c8d1a9f901aa7b956c055668532967fd34202fe4"},{"author":{"_account_id":12404,"name":"Rico Lin","email":"ricolin@ricolky.com","username":"rico.lin"},"change_message_id":"2821136aff2c92a1fb6abed21d5c0d58ae2f22a5","unresolved":false,"context_lines":[{"line_number":7,"context_line":"    # This enviroment variable is used by the optional tempest-gabbi"},{"line_number":8,"context_line":"    # job provided by the gabbi-tempest plugin. It can be safely ignored"},{"line_number":9,"context_line":"    # if that plugin is not being used."},{"line_number":10,"context_line":"    GABBI_TEMPEST_PATH: \"{{ gabbi_tempest_path | default(\u0027\u0027) }}\""},{"line_number":11,"context_line":"  roles:"},{"line_number":12,"context_line":"    - setup-tempest-run-dir"},{"line_number":13,"context_line":"    - setup-tempest-data-dir"}],"source_content_type":"text/x-yaml","patch_set":24,"id":"3fa7e38b_345ce74a","line":10,"range":{"start_line":10,"start_character":4,"end_line":10,"end_character":64},"in_reply_to":"3fa7e38b_143e8b25","updated":"2020-01-07 04:50:28.000000000","message":"I think this is not required for current jobs. No harm to keep it as it can be safely ignored, so I\u0027m fine to keep it or leave it in a follow-up patch.","commit_id":"c8d1a9f901aa7b956c055668532967fd34202fe4"}],"roles/run-heat-tests/tasks/main.yaml":[{"author":{"_account_id":8833,"name":"Rabi Mishra","email":"ramishra@redhat.com","username":"rabi"},"change_message_id":"23e471ab9f93790b1de1c4bce9b25178425bcaf1","unresolved":false,"context_lines":[{"line_number":6,"context_line":"    chdir: \"{{devstack_base_dir}}/tempest\""},{"line_number":7,"context_line":"  become: true"},{"line_number":8,"context_line":"  become_user: tempest"},{"line_number":9,"context_line":"  environment: \u0027{{ {\"OS_TEST_TIMEOUT\": tempest_test_timeout} if tempest_test_timeout else {} }}\u0027"}],"source_content_type":"text/x-yaml","patch_set":24,"id":"3fa7e38b_94cefb29","line":9,"range":{"start_line":9,"start_character":0,"end_line":9,"end_character":96},"updated":"2020-01-07 04:17:56.000000000","message":"Though does not harm, we don\u0027t seem to use \u0027tempest_test_timeout\u0027 role variable in the jobs.","commit_id":"c8d1a9f901aa7b956c055668532967fd34202fe4"},{"author":{"_account_id":12404,"name":"Rico Lin","email":"ricolin@ricolky.com","username":"rico.lin"},"change_message_id":"2821136aff2c92a1fb6abed21d5c0d58ae2f22a5","unresolved":false,"context_lines":[{"line_number":6,"context_line":"    chdir: \"{{devstack_base_dir}}/tempest\""},{"line_number":7,"context_line":"  become: true"},{"line_number":8,"context_line":"  become_user: tempest"},{"line_number":9,"context_line":"  environment: \u0027{{ {\"OS_TEST_TIMEOUT\": tempest_test_timeout} if tempest_test_timeout else {} }}\u0027"}],"source_content_type":"text/x-yaml","patch_set":24,"id":"3fa7e38b_b42d37af","line":9,"range":{"start_line":9,"start_character":0,"end_line":9,"end_character":96},"in_reply_to":"3fa7e38b_94cefb29","updated":"2020-01-07 04:50:28.000000000","message":"Our none of our current jobs use this, so I didn\u0027t add it in migration patch. Which might be something we can consider or just remove the environment variable if we\u0027re sure that that\u0027s never going to be required by heat jobs","commit_id":"c8d1a9f901aa7b956c055668532967fd34202fe4"}]}
