Skip to content

Instantly share code, notes, and snippets.

This file has been truncated, but you can view the full file.
swif 1488556709 0.0060 17855 FILE_OPEN_CLOSE OPEN 2 -1 0 /usr/lib/python2.7/calendarmodule.so rb
swif 1488556709 0.0030 17855 FILE_OPEN_CLOSE OPEN 0 11 0 /usr/lib/python2.7/calendar.py rb
swif 1488556709 0.0040 17855 FILE_OPEN_CLOSE OPEN 0 12 0 /usr/lib/python2.7/calendar.pyc rb
swif 1488556709 0.0190 17855 FILE_READ READ 0 12 27619
FACILITY TS. ELAPSED PID DOMAIN OPERATION ERR FD XFER PARM
swif 1488556709 0.0080 17855 FILE_OPEN_CLOSE CLOSE 0 12 0
swif 1488556709 0.0040 17855 FILE_OPEN_CLOSE OPEN 2 -1 0 /usr/local/bin/locale.x86_64-linux-gnu.so rb
swif 1488556709 0.0020 17855 FILE_OPEN_CLOSE OPEN 2 -1 0 /usr/local/bin/locale.so rb
POC for KPI - Service Availability
Setup multi node Swift environment
----------------------------------
Architectural layout:
a. one load balancer
b. two proxy servers
c. four storage nodes
d. mount loopback devices if working on VMs
Installation Steps
------------------
Install Tempest
$ git clone https://github.com/openstack/tempest/
$ pip install -e tempest/
Install in-repo Swift plugin
#created a conatiner
swift@saio2-nt:~$ swift post test_container
#created my testObject at /home/swift/testObject
swift@saio2-nt:cat testObject
#changing directory different from the object to uplaod
swift@saio2-nt:~$ cd swift/
#uploading test_object to test_container using a path
swift-ring-builder 1.builder create 10 3 1
swift-ring-builder 1.builder add --region 1 --zone 1 --ip 2001:db8:85a3:8d3:1319:8a2e:370:7348 --port 6001 --device sdb1 --weight 1.0
swift-ring-builder 1.builder add --region 1 --zone 1 --ip 2001:db8:85a3:8d3:1319:8a2e:370:7348 --port 6001 --device sdb2 --weight 1.0
swift-ring-builder 1.builder add --region 1 --zone 1 --ip 2001:db8:85a3:8d3:1319:8a2e:370:7348 --port 6001 --device sdb3 --weight 1.0
swift-ring-builder 1.builder rebalance
swift-ring-builder 11.builder create 10 3 1
swift-ring-builder 11.builder add r1z1-2001:db8:85a3:8d3:1319:8a2e:370:7348:6010/sdb1 1
swift-ring-builder 11.builder add r1z2-2001:db8:85a3:8d3:1319:8a2e:370:7348:6020/sdb2 1
1 Tempest Plugin for Functional Tests
2
3 This is an in-repo tempest plugin i.e. the plugin resides inside the swift repo
4 and requires to install swift inorder to install the plugin.
5
6 Directory Structre:~
7 The tempest plugin that resides at swift/test/tempest/ uses a symbolic link
8 to functional tests that reside at swift/test/functional. By this, we eliminate
9 the possibility of probe and unit tests also get discovered when the top level
10 diretory of the tests i.e. swift/test is passed to test_discovery module.~
1 Tempest Plugin for Swift Functional Tests
2
3 This is an in-repo tempest plugin i.e. the plugin resides inside the swift repo
4 and requires to install swift inorder to install the plugin.
5
6 Directory Structre:~
7 The tempest plugin that resides at swift/test/tempest/ uses a symbolic link
8 to functional tests that reside at swift/test/functional. By this, we eliminate
9 the possibility of ostestr to pickup probe and unit tests when the top level
10 diretory of the tests i.e. swift/test is passed to test_discovery module.~
class SwiftFunctionalTestsPlugin(plugins.TempestPlugin):
def load_tests(self):
relative_test_dir = 'test/tempest'
test_dir = os.path.dirname(os.path.abspath(__file__))
top_level_dir = test_dir[:test_dir.find(relative_test_dir)-1]
relative_func_tests_dir = 'test/functional'
abs_func_tests_dir = os.path.join(
top_level_dir, relative_func_tests_dir)
abs_tempest_func_tests_dir = os.path.join(test_dir, "functional")
if(os.path.islink(abs_tempest_func_tests_dir)):