tree e7c91b61f060816e15d38a683715f59d8736b9f7
parent 03c9c94c89318f309863b6fb66d13a88b9a2f536
author Ghanshyam <gmann@ghanshyammann.com> 1562318617 +0000
committer Ghanshyam Mann <gmann@ghanshyammann.com> 1563251836 +0000

Define the Integrated-gate-placement gate template

tempest-full job run all services API and scenario tests (non slow)
and this job is part of Integrated-gate gate template which run on
multiple services (nova, neutron, cinder, glance, placement) check
and gate pipeline.

But there are many unrelated tests run on each project gate. For example,
neutron gate run cinder only tests and fail due to cinder bugs. There is
no point of breaking the neutron gate due to cinder only test failure and
slow down the neutron development phase.

This is what we dicussed in Train PTG in denver to improve the integrated
gate[1] and came up with idea of split the integated-gate template into
much logical way so that only dependent services tests run on their gate.

One way was to move the service only tests to service tempest plugin side
but Tempest is used by interop as well as on production cloud testing so
moving the test is not good idea.

This commit propose the idea of defining the 'Integrated-gate-placement'
gate template for placement gate which will run only nova and neutron tests.

ML discussion: http://lists.openstack.org/pipermail/openstack-discuss/2019-May/005871.html

Next step will be to replace the Integrated-gate-py3 template with new
Integrated-gate-placement template on placement gate.

[1] https://etherpad.openstack.org/p/qa-train-ptg

Change-Id: I200197e2fb57879aaeb382266d6309f0d1137b0c
