Skip to content

liangxiao1/dva

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

dva

dva's validation. again.

  • dva is a tool to sanity-check image instances in cloud
  • this is achieved by executing same test cases over various images and instance types
  • expected test results usually depend on OS (minor) version
  • primary focus is RHEL release validation in EC2
  • OpenStack and Fedora is supported, too
  • 3rd-party test modules are supported

Tested On

  • Fedora 19-28
  • Ubuntu 15.04

Installation

  • Requires Python 2
  • sudo python setup.py install
  • or sudo pip install dva

(Optional) Ubuntu Packages Required For Installation

  • apt-get install python-setuptools build-essential python-dev libffi-dev python-openssl libssl-dev
  • easy_install PyOpenSSL

Usage

  • dry-run: dva validate -n < data.yaml > result.yaml
  • dva validate < data.yaml > result.yaml
  • dva bugzilla < result.yaml > buglist.yaml
  • # dva result < result.yaml > result.txt
  • for complete options list: dva --help
  • for failure summary use: dva summary -i result.yaml
  • simulate valid execution: dva validate -i data.yaml --parallel-tests=1 --sorted-mode
  • load custom tests: dva validate < data.yaml > result.yaml --test-modules=my.tests

Notes

  • please bare in mind the limit of opened file-descriptors is usualy 1024
  • --parallel-tests and --parallel-instances multiply the usage of file-descriptors needed
  • sshd puts a limit on the number of sessions users may open in parallel
  • usually --parallel-tests=10 is the maximum possible
  • dva runs in a single process in gevent pools
  • consider running multiple dva instances for large inputs
  • not-setting --sorted-mode has the benefit of breaking waves in test execution
  • for the same reason, image instantiation is randomized through cloud regions

See also

About

dva's validation. again.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 98.0%
  • Shell 1.2%
  • C 0.8%