Your SlideShare is downloading. ×
0
Introduction to TempestOpenStack Users January 2013 Meetup – India    Presenters: Nithya, Sarad & Suresh
Agenda•   Introduction To Tempest•   Explore Tempest•   Getting Started with Tempest in Openstack•   Role of Tempest in Op...
What is tempest?• Tempest – It’s an Openstack Integration test  suite• Based on unittest2 framework & currently  uses Nose...
Tempest explored                               • Test Types            Nova                                 –   Smoke Test...
Tempest Directory Structure               •   Common - Rest client & ssh client               •   Services - services modu...
Sample Test workflow                   Test case call                  base class setup                                   ...
Supported Clients•REST – Httplib•BOTO – ec2•Novaclient•glance client•swift client•keystone client•SSH – Paramiko•Cloudfile...
How to Contribute• Prerequisites   – Signup CLA   – Launchpad account        • Upload your SSH keys to Launchpad        • ...
Continuous IntegrationMonitor version control system for changes. Whenever a change isdetected, automatically compile and ...
Openstack CI & TempestChange proposed to OS component                                     • https://review.openstack.org/#...
Tempest Pros and Cons             Pro’s                               Con’s• Modular                         •   Currently...
Q&A
References• Tempest Presentation by Jay Pipes -  https://docs.google.com/presentation/d/1M3XhAco_0u7NZQn3Gz53z9VO  HHrkQBz...
Upcoming SlideShare
Loading in...5
×

Introduction to tempest

9,792

Published on

Published in: Technology
0 Comments
6 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
9,792
On Slideshare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
196
Comments
0
Likes
6
Embeds 0
No embeds

No notes for slide

Transcript of "Introduction to tempest "

  1. 1. Introduction to TempestOpenStack Users January 2013 Meetup – India Presenters: Nithya, Sarad & Suresh
  2. 2. Agenda• Introduction To Tempest• Explore Tempest• Getting Started with Tempest in Openstack• Role of Tempest in Openstack CI• Pro’s & Con’s• Q&A
  3. 3. What is tempest?• Tempest – It’s an Openstack Integration test suite• Based on unittest2 framework & currently uses Nosetest runner• Used by community as gating on commits to trunk• In a nutshell, all it does is run tests against OpenStack service endpoints by exercising API calls & validate the response
  4. 4. Tempest explored • Test Types Nova – Smoke Tests – Positive Tests Cinder Glance – Negative Tests – Stress Tests Tempest – White box Tests • Tempest base Quantum Swift – httplib2 – Rest based framework keystone – Nose test runner (testr)
  5. 5. Tempest Directory Structure • Common - Rest client & ssh client • Services - services modules (nova, identity, image and network) • Nova implements the OS Nova API • Identity implements the OS Keystone API • Image implements the OS Glance API • Network implements the OS Quantum API • Tests - Contains actual tests. – Rely on the above services (via the Manager) to connect to the system. – Test classes and methods have also access to the tempest configuration. – Test classes must subclass unittest, and they may use nose and unittest specific decorators • etc – tempest.conf
  6. 6. Sample Test workflow Test case call base class setup Openstack_ Config.py manager.py Create server call Servers_client (json/xml) REST request Rest_client
  7. 7. Supported Clients•REST – Httplib•BOTO – ec2•Novaclient•glance client•swift client•keystone client•SSH – Paramiko•Cloudfile•Quantum client
  8. 8. How to Contribute• Prerequisites – Signup CLA – Launchpad account • Upload your SSH keys to Launchpad • Gerrit imports your SSH keys from Launchpad • Subscribe to main openstack mailing list – devstack installed locally • Follow the steps given in http://devstack.org/guides/single- machine.html• Code submission – Clone tempest code – Create a new tempest branch for the bug id – Make required changes – Commit the changes – Submit for review – For resubmitting the changes use commit amend
  9. 9. Continuous IntegrationMonitor version control system for changes. Whenever a change isdetected, automatically compile and test the application. Notifydevelopers when things go wrong to get a fix immediately. Watch • CI Tool - Jenkins code • Openstack CI - https://jenkins.openstack.org/ Publish Build • Gate tests – Tempest results Product Run Tests
  10. 10. Openstack CI & TempestChange proposed to OS component • https://review.openstack.org/#/cCode approved by core reviewers /17770/ • Tempest gated withJenkins prepares a Virtual Machine – Gate-tempest-merge – Gate-tempest-pep8 Checks out latest code and setup – Gate-tempest-devstack-vm devstack • https://jenkins.openstack.org/vi Run tempest tests ew/Gate/job/gate-tempest- devstack-vm/ Report success / failure at review.openstack.org
  11. 11. Tempest Pros and Cons Pro’s Con’s• Modular • Currently tests are not• One unified suite to test all running in parallel openstack components. • Only smoke tests are being• Easily Maintainable run as part of gating• Less complex to create tests process.• Supports most of the client • Stress tests development at interfaces nascent state • Tests for service workflows at the minimal
  12. 12. Q&A
  13. 13. References• Tempest Presentation by Jay Pipes - https://docs.google.com/presentation/d/1M3XhAco_0u7NZQn3Gz53z9VO HHrkQBzEs5gt43ZvhOc/edit?pli=1#slide=id.p• Openstack CI – http://ci.openstack.org/• Devstack-gate - https://github.com/openstack-infra/devstack- gate/blob/master/README.md• Tempest source - https://github.com/openstack/tempest
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×