<div dir="ltr">Dear all,<div><br></div><div>updates:</div><div><br></div><div>- host/group vars: zuul now supports declaring host and group vars in the job definition [0][1] - thanks corvus and infra team! </div><div>  This is a great help towards writing the devstack and tempest base multinode jobs [2][3]</div><div>  * NOTE: zuul merges dict variables through job inheritance. Variables in host/group_vars override global ones. I will write some examples further clarify this.</div><div><br></div><div>- stable/pike: devstack ansible changes have been backported to stable/pike, so we can now run zuulv3 jobs against stable/pike too - thank you tosky!</div><div>  next change in progress related to pike is to provide tempest-full-pike for branchless repositories [4]</div><div><br></div><div>- documentation: devstack now publishes documentation on its ansible roles [5].</div><div>  More devstack documentation patches are in progress to provide jobs reference, examples and a job migration how-to [6].</div><div>   </div><div><div><br></div><div>Andrea Frittoli (andreaf)<br></div></div><div><br></div><div>[0] <a href="https://docs.openstack.org/infra/zuul/user/config.html#attr-job.host_vars">https://docs.openstack.org/infra/zuul/user/config.html#attr-job.host_vars</a> <br>[1] <a href="https://docs.openstack.org/infra/zuul/user/config.html#attr-job.group_vars">https://docs.openstack.org/infra/zuul/user/config.html#attr-job.group_vars</a> </div><div>[2] <a href="https://review.openstack.org/#/c/545696/">https://review.openstack.org/#/c/545696/</a> </div><div>[3] <a href="https://review.openstack.org/#/c/545724/">https://review.openstack.org/#/c/545724/</a> <br>[4] <a href="https://review.openstack.org/#/c/546196/">https://review.openstack.org/#/c/546196/</a> </div><div>[5] <a href="https://docs.openstack.org/devstack/latest/roles.html">https://docs.openstack.org/devstack/latest/roles.html</a> </div><div>[6] <a href="https://review.openstack.org/#/c/545992/">https://review.openstack.org/#/c/545992/</a> <br><br><div class="gmail_quote"><div dir="ltr">On Mon, Feb 19, 2018 at 2:46 PM Andrea Frittoli <<a href="mailto:andrea.frittoli@gmail.com">andrea.frittoli@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div>Dear all, </div><div><br></div><div>updates:</div><div>- tempest-full-queens and tempest-full-py3-queens are now available for testing of branchless repositories [0]. They are used for tempest and devstack-gate. If you own a tempest plugin in a branchless repo, you may consider adding similar jobs to your plugin if you use it for tests on stable/queen as well.</div><div>- if you have migrated jobs based on devstack-tempest please let me know, I'm building reference docs and I'd like to include as many examples as possible</div><div>- work on multi-node is in progress, but not ready still - you can follow the patches in the multinode branch [1]</div><div>- updates on some of the points from my previous email are inline below</div><div><br></div><div>Andrea Frittoli (andreaf)</div><div><br></div><div>[0] <a href="http://git.openstack.org/cgit/openstack/tempest/tree/.zuul.yaml#n73" target="_blank">http://git.openstack.org/cgit/openstack/tempest/tree/.zuul.yaml#n73</a> </div><div>[1] <a href="https://review.openstack.org/#/q/status:open++branch:master+topic:multinode" target="_blank">https://review.openstack.org/#/q/status:open++branch:master+topic:multinode</a> </div></div><div dir="ltr"><div><br></div><div><br></div>On Thu, Feb 15, 2018 at 11:31 PM Andrea Frittoli <<a href="mailto:andrea.frittoli@gmail.com" target="_blank">andrea.frittoli@gmail.com</a>> wrote:<br></div><div dir="ltr"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">Dear all,<div><br></div><div>this is the first or a series of ~regular updates on the migration of Tempest / Grenade jobs to  Zuul v3 native.</div><div><br></div><div>The QA team together with the infra team are working on providing the OpenStack community with a set of base Tempest / Grenade jobs that can be used as a basis to write new CI jobs / migrate existing legacy ones with a minimal effort and very little or no Ansible knowledge as a precondition.</div><div><br></div><div>The effort is tracked in an etherpad [0]; I'm trying to keep the etherpad up to date but it may not always be a source of truth.</div><div><br></div><div>Useful jobs available so far:</div><div>- devstack-tempest [0] is a simple tempest/devstack job that runs keystone glance nova cinder neutron swift and tempest *smoke* filter</div><div>- tempest-full [1] is similar but runs a full test run - it replaces the legacy tempest-dsvm-neutron-full from the integrated gate</div><div>- tempest-full-py3 [2] runs a full test run on python3 - it replaces the legacy tempest-dsvm-py35</div></div></blockquote><div><br></div></div></div><div dir="ltr"><div class="gmail_quote"><div>Some more details on this topic: what I did not mention in my previous email is that the autogenerated Tempest / Grenade CI jobs (legacy-* playbooks) are not meant to be used as a basis for Zuul V3 native jobs. To create Zuul V3 Tempest / Grenade native jobs for your projects you need to through away the legacy playbooks and defined new jobs in .zuul.yaml, as documented in the zuul v3 docs [2].</div><div>The parent job for a single node Tempest job will usually be devstack-tempest. Example migrated jobs are avilable, for instance: [3] [4].</div><div><br></div><div>[2] <a href="https://docs.openstack.org/infra/manual/zuulv3.html#howto-update-legacy-jobs" target="_blank">https://docs.openstack.org/infra/manual/zuulv3.html#howto-update-legacy-jobs</a> </div><div>[3] <a href="http://git.openstack.org/cgit/openstack/sahara-tests/tree/.zuul.yaml#n21" target="_blank">http://git.openstack.org/cgit/openstack/sahara-tests/tree/.zuul.yaml#n21</a> </div><div>[4] <a href="https://review.openstack.org/#/c/543048/5" target="_blank">https://review.openstack.org/#/c/543048/5</a> </div></div></div><div dir="ltr"><div class="gmail_quote"><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div><br></div><div>Both tempest-full and tempest-full-py3 are part of integrated-gate templates, starting from stable/queens on.</div><div>The other stable branches still run the legacy jobs, since devstack ansible changes have not been backported (yet). If we do backport it will be up to pike maximum.</div><div><br></div><div>Those jobs work in single node mode only at the moment. Enabling multinode via job configuration only require a new Zuul feature [4][5] that should be available soon; the new feature allows defining host/group variables in the job definition, which means setting variables which are specific to one host or a group of hosts.</div><div>Multinode DVR and Ironic jobs will require migration of the ovs-* roles form devstack-gate to devstack as well.</div><div><br></div><div>Grenade jobs (single and multinode) are still legacy, even if the *legacy* word has been removed from the name.</div><div>They are currently temporarily hosted in the neutron repository. They are going to be implemented as Zuul v3 native in the grenade repository.</div><div><br></div><div>Roles are documented, and a couple of migration tips for DEVSTACK_GATE flags is available in the etherpad [0]; more comprehensive examples / docs will be available as soon as possible.</div><div><br></div><div>Please let me know if you find this update useful and / or if you would like to see different information in it.</div><div>I will send further updates as soon as significant changes / new features become available.</div><div><br></div><div>Andrea Frittoli (andreaf)</div><div><br></div><div>[0] <a href="https://etherpad.openstack.org/p/zuulv3-native-devstack-tempest-jobs" target="_blank">https://etherpad.openstack.org/p/zuulv3-native-devstack-tempest-jobs</a>  </div><div>[1] <a href="http://git.openstack.org/cgit/openstack/tempest/tree/.zuul.yaml#n1" target="_blank">http://git.openstack.org/cgit/openstack/tempest/tree/.zuul.yaml#n1</a></div><div>[2] <a href="http://git.openstack.org/cgit/openstack/tempest/tree/.zuul.yaml#n29" target="_blank">http://git.openstack.org/cgit/openstack/tempest/tree/.zuul.yaml#n29</a> </div><div>[3] <a href="http://git.openstack.org/cgit/openstack/tempest/tree/.zuul.yaml#n47" target="_blank">http://git.openstack.org/cgit/openstack/tempest/tree/.zuul.yaml#n47</a> </div><div>[4] <a href="https://etherpad.openstack.org/p/zuulv3-group-variables" target="_blank">https://etherpad.openstack.org/p/zuulv3-group-variables</a>  </div><div>[5] <a href="https://review.openstack.org/#/c/544562/" target="_blank">https://review.openstack.org/#/c/544562/</a> </div></div></blockquote></div></div></blockquote></div></div></div>