<div dir="ltr"><div style="margin:0px;padding:0px"><ol start="1" style="margin:0px;padding:0px;text-indent:10px"><li style="margin:0px;padding:0px;display:inline"><ol start="1" style="margin:0px;padding:0px"><font color="#000000" face="Arial, sans-serif"><div><span style="font-size:12px;line-height:16px">A few months back we started the process to remove the tempest CLI tests from tempest [0]. Now that we have successfully pulled novaclient CLI tests out of tempest, we have the process sorted out. We now have a process that should be easy to follow for each project, in fact keystoneclient has already begun as well [1].  As stated in [0], the goal is to completely remove CLI tests from tempest by the end of the cycle.</span><br></div></font></ol><ol start="1" style="margin:0px;padding:0px"><font color="#000000" face="Arial, sans-serif"><span style="font-size:12px;line-height:16px"><br></span></font></ol><ol start="1" style="margin:0px;padding:0px"><font color="#000000" face="Arial, sans-serif"><span style="font-size:12px;line-height:16px"><br></span></font></ol><ol start="1" style="margin:0px;padding:0px"><font color="#000000" face="Arial, sans-serif"><span style="font-size:12px;line-height:16px">[0] <a href="http://lists.openstack.org/pipermail/openstack-dev/2014-October/048089.html" target="_blank">http://lists.openstack.org/pipermail/openstack-dev/2014-October/048089.html</a></span></font></ol><ol start="1" style="margin:0px;padding:0px"><font color="#000000" face="Arial, sans-serif"><span style="font-size:12px;line-height:16px">[1] <a href="https://review.openstack.org/#/c/155543/" target="_blank">https://review.openstack.org/#/c/155543/</a></span></font></ol><div><font color="#000000" face="Arial, sans-serif"><span style="font-size:12px;line-height:16px"><br></span></font></div><ol start="1" style="margin:0px;padding:0px"><font color="#000000" face="Arial, sans-serif"><span style="font-size:12px;line-height:16px"><br></span></font></ol><ol start="1" style="margin:0px;padding:0px"><font color="#000000" face="Arial, sans-serif"><span style="font-size:12px;line-height:16px"><b>Steps</b></span></font></ol></li></ol><font color="#000000" face="Arial, sans-serif"><ul><li><span style="font-size:12px;line-height:16px;text-indent:10px">Move unit tests from */tests/ to */tests/unit</span></li><ul><li><a href="http://git.openstack.org/cgit/openstack/python-novaclient/commit/?id=3561772f8b0cfee746af53fa228375b2ec7dfd9d" style="font-size:12px;line-height:16px;text-indent:10px" target="_blank">http://git.openstack.org/cgit/openstack/python-novaclient/commit/?id=3561772f8b0cfee746af53fa228375b2ec7dfd9d</a></li></ul><li><span style="font-size:12px;line-height:16px;text-indent:10px">Add OS_TEST_PATH to testr.conf</span></li><ul><li><a href="http://git.openstack.org/cgit/openstack/python-novaclient/commit/?id=f197c64e05596fc59c8318813d4f69a88ac832fc" style="font-size:12px;line-height:16px;text-indent:10px" target="_blank">http://git.openstack.org/cgit/openstack/python-novaclient/commit/?id=f197c64e05596fc59c8318813d4f69a88ac832fc</a></li></ul><li><span style="font-size:12px;line-height:16px;text-indent:10px">Copy over initial set of CLI tests from tempest/cli/ and add functional test tox endpoint. Use standard OpenStack environment variables to get keystone auth, so the tests can be run via 'source openrc && tox -efunctional'</span></li><ul><li><a href="http://git.openstack.org/cgit/openstack/python-novaclient/commit/?id=b89da9be28172319a16bece42f068e2d7f359c67" style="font-size:12px;line-height:16px;text-indent:10px" target="_blank">http://git.openstack.org/cgit/openstack/python-novaclient/commit/?id=b89da9be28172319a16bece42f068e2d7f359c67</a></li><li><span style="font-size:12px;line-height:16px;text-indent:10px">At this point you should be able to run the tests against a cloud</span></li></ul><li><span style="font-size:12px;line-height:16px;text-indent:10px">Add client-dsvm-functional job definition using a post_test_hook</span></li><ul><li><a href="http://git.openstack.org/cgit/openstack-infra/project-config/commit/?id=c4093cd6d328a87ea9a2335ac2dd4d09a598bc8e" style="font-size:12px;line-height:16px;text-indent:10px" target="_blank">http://git.openstack.org/cgit/openstack-infra/project-config/commit/?id=c4093cd6d328a87ea9a2335ac2dd4d09a598bc8e</a></li></ul><li><span style="font-size:12px;line-height:16px;text-indent:10px">Add post_test_hook for functional tests in the client repo.</span></li><ul><li><a href="http://git.openstack.org/cgit/openstack/python-novaclient/commit/?id=d11f960c58c523da7154b3311d6b37ec715392af" style="font-size:12px;line-height:16px;text-indent:10px" target="_blank">http://git.openstack.org/cgit/openstack/python-novaclient/commit/?id=d11f960c58c523da7154b3311d6b37ec715392af</a></li><li><span style="font-size:12px;line-height:16px;text-indent:10px">This patch can be tested out using the non-voting experimental job, just leave the comment 'check experimental'</span></li></ul><li><span style="font-size:12px;line-height:16px;text-indent:10px">Make *client-dsvm-functional job gating for client</span></li><ul><li><a href="http://git.openstack.org/cgit/openstack-infra/project-config/commit/?id=147f20f5003cfa4f15a372f7d16493c3bb40775b" target="_blank" style="font-size:12px;line-height:16px;text-indent:10px">http://git.openstack.org/cgit/openstack-infra/project-config/commit/?id=147f20f5003cfa4f15a372f7d16493c3bb40775b</a></li><li><span style="font-size:12px;line-height:16px;text-indent:10px">At this point you should have a working gating functional test with a few tests.</span></li></ul><li><span style="font-size:12px;line-height:16px;text-indent:10px">Copy in the rest of the tempest CLI tests</span></li><ul><li><a href="http://git.openstack.org/cgit/openstack/python-novaclient/commit/?id=27cd393028a103d8d52cf25f035e3a2985572ccb" target="_blank" style="font-size:12px;line-height:16px;text-indent:10px">http://git.openstack.org/cgit/openstack/python-novaclient/commit/?id=27cd393028a103d8d52cf25f035e3a2985572ccb</a></li><li><span style="font-size:12px;line-height:16px;text-indent:10px">Unlike the first set of tests that were copied this is self gating.</span></li></ul><li><span style="font-size:12px;line-height:16px;text-indent:10px">Remove tempest CLI tests for your client</span></li><ul><li><a href="http://git.openstack.org/cgit/openstack/tempest/commit/?id=0bd0adecd13e1285d0e938065280816395dbb415" target="_blank" style="font-size:12px;line-height:16px;text-indent:10px">http://git.openstack.org/cgit/openstack/tempest/commit/?id=0bd0adecd13e1285d0e938065280816395dbb415</a></li></ul></ul></font><ol start="1" style="margin:0px;padding:0px;text-indent:10px"><li style="margin:0px;padding:0px;display:inline"><div style="color:rgb(0,0,0);font-family:Arial,sans-serif;font-size:12px;line-height:16px"><br></div></li><li style="margin:0px;padding:0px;display:inline"><div><font color="#000000" face="Arial, sans-serif"><span style="font-size:12px;line-height:16px"><br></span></font></div></li></ol></div></div>