[openstack-dev] [Sahara][QA] Notes about the move of the Sahara Tempest API test to sahara-tests

Luigi Toscano ltoscano at redhat.com
Mon Mar 21 01:07:06 UTC 2016


Hi,

as discussed in the last (two) Sahara meetings, I'm working on moving the Tempest API tests from the Tempest repository to the new sahara-tests repository, which contains only (non-tempest) scenario tests and it's branchless as well.
The move is a natural consequence of the Tempest focus on the "core six" (removing the burden of additional reviews from core Tempest), and of the existence of the Tempest Plugin interface.

So far, nothing new. The difference from that past is that I'd like to keep the history of the imported code.

I've the feeling that there is a bit of resistance to the idea of importing the history, but talking around it seems that it is feasible. It requires few additional steps, which I'm going to describe here for the posterity and to gather feedback, and which I'm going to execute in the next days if there are no blocking concerns.


== Extract tempest/api/data_processing from Tempest and filter it
Easy with git-split (https://github.com/ajdruff/git-splits, thanks Evgeny Sikachev) and a bit of cleanup (removal of the first empty commit with `git rebase -i --root`). This code should then be merged in a detached branch of sahara-tests (created with `git checkout --orphan <branch>`).
-> See a preview here: https://github.com/ltoscano-rh/sahara-tests/commits/tempest-sahara-api


== Push the sanitized history to a detached branch of sahara-tests
It's really two substeps:

= Temporarily exclude a specific branch from the CI 
Change to openstack-infra/project-config and openstack/sahara-ci-config
-> Requires reviews from infra and Sahara cores

= Merge the content of the imported, detached branch to sahara-tests
Ninja-approval of all the commits of the imported branch (38 commits). Without tests and use of tools like gertty it can be fast.
-> It will require the help of a (patient) Sahara core, but I think I could volunteer some of them :)


== Merge the imported branch into sahara-tests master
Again, two substeps:

= Change the ACLs for sahara-tests to allow a merge commit
-> Requires review from infra (project-config, gerrit/acls)

= Push the merge commit of the imported branch to sahara-tests master to gerrit
Preview available here: https://github.com/ltoscano-rh/sahara-tests/commits/master
-> Requires normal review from Sahara cores.


== Adapt the imported code to use the Tempest Plugin interface
Preview available here: https://github.com/ltoscano-rh/sahara-tests/commits/tempestapi-intree
-> Requires normal review from Sahara cores.


== Undo all the temporarily hacks introduced before
-> Requires normal review from Sahara cores.


I hope that it could be useful.

-- 
Luigi



More information about the OpenStack-dev mailing list