)]}'
{".zuul.yaml":[{"author":{"_account_id":12393,"name":"chandan kumar","display_name":"Chandan Kumar","email":"chkumar@redhat.com","username":"chkumar246"},"change_message_id":"1477cf3cd510c30b73390b484f85156b6be587d2","unresolved":false,"context_lines":[{"line_number":109,"context_line":"    vars:"},{"line_number":110,"context_line":"      tempest_test_regex:"},{"line_number":111,"context_line":"        - \u0027heat_tempest_plugin\u0027"},{"line_number":112,"context_line":"      tempest_black_regex:"},{"line_number":113,"context_line":"        - \u0027heat_tempest_plugin.tests.scenario.test_volumes.VolumeBackupRestoreIntegrationTest.test_cinder_volume_create_backup_restore\u0027"},{"line_number":114,"context_line":"        - \u0027heat_tempest_plugin.tests.scenario.test_server_software_config.SoftwareConfigIntegrationTest.test_server_software_config\u0027"},{"line_number":115,"context_line":"        - \u0027heat_tempest_plugin.tests.scenario.test_server_signal.ServerSignalIntegrationTest.test_server_signal_userdata_format_software_config\u0027"},{"line_number":116,"context_line":"        - \u0027heat_tempest_plugin.tests.scenario.test_aodh_alarm.AodhAlarmTest.test_alarm\u0027"},{"line_number":117,"context_line":"        - \u0027heat_tempest_plugin.tests.scenario.test_server_cfn_init.CfnInitIntegrationTest.test_server_cfn_init\u0027"},{"line_number":118,"context_line":"        - \u0027heat_tempest_plugin.tests.scenario.test_base_resources.BasicResourcesTest.test_base_resources_integration\u0027"},{"line_number":119,"context_line":"        - \u0027heat_tempest_plugin.tests.functional.test_os_wait_condition.OSWaitCondition.test_create_stack_with_multi_signal_waitcondition\u0027"},{"line_number":120,"context_line":"      user: admin"},{"line_number":121,"context_line":"      cloud_user: devstack-admin"},{"line_number":122,"context_line":"      plugins_paths:"}],"source_content_type":"text/x-yaml","patch_set":27,"id":"3fce034c_da31440d","line":119,"range":{"start_line":112,"start_character":5,"end_line":119,"end_character":137},"updated":"2019-04-17 15:29:05.000000000","message":"Can we add a comment here why it is skipped better track with a bz?","commit_id":"950f6fd85c965981a716d01ec667a1c08972432c"},{"author":{"_account_id":22873,"name":"Martin Kopec","email":"mkopec@redhat.com","username":"mkopec"},"change_message_id":"dd33f6407bc41994d3b98275889e7d0fbc2ccbe2","unresolved":false,"context_lines":[{"line_number":109,"context_line":"    vars:"},{"line_number":110,"context_line":"      tempest_test_regex:"},{"line_number":111,"context_line":"        - \u0027heat_tempest_plugin\u0027"},{"line_number":112,"context_line":"      tempest_black_regex:"},{"line_number":113,"context_line":"        - \u0027heat_tempest_plugin.tests.scenario.test_volumes.VolumeBackupRestoreIntegrationTest.test_cinder_volume_create_backup_restore\u0027"},{"line_number":114,"context_line":"        - \u0027heat_tempest_plugin.tests.scenario.test_server_software_config.SoftwareConfigIntegrationTest.test_server_software_config\u0027"},{"line_number":115,"context_line":"        - \u0027heat_tempest_plugin.tests.scenario.test_server_signal.ServerSignalIntegrationTest.test_server_signal_userdata_format_software_config\u0027"},{"line_number":116,"context_line":"        - \u0027heat_tempest_plugin.tests.scenario.test_aodh_alarm.AodhAlarmTest.test_alarm\u0027"},{"line_number":117,"context_line":"        - \u0027heat_tempest_plugin.tests.scenario.test_server_cfn_init.CfnInitIntegrationTest.test_server_cfn_init\u0027"},{"line_number":118,"context_line":"        - \u0027heat_tempest_plugin.tests.scenario.test_base_resources.BasicResourcesTest.test_base_resources_integration\u0027"},{"line_number":119,"context_line":"        - \u0027heat_tempest_plugin.tests.functional.test_os_wait_condition.OSWaitCondition.test_create_stack_with_multi_signal_waitcondition\u0027"},{"line_number":120,"context_line":"      user: admin"},{"line_number":121,"context_line":"      cloud_user: devstack-admin"},{"line_number":122,"context_line":"      plugins_paths:"}],"source_content_type":"text/x-yaml","patch_set":27,"id":"3fce034c_f52e91f8","line":119,"range":{"start_line":112,"start_character":5,"end_line":119,"end_character":137},"in_reply_to":"3fce034c_da31440d","updated":"2019-04-17 15:58:37.000000000","message":"There are no bugs, I skipped them because either:\n- they take long time\n- they are failing due to not complete tempest.conf configuration - some configuration is beyond tempestconf\u0027s discovery abilities .. also the goal regarding heat support is to pass as many tests as possible and not necessary all of them (configuration generated by python-tempestconf passes more than 80% (approx. estimate) of all heat_tempest_plugin tests, which is good.","commit_id":"950f6fd85c965981a716d01ec667a1c08972432c"},{"author":{"_account_id":12393,"name":"chandan kumar","display_name":"Chandan Kumar","email":"chkumar@redhat.com","username":"chkumar246"},"change_message_id":"db8e20a19999cca73b2166512568683c42b97776","unresolved":false,"context_lines":[{"line_number":107,"context_line":"      Tempest job for python-tempestconf on a devstack environment as the admin user."},{"line_number":108,"context_line":"    run: playbooks/python-tempestconf-tempest-devstack.yaml"},{"line_number":109,"context_line":"    vars:"},{"line_number":110,"context_line":"      test_regex:"},{"line_number":111,"context_line":"        - \u0027heat_tempest_plugin\u0027"},{"line_number":112,"context_line":"      black_regex:"},{"line_number":113,"context_line":"        - \u0027heat_tempest_plugin.tests.scenario.test_volumes.VolumeBackupRestoreIntegrationTest.test_cinder_volume_create_backup_restore\u0027"},{"line_number":114,"context_line":"        - \u0027heat_tempest_plugin.tests.scenario.test_server_software_config.SoftwareConfigIntegrationTest.test_server_software_config\u0027"},{"line_number":115,"context_line":"        - \u0027heat_tempest_plugin.tests.scenario.test_server_signal.ServerSignalIntegrationTest.test_server_signal_userdata_format_software_config\u0027"},{"line_number":116,"context_line":"        - \u0027heat_tempest_plugin.tests.scenario.test_aodh_alarm.AodhAlarmTest.test_alarm\u0027"},{"line_number":117,"context_line":"        - \u0027heat_tempest_plugin.tests.scenario.test_server_cfn_init.CfnInitIntegrationTest.test_server_cfn_init\u0027"},{"line_number":118,"context_line":"        - \u0027heat_tempest_plugin.tests.scenario.test_base_resources.BasicResourcesTest.test_base_resources_integration\u0027"},{"line_number":119,"context_line":"        - \u0027heat_tempest_plugin.tests.functional.test_os_wait_condition.OSWaitCondition.test_create_stack_with_multi_signal_waitcondition\u0027"},{"line_number":120,"context_line":"      user: admin"},{"line_number":121,"context_line":"      cloud_user: devstack-admin"},{"line_number":122,"context_line":"      plugins_paths:"}],"source_content_type":"text/x-yaml","patch_set":38,"id":"bfb3d3c7_518bbf1d","line":119,"range":{"start_line":110,"start_character":0,"end_line":119,"end_character":137},"updated":"2019-05-28 10:01:39.000000000","message":"Can we reuse the same var tempest_test_regex and empest_black_regex instead of adding new var?","commit_id":"1d51de57d3c45a0b618e4d0199c81de5583a9c74"},{"author":{"_account_id":10459,"name":"Luigi Toscano","email":"ltoscano@redhat.com","username":"ltoscano"},"change_message_id":"9a5e6ec3e0d709622a4ce70291b687aeabd1481e","unresolved":false,"context_lines":[{"line_number":107,"context_line":"      Tempest job for python-tempestconf on a devstack environment as the admin user."},{"line_number":108,"context_line":"    run: playbooks/python-tempestconf-tempest-devstack.yaml"},{"line_number":109,"context_line":"    vars:"},{"line_number":110,"context_line":"      test_regex:"},{"line_number":111,"context_line":"        - \u0027heat_tempest_plugin\u0027"},{"line_number":112,"context_line":"      black_regex:"},{"line_number":113,"context_line":"        - \u0027heat_tempest_plugin.tests.scenario.test_volumes.VolumeBackupRestoreIntegrationTest.test_cinder_volume_create_backup_restore\u0027"},{"line_number":114,"context_line":"        - \u0027heat_tempest_plugin.tests.scenario.test_server_software_config.SoftwareConfigIntegrationTest.test_server_software_config\u0027"},{"line_number":115,"context_line":"        - \u0027heat_tempest_plugin.tests.scenario.test_server_signal.ServerSignalIntegrationTest.test_server_signal_userdata_format_software_config\u0027"},{"line_number":116,"context_line":"        - \u0027heat_tempest_plugin.tests.scenario.test_aodh_alarm.AodhAlarmTest.test_alarm\u0027"},{"line_number":117,"context_line":"        - \u0027heat_tempest_plugin.tests.scenario.test_server_cfn_init.CfnInitIntegrationTest.test_server_cfn_init\u0027"},{"line_number":118,"context_line":"        - \u0027heat_tempest_plugin.tests.scenario.test_base_resources.BasicResourcesTest.test_base_resources_integration\u0027"},{"line_number":119,"context_line":"        - \u0027heat_tempest_plugin.tests.functional.test_os_wait_condition.OSWaitCondition.test_create_stack_with_multi_signal_waitcondition\u0027"},{"line_number":120,"context_line":"      user: admin"},{"line_number":121,"context_line":"      cloud_user: devstack-admin"},{"line_number":122,"context_line":"      plugins_paths:"}],"source_content_type":"text/x-yaml","patch_set":38,"id":"bfb3d3c7_ea775cd3","line":119,"range":{"start_line":110,"start_character":0,"end_line":119,"end_character":137},"in_reply_to":"bfb3d3c7_4a9b0865","updated":"2019-05-28 13:20:29.000000000","message":"The key should be the initial statement:\n\n(?x)    # Ignore comments and whitespaces\n\nIt may not work as expected (I remember Chandan hitting some issues in a cinder_tempest_plugin test) but if it works, it\u0027s thanks to that statement.","commit_id":"1d51de57d3c45a0b618e4d0199c81de5583a9c74"},{"author":{"_account_id":22873,"name":"Martin Kopec","email":"mkopec@redhat.com","username":"mkopec"},"change_message_id":"78765a8f1019f0b2a8b74b757f410745cc25fa89","unresolved":false,"context_lines":[{"line_number":107,"context_line":"      Tempest job for python-tempestconf on a devstack environment as the admin user."},{"line_number":108,"context_line":"    run: playbooks/python-tempestconf-tempest-devstack.yaml"},{"line_number":109,"context_line":"    vars:"},{"line_number":110,"context_line":"      test_regex:"},{"line_number":111,"context_line":"        - \u0027heat_tempest_plugin\u0027"},{"line_number":112,"context_line":"      black_regex:"},{"line_number":113,"context_line":"        - \u0027heat_tempest_plugin.tests.scenario.test_volumes.VolumeBackupRestoreIntegrationTest.test_cinder_volume_create_backup_restore\u0027"},{"line_number":114,"context_line":"        - \u0027heat_tempest_plugin.tests.scenario.test_server_software_config.SoftwareConfigIntegrationTest.test_server_software_config\u0027"},{"line_number":115,"context_line":"        - \u0027heat_tempest_plugin.tests.scenario.test_server_signal.ServerSignalIntegrationTest.test_server_signal_userdata_format_software_config\u0027"},{"line_number":116,"context_line":"        - \u0027heat_tempest_plugin.tests.scenario.test_aodh_alarm.AodhAlarmTest.test_alarm\u0027"},{"line_number":117,"context_line":"        - \u0027heat_tempest_plugin.tests.scenario.test_server_cfn_init.CfnInitIntegrationTest.test_server_cfn_init\u0027"},{"line_number":118,"context_line":"        - \u0027heat_tempest_plugin.tests.scenario.test_base_resources.BasicResourcesTest.test_base_resources_integration\u0027"},{"line_number":119,"context_line":"        - \u0027heat_tempest_plugin.tests.functional.test_os_wait_condition.OSWaitCondition.test_create_stack_with_multi_signal_waitcondition\u0027"},{"line_number":120,"context_line":"      user: admin"},{"line_number":121,"context_line":"      cloud_user: devstack-admin"},{"line_number":122,"context_line":"      plugins_paths:"}],"source_content_type":"text/x-yaml","patch_set":38,"id":"bfb3d3c7_51de5f11","line":119,"range":{"start_line":110,"start_character":0,"end_line":119,"end_character":137},"in_reply_to":"bfb3d3c7_518bbf1d","updated":"2019-05-28 10:11:04.000000000","message":"Do you mean tempest_test_regex/tempest_black_regex? \ntempest_test_regex and tempest_black_regex are supposed to contain a string and defining multiple regexes as in this example as a single string is in my opinion very messy/hard readable and I don\u0027t like long lines. Therefore I used a new variable where we can nicely define our regexes as a list and then in the playbook these lists are converted to a single string which is passed to tempest\u0027s variables.","commit_id":"1d51de57d3c45a0b618e4d0199c81de5583a9c74"},{"author":{"_account_id":10459,"name":"Luigi Toscano","email":"ltoscano@redhat.com","username":"ltoscano"},"change_message_id":"eb7133e3157ec3526648493e9fb67ea1f5cda144","unresolved":false,"context_lines":[{"line_number":107,"context_line":"      Tempest job for python-tempestconf on a devstack environment as the admin user."},{"line_number":108,"context_line":"    run: playbooks/python-tempestconf-tempest-devstack.yaml"},{"line_number":109,"context_line":"    vars:"},{"line_number":110,"context_line":"      test_regex:"},{"line_number":111,"context_line":"        - \u0027heat_tempest_plugin\u0027"},{"line_number":112,"context_line":"      black_regex:"},{"line_number":113,"context_line":"        - \u0027heat_tempest_plugin.tests.scenario.test_volumes.VolumeBackupRestoreIntegrationTest.test_cinder_volume_create_backup_restore\u0027"},{"line_number":114,"context_line":"        - \u0027heat_tempest_plugin.tests.scenario.test_server_software_config.SoftwareConfigIntegrationTest.test_server_software_config\u0027"},{"line_number":115,"context_line":"        - \u0027heat_tempest_plugin.tests.scenario.test_server_signal.ServerSignalIntegrationTest.test_server_signal_userdata_format_software_config\u0027"},{"line_number":116,"context_line":"        - \u0027heat_tempest_plugin.tests.scenario.test_aodh_alarm.AodhAlarmTest.test_alarm\u0027"},{"line_number":117,"context_line":"        - \u0027heat_tempest_plugin.tests.scenario.test_server_cfn_init.CfnInitIntegrationTest.test_server_cfn_init\u0027"},{"line_number":118,"context_line":"        - \u0027heat_tempest_plugin.tests.scenario.test_base_resources.BasicResourcesTest.test_base_resources_integration\u0027"},{"line_number":119,"context_line":"        - \u0027heat_tempest_plugin.tests.functional.test_os_wait_condition.OSWaitCondition.test_create_stack_with_multi_signal_waitcondition\u0027"},{"line_number":120,"context_line":"      user: admin"},{"line_number":121,"context_line":"      cloud_user: devstack-admin"},{"line_number":122,"context_line":"      plugins_paths:"}],"source_content_type":"text/x-yaml","patch_set":38,"id":"bfb3d3c7_ef568e5c","line":119,"range":{"start_line":110,"start_character":0,"end_line":119,"end_character":137},"in_reply_to":"bfb3d3c7_51de5f11","updated":"2019-05-28 12:17:36.000000000","message":"The example of tempest_test_regex shows that you can use multiple lines - is that still working?","commit_id":"1d51de57d3c45a0b618e4d0199c81de5583a9c74"},{"author":{"_account_id":22873,"name":"Martin Kopec","email":"mkopec@redhat.com","username":"mkopec"},"change_message_id":"7f91d3f775e0e8106538150b1c9e07e40ab56a84","unresolved":false,"context_lines":[{"line_number":107,"context_line":"      Tempest job for python-tempestconf on a devstack environment as the admin user."},{"line_number":108,"context_line":"    run: playbooks/python-tempestconf-tempest-devstack.yaml"},{"line_number":109,"context_line":"    vars:"},{"line_number":110,"context_line":"      test_regex:"},{"line_number":111,"context_line":"        - \u0027heat_tempest_plugin\u0027"},{"line_number":112,"context_line":"      black_regex:"},{"line_number":113,"context_line":"        - \u0027heat_tempest_plugin.tests.scenario.test_volumes.VolumeBackupRestoreIntegrationTest.test_cinder_volume_create_backup_restore\u0027"},{"line_number":114,"context_line":"        - \u0027heat_tempest_plugin.tests.scenario.test_server_software_config.SoftwareConfigIntegrationTest.test_server_software_config\u0027"},{"line_number":115,"context_line":"        - \u0027heat_tempest_plugin.tests.scenario.test_server_signal.ServerSignalIntegrationTest.test_server_signal_userdata_format_software_config\u0027"},{"line_number":116,"context_line":"        - \u0027heat_tempest_plugin.tests.scenario.test_aodh_alarm.AodhAlarmTest.test_alarm\u0027"},{"line_number":117,"context_line":"        - \u0027heat_tempest_plugin.tests.scenario.test_server_cfn_init.CfnInitIntegrationTest.test_server_cfn_init\u0027"},{"line_number":118,"context_line":"        - \u0027heat_tempest_plugin.tests.scenario.test_base_resources.BasicResourcesTest.test_base_resources_integration\u0027"},{"line_number":119,"context_line":"        - \u0027heat_tempest_plugin.tests.functional.test_os_wait_condition.OSWaitCondition.test_create_stack_with_multi_signal_waitcondition\u0027"},{"line_number":120,"context_line":"      user: admin"},{"line_number":121,"context_line":"      cloud_user: devstack-admin"},{"line_number":122,"context_line":"      plugins_paths:"}],"source_content_type":"text/x-yaml","patch_set":38,"id":"bfb3d3c7_4a9b0865","line":119,"range":{"start_line":110,"start_character":0,"end_line":119,"end_character":137},"in_reply_to":"bfb3d3c7_ef568e5c","updated":"2019-05-28 12:59:37.000000000","message":"I don\u0027t see how that could work. The Readme shows how to define multiline string. Ansible then concatenates the lines by \u0027\\n\u0027 - I don\u0027t think it\u0027s wanted to have new line character in regex.\nI did a small experiment:\nhttp://paste.openstack.org/show/752151/","commit_id":"1d51de57d3c45a0b618e4d0199c81de5583a9c74"}],"roles/run-plugins/tasks/main.yaml":[{"author":{"_account_id":10459,"name":"Luigi Toscano","email":"ltoscano@redhat.com","username":"ltoscano"},"change_message_id":"5387e7b4d7a2f1493e13fbe99437762aeac4dde7","unresolved":false,"context_lines":[{"line_number":25,"context_line":"  with_items: \"{{ plugins_paths }}\""},{"line_number":26,"context_line":"  when: plugins_paths is defined"},{"line_number":27,"context_line":""},{"line_number":28,"context_line":"- name: Run Tempest"},{"line_number":29,"context_line":"  shell: |"},{"line_number":30,"context_line":"    set -ex"},{"line_number":31,"context_line":"    source {{ virtualenvs.tempest }}/bin/activate"}],"source_content_type":"text/x-yaml","patch_set":29,"id":"ffb9cba7_56fe8aae","line":28,"updated":"2019-04-26 12:33:42.000000000","message":"Wouldn\u0027t it be possible to use the run-tempest role also here? The only complicated part is the handling of the virtualenv, but maybe one of the envs defined inside tox.ini can be pre-initialized and then used here.","commit_id":"8ccb32d4d4279971638a60fb7ca058a536b9d0b0"},{"author":{"_account_id":10459,"name":"Luigi Toscano","email":"ltoscano@redhat.com","username":"ltoscano"},"change_message_id":"0c14683cb1d8d062b18e96a3e13728c6dc527bf9","unresolved":false,"context_lines":[{"line_number":25,"context_line":"  with_items: \"{{ plugins_paths }}\""},{"line_number":26,"context_line":"  when: plugins_paths is defined"},{"line_number":27,"context_line":""},{"line_number":28,"context_line":"- name: Run Tempest"},{"line_number":29,"context_line":"  shell: |"},{"line_number":30,"context_line":"    set -ex"},{"line_number":31,"context_line":"    source {{ virtualenvs.tempest }}/bin/activate"}],"source_content_type":"text/x-yaml","patch_set":29,"id":"ffb9cba7_d1a844dc","line":28,"in_reply_to":"ffb9cba7_36ac3633","updated":"2019-04-26 13:24:53.000000000","message":"No, I suggested something different. I suggested to write a custom role to do what write-devstack-local-conf usually does, but then use run-tempest.\nhttp://eavesdrop.openstack.org/irclogs/%23refstack/%23refstack.2019-04-04.log.html#t2019-04-04T08:12:37\n\nThis is not about adding workarounds, but properly calling a function.\nNow you have a code which installs the plugins in a separate virtualenv, which is exactly what tempest does.","commit_id":"8ccb32d4d4279971638a60fb7ca058a536b9d0b0"},{"author":{"_account_id":22873,"name":"Martin Kopec","email":"mkopec@redhat.com","username":"mkopec"},"change_message_id":"e8eaa9722f0cabdb86bbc6380f71739fff6ebfa1","unresolved":false,"context_lines":[{"line_number":25,"context_line":"  with_items: \"{{ plugins_paths }}\""},{"line_number":26,"context_line":"  when: plugins_paths is defined"},{"line_number":27,"context_line":""},{"line_number":28,"context_line":"- name: Run Tempest"},{"line_number":29,"context_line":"  shell: |"},{"line_number":30,"context_line":"    set -ex"},{"line_number":31,"context_line":"    source {{ virtualenvs.tempest }}/bin/activate"}],"source_content_type":"text/x-yaml","patch_set":29,"id":"ffb9cba7_36ac3633","line":28,"in_reply_to":"ffb9cba7_56fe8aae","updated":"2019-04-26 13:07:43.000000000","message":"I\u0027ve tried, check first patch sets, but I couldn\u0027t do it, then I tried to make tox to use globally installed packages - that\u0027s why I started experimenting with a custom playbook which would install plugins prior run-tempest and then we had a discussion on IRC. As a result, we agreed that a custom role is the best solution and here we are. This solution is easy to read, maintain, scale, there are no workarounds and it works, that\u0027s why I quiet don\u0027t like the idea of going back.\n\nIf run-tempest was much larger role, I wouldn\u0027t override/reimplement it, but it has just a few tasks. I think in this case, it\u0027s easier to have those few tasks then several workarounds for reusing run-tempest role.","commit_id":"8ccb32d4d4279971638a60fb7ca058a536b9d0b0"}]}
