aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Pipfile12
-rw-r--r--Pipfile.lock215
-rw-r--r--docs/testing/user/userguide/getting-started.rst2
-rw-r--r--docs/testing/user/userguide/index.rst1
-rw-r--r--docs/testing/user/userguide/storage.rst110
-rw-r--r--qtip/ansible_library/modules/mcp.py13
-rw-r--r--resources/ansible_roles/qtip-generator/defaults/main.yml2
-rw-r--r--tests/ci/utils/start_services.sh4
8 files changed, 187 insertions, 172 deletions
diff --git a/Pipfile b/Pipfile
index e0cbbfe9..41772b67 100644
--- a/Pipfile
+++ b/Pipfile
@@ -13,8 +13,7 @@ pytest = "*"
pytest-cov = "*"
pytest-faker = "*"
pytest-mock = "*"
-pip_check_reqs = "*"
-pipreqs = "*"
+"e1839a8" = {path = ".", editable = true}
[packages]
@@ -22,17 +21,16 @@ pipreqs = "*"
ansible = "*"
click = "*"
connexion = "<=1.1.11"
-"Jinja2" = "*"
+"jinja2" = "*"
numpy = "*"
pbr = "*"
-PrettyTable = "*"
-PyYAML = "*"
+prettytable = "*"
+pyyaml = "*"
humanfriendly = "*"
asq = "*"
-Django = "*"
requests = "*"
[requires]
-python_version = "2.7" \ No newline at end of file
+python_version = "2.7"
diff --git a/Pipfile.lock b/Pipfile.lock
index 8b4b86ff..a3672ce6 100644
--- a/Pipfile.lock
+++ b/Pipfile.lock
@@ -1,7 +1,7 @@
{
"_meta": {
"hash": {
- "sha256": "60d12916a05e049248fae15ed730254f555b938583a0e855763b8874ec3cdc8b"
+ "sha256": "05d75ee7249402453796fd650e042b5a2c5c3328b05b48cddfd3b73891a230a5"
},
"host-environment-markers": {
"implementation_name": "cpython",
@@ -12,7 +12,7 @@
"platform_release": "17.2.0",
"platform_system": "Darwin",
"platform_version": "Darwin Kernel Version 17.2.0: Fri Sep 29 18:27:05 PDT 2017; root:xnu-4570.20.62~3/RELEASE_X86_64",
- "python_full_version": "2.7.13",
+ "python_full_version": "2.7.14",
"python_version": "2.7",
"sys_platform": "darwin"
},
@@ -31,9 +31,9 @@
"default": {
"ansible": {
"hashes": [
- "sha256:da61afb29cc5bd6bc4737a2da06e673fb6fccc3ae2685130d19ab3a8e404fb6a"
+ "sha256:315f1580b20bbc2c2f1104f8b5e548c6b4cac943b88711639c5e0d4dfc4d7658"
],
- "version": "==2.4.1.0"
+ "version": "==2.4.2.0"
},
"asn1crypto": {
"hashes": [
@@ -124,6 +124,7 @@
"sha256:75e1de9ba7c155d89bcf67d149b1c741df553c8158536e8d27e63167403159af",
"sha256:ab87dd91c0c4073758d07334c1e5f712ce8fe48f007b86f8238773963ee700a6"
],
+ "markers": "platform_python_implementation != 'PyPy'",
"version": "==1.11.2"
},
"chardet": {
@@ -156,38 +157,31 @@
},
"cryptography": {
"hashes": [
- "sha256:e130218bfb20d644510f24950cbeee350b15f4b318099b627c29975f12b9b7b3",
- "sha256:f2ff1dda46f63b59bf01287c9a5bc8c8278b875a30c0ef26bac807ea4c1632ce",
- "sha256:2d51a144f3447d0d87e07a433a11761e6b50c3ed89de6d0406e191d52612150f",
- "sha256:4cc18262270dc0266934cfdfea7199dc65b9e3b31c68ead8685eb3649498dbe4",
- "sha256:1fc1c6ad9f04871399de407a4f0f555adba5c7ec68068fd27d7ceee9e493755c",
- "sha256:317ab5134ea176c03d068de5094e5b6ab580af2ba42ce596536bcc2e694057bc",
- "sha256:af5b36499d6790480de0b9876982d027a698149c3f195c888be53fe48faff8e7",
- "sha256:58d4c74cd6e6f54a60fd32874c03ba6230c9a1673699ee16811a6b96f91faf56",
- "sha256:05cb4130ebe2d591141501ed06b85072cb3be5e5a0e943a5c487bd6858adcf64",
- "sha256:791e228b5df8f124bfa33384195864cb9f5420b619580258d9002f14e625312e",
- "sha256:b03dc0e2ab4bf02b43cf37ecc994344dc34e90567a8a563fb7538832475974c1",
- "sha256:2ec3de13c3b0c5901820a58c337aca0f00be185c49bfc2c07eee0fe0af201c64",
- "sha256:af8a9241bc8e1d2c9f10b7f5c3be8540af0c20b8e9af8c8cf4412971b7f78de5",
- "sha256:57b7f8be4c817032dcd2c94f4dac6204ec2e85ef1881b4a660e56e7a63529eeb",
- "sha256:35eb35340fdc0b772301f9de985db8d732f3c79dbd647d06b9a8e4e111b53950",
- "sha256:12a16d4c7324166d78e112892236dd07e9b734cbee267ebf58a66c0f2a6fb3ae",
- "sha256:346db72935450d2fb5c807e7f2051830e9bd33ea9471cd14bbf585ea2d5b7c0d",
- "sha256:d4dbf045ee55aabdeb1e8e7550783f42c6f51d70a6069bd63669f34a4408b506",
- "sha256:3beb79972cc26fa7fb553e59a0e96e476cd73c29c3d80456ac6562e7b217a677",
- "sha256:2d72c8cd1e2be9942052b85b1481c74b2eb36780889696ce66afe602c04b9c67",
- "sha256:0764c38c8e2e83238be5821757271cd3ef91dc3ee5bd7915c6b8e255bf1ad5c8",
- "sha256:06c5a28e12539485c0c9e2e561335b835f5f0fdf2d5700b49835bad8607952ba",
- "sha256:68a26c353627163d74ee769d4749f2ee243866e9dac43c93bb33ebd8fbed1199"
- ],
- "version": "==2.1.3"
- },
- "django": {
- "hashes": [
- "sha256:75ce405d60f092f6adf904058d023eeea0e6d380f8d9c36134bac73da736023d",
- "sha256:8918e392530d8fc6965a56af6504229e7924c27265893f3949aa0529cd1d4b99"
- ],
- "version": "==1.11.7"
+ "sha256:69285f5615507b6625f89ea1048addd1d9218585fb886eb90bdebb1d2b2d26f5",
+ "sha256:6cb1224da391fa90f1be524eafb375b62baf8d3df9690b32e8cc475ccfccee5e",
+ "sha256:4f385ee7d39ee1ed74f1d6b1da03d0734ea82855a7b28a9e6e88c4091bc58664",
+ "sha256:a5f2c681fd040ed648513939a1dd2242af19bd5e9e79e53b6dcfa33bdae61217",
+ "sha256:fc2208d95d9ecc8032f5e38330d5ace2e3b0b998e42b08c30c35b2ab3a4a3bc8",
+ "sha256:0d39a93cf25edeae1f796bbc5960e587f34513a852564f6345ea4491a86c5997",
+ "sha256:41f94194ae78f83fd94ca94fb8ad65f92210a76a2421169ffa5c33c3ec7605f4",
+ "sha256:7a2409f1564c84bcf2563d379c9b6148c5bc6b0ae46e109f6a7b4bebadf551df",
+ "sha256:55555d784cfdf9033e81f044c0df04babed2aa141213765d960d233b0139e353",
+ "sha256:9a47a80f65f4feaaf8415a40c339806c7d7d867152ddccc6ca87f707c8b7b565",
+ "sha256:6fb22f63e17813f3d1d8e30dd1e249e2c34233ba1d3de977fd31cb5db764c7d0",
+ "sha256:ee245f185fae723133511e2450be08a66c2eebb53ad27c0c19b228029f4748a5",
+ "sha256:9a2945efcff84830c8e237ab037d0269380d75d400a89cc9e5628e52647e21be",
+ "sha256:2cfcee8829c5dec55597826d52c26bc26e7ce39adb4771584459d0636b0b7108",
+ "sha256:33b564196dcd563e309a0b07444e31611368afe3a3822160c046f5e4c3b5cdd7",
+ "sha256:18d0b0fc21f39b35ea469a82584f55eeecec1f65a92d85af712c425bdef627b3",
+ "sha256:d18df9cf3f3212df28d445ea82ce702c4d7a35817ef7a38ee38879ffa8f7e857",
+ "sha256:b984523d28737e373c7c35c8b6db6001537609d47534892de189bebebaa42a47",
+ "sha256:27a208b9600166976182351174948e128818e7fc95cbdba18143f3106a211546",
+ "sha256:28e4e9a97713aa47b5ef9c5003def2eb58aec89781ef3ef82b1c2916a8b0639b",
+ "sha256:a3c180d12ffb1d8ee5b33a514a5bcb2a9cc06cc89aa74038015591170c82f55d",
+ "sha256:8487524a1212223ca6dc7e2c8913024618f7ff29855c98869088e3818d5f6733",
+ "sha256:e4d967371c5b6b2e67855066471d844c5d52d210c36c28d49a8507b96e2c5291"
+ ],
+ "version": "==2.1.4"
},
"enum34": {
"hashes": [
@@ -357,45 +351,31 @@
},
"pynacl": {
"hashes": [
- "sha256:64d5132fdb54bcfdcc7a531c03980d630469258d8e70d7594ea0d27366fcf834",
- "sha256:aa788cff8c027d7d621806d740fb4759028b0bba6dcdf4f316092698ecaad9ab",
- "sha256:352584f80d52d53849037d60b90be787638f86d0234209959f68496300425013",
- "sha256:abe8bf8908e735db77fd88b972ab1de240962ef91e6b044942f60cfe5a785107",
- "sha256:b83e4232b43a52c8802234d575f992f82c1e9c466acd911983613a3823c4dc4e",
- "sha256:c7c165b5d43198751651b33d562e57a7bd55d57062678ad14453ef715be415c4",
- "sha256:74101b214305b6856d20593ee7e9f77a8f12e24a19caeda7f5fef3638cd8fe17",
- "sha256:df4e44c34f3d4d199a06e1c11b7a7357e9adfdfaab34211991b33a58a155daba",
- "sha256:976667758a7eb2e555cefbd131df54eea9967002beb73d06f1943127993db566",
- "sha256:77c3b6d6fbf8b2137d41be9aed9eff30232287aeba00a6d353aa48fc9de4c55e",
- "sha256:2fda81371b8dae1d18e2df9ce06961b66ef0b4226c6c98287e3e4661d9e64317",
- "sha256:5bd2f0652fafd61669cbeb6312e9a87817e2e9613a471c588fd2e108e3119bb8",
- "sha256:d0c0ca0a0548ed67301424f143c2b8b9d97956b152f8a56a7ebbdadb2071737d",
- "sha256:0a85d5dde05a48377675f0c60d4b96127cc1b70097e24f4a4557ae3fa18a0038",
- "sha256:8e194ea19c447c4caa94a84316412ad11cfb61f029d408fd4bdc1164ec694578",
- "sha256:c05b6e17903509b6fb24f1c41c9760a33a0e0ed2a5aedc8eb9d988e5226377ce",
- "sha256:afd47e36aaad8a3b6b92c98e45ca0e7de9627b51d577920af2e2620794503ea1",
- "sha256:ac23923052341f35369be898c9673774937aad500fd5693365e3e5e509cbc664",
- "sha256:2a8efeb6d442322836e70e6df0094ce8ea46e156e2b4ea38a86fd553c5665fff",
- "sha256:189410422028e7b0543dee6aca3da026bbd66bbad078143c46c5a3faf2733acb",
- "sha256:5be1af61b69a8dcc0264777c206305a7156c216ba98f6a7864254dfe60be35cf",
- "sha256:a018ee272dc064a50cd799fc265d634c54e64a8bdba7a914877f9e1d32184e5e",
- "sha256:45c5bcdf8ddefe2e9381f5d37fe778bbda6991fe7004e0b1ea3570df2fc07207"
- ],
- "version": "==1.2.0"
- },
- "pytz": {
- "hashes": [
- "sha256:80af0f3008046b9975242012a985f04c5df1f01eed4ec1633d56cc47a75a6a48",
- "sha256:feb2365914948b8620347784b6b6da356f31c9d03560259070b2f30cff3d469d",
- "sha256:59707844a9825589878236ff2f4e0dc9958511b7ffaae94dc615da07d4a68d33",
- "sha256:d0ef5ef55ed3d37854320d4926b04a4cb42a2e88f71da9ddfdacfde8e364f027",
- "sha256:c41c62827ce9cafacd6f2f7018e4f83a6f1986e87bfd000b8cfbd4ab5da95f1a",
- "sha256:8cc90340159b5d7ced6f2ba77694d946fc975b09f1a51d93f3ce3bb399396f94",
- "sha256:dd2e4ca6ce3785c8dd342d1853dd9052b19290d5bf66060846e5dc6b8d6667f7",
- "sha256:699d18a2a56f19ee5698ab1123bbcc1d269d061996aeb1eda6d89248d3542b82",
- "sha256:fae4cffc040921b8a2d60c6cf0b5d662c1190fe54d718271db4eb17d44a185b7"
- ],
- "version": "==2017.3"
+ "sha256:0bfa0d94d2be6874e40f896e0a67e290749151e7de767c5aefbad1121cad7512",
+ "sha256:1d33e775fab3f383167afb20b9927aaf4961b953d76eeb271a5703a6d756b65b",
+ "sha256:eb2acabbd487a46b38540a819ef67e477a674481f84a82a7ba2234b9ba46f752",
+ "sha256:14339dc233e7a9dda80a3800e64e7ff89d0878ba23360eea24f1af1b13772cac",
+ "sha256:cf6877124ae6a0698404e169b3ba534542cfbc43f939d46b927d956daf0a373a",
+ "sha256:eeee629828d0eb4f6d98ac41e9a3a6461d114d1d0aa111a8931c049359298da0",
+ "sha256:d0eb5b2795b7ee2cbcfcadacbe95a13afbda048a262bd369da9904fecb568975",
+ "sha256:11aa4e141b2456ce5cecc19c130e970793fa3a2c2e6fbb8ad65b28f35aa9e6b6",
+ "sha256:8ac1167195b32a8755de06efd5b2d2fe76fc864517dab66aaf65662cc59e1988",
+ "sha256:d795f506bcc9463efb5ebb0f65ed77921dcc9e0a50499dedd89f208445de9ecb",
+ "sha256:be71cd5fce04061e1f3d39597f93619c80cdd3558a6c9ba99a546f144a8d8101",
+ "sha256:2a42b2399d0428619e58dac7734838102d35f6dcdee149e0088823629bf99fbb",
+ "sha256:73a5a96fb5fbf2215beee2353a128d382dbca83f5341f0d3c750877a236569ef",
+ "sha256:d8aaf7e5d6b0e0ef7d6dbf7abeb75085713d0100b4eb1a4e4e857de76d77ac45",
+ "sha256:2dce05ac8b3c37b9e2f65eab56c544885607394753e9613fd159d5e2045c2d98",
+ "sha256:f5ce9e26d25eb0b2d96f3ef0ad70e1d3ae89b5d60255c462252a3e456a48c053",
+ "sha256:6453b0dae593163ffc6db6f9c9c1597d35c650598e2c39c0590d1757207a1ac2",
+ "sha256:fabf73d5d0286f9e078774f3435601d2735c94ce9e514ac4fb945701edead7e4",
+ "sha256:13bdc1fe084ff9ac7653ae5a924cae03bf4bb07c6667c9eb5b6eb3c570220776",
+ "sha256:8f505f42f659012794414fa57c498404e64db78f1d98dfd40e318c569f3c783b",
+ "sha256:04e30e5bdeeb2d5b34107f28cd2f5bbfdc6c616f3be88fc6f53582ff1669eeca",
+ "sha256:8abb4ef79161a5f58848b30ab6fb98d8c466da21fdd65558ce1d7afc02c70b5f",
+ "sha256:e0d38fa0a75f65f556fb912f2c6790d1fa29b7dd27a1d9cc5591b281321eaaa9"
+ ],
+ "version": "==1.2.1"
},
"pyyaml": {
"hashes": [
@@ -467,20 +447,6 @@
],
"version": "==17.3.0"
},
- "certifi": {
- "hashes": [
- "sha256:244be0d93b71e93fc0a0a479862051414d0e00e16435707e5bf5000f92e04694",
- "sha256:5ec74291ca1136b40f0379e1128ff80e866597e4e2c1e755739a913bbc3613c0"
- ],
- "version": "==2017.11.5"
- },
- "chardet": {
- "hashes": [
- "sha256:fc323ffcaeaed0e0a02bf4d117757b98aed530d9ed4531e3e15460124c106691",
- "sha256:84ab92ed1c4d4f16916e05906b6b75a6c0fb5db821cc65e70cbd64a3e2a5eaae"
- ],
- "version": "==3.0.4"
- },
"coverage": {
"hashes": [
"sha256:d1ee76f560c3c3e8faada866a07a32485445e16ed2206ac8378bd90dadffb9f0",
@@ -532,6 +498,10 @@
],
"version": "==0.6.2"
},
+ "e1839a8": {
+ "editable": true,
+ "path": "."
+ },
"faker": {
"hashes": [
"sha256:f5529ff519a4bed0c0c8ccbbf7ca0d918ed0a9826fe8adc60f58d5b052a946dc",
@@ -547,13 +517,6 @@
"markers": "python_version < '3.0'",
"version": "==1.0.2"
},
- "idna": {
- "hashes": [
- "sha256:8c7309c718f94b3a625cb648ace320157ad16ff131ae0af362c9f21b80ef6ec4",
- "sha256:2c6a5de3089009e3da7c5dde64a141dbc8551d5b7f6cf4ed7c2568d0cc520a8f"
- ],
- "version": "==2.6"
- },
"ipaddress": {
"hashes": [
"sha256:d34cf15d95ce9a734560f7400a8bd2ac2606f378e2a1d0eadbf1c98707e7c74a",
@@ -569,13 +532,6 @@
],
"version": "==2.0.0"
},
- "packaging": {
- "hashes": [
- "sha256:99276dc6e3a7851f32027a68f1095cd3f77c148091b092ea867a351811cfe388",
- "sha256:5d50835fdf0a7edf0b55e311b7c887786504efea1177abd7e69329a8e5ea619e"
- ],
- "version": "==16.8"
- },
"pbr": {
"hashes": [
"sha256:60c25b7dfd054ef9bb0ae327af949dd4676aa09ac3a9471cdc871d8a9213f9ac",
@@ -583,20 +539,6 @@
],
"version": "==3.1.1"
},
- "pip-check-reqs": {
- "hashes": [
- "sha256:044bc489a13a9a62033de31cbcfe483b774577cc7bac8b1ee7453cd260dcce6a",
- "sha256:ee4d2e70d2008d703986d25e15be845fdfdb5a38de1257ee564ee55c9ae4204e"
- ],
- "version": "==2.0.1"
- },
- "pipreqs": {
- "hashes": [
- "sha256:2dfa21631cb68a97515e222d6f0033b5bfb75823567ca2195d528efb18c97990",
- "sha256:cec6eecc4685967b27eb386037565a737d036045f525b9eb314631a68d60e4bc"
- ],
- "version": "==0.4.9"
- },
"pluggy": {
"hashes": [
"sha256:7f8ae7f5bdf75671a718d2daf0a64b7885f74510bcd98b1a0bb420eb9a9d0cff"
@@ -617,24 +559,12 @@
],
"version": "==1.6.0"
},
- "pyparsing": {
- "hashes": [
- "sha256:fee43f17a9c4087e7ed1605bd6df994c6173c1e977d7ade7b651292fab2bd010",
- "sha256:0832bcf47acd283788593e7a0f542407bd9550a55a8a8435214a1960e04bcb04",
- "sha256:9e8143a3e15c13713506886badd96ca4b579a87fbdf49e550dbfc057d6cb218e",
- "sha256:281683241b25fe9b80ec9d66017485f6deff1af5cde372469134b56ca8447a07",
- "sha256:b8b3117ed9bdf45e14dcc89345ce638ec7e0e29b2b579fa1ecf32ce45ebac8a5",
- "sha256:8f1e18d3fd36c6795bb7e02a39fd05c611ffc2596c1e0d995d34d67630426c18",
- "sha256:e4d45427c6e20a59bf4f88c639dcc03ce30d193112047f94012102f235853a58"
- ],
- "version": "==2.2.0"
- },
"pytest": {
"hashes": [
- "sha256:72186b294cc88322a4427225fdb9240c95e3f01cc53c1ea4f4f79ffe39ff1955",
- "sha256:6db1c070aa412c30647b6aeb13c55670f900cf00fbafa003cdde560c3f4a8d76"
+ "sha256:ae4a2d0bae1098bbe938ecd6c20a526d5d47a94dc42ad7331c9ad06d0efe4962",
+ "sha256:cf8436dc59d8695346fcd3ab296de46425ecab00d64096cebe79fb51ecb2eb93"
],
- "version": "==3.3.0"
+ "version": "==3.3.1"
},
"pytest-cov": {
"hashes": [
@@ -682,13 +612,6 @@
],
"version": "==3.12"
},
- "requests": {
- "hashes": [
- "sha256:6a1b267aa90cac58ac3a765d067950e7dbbf75b1da07e895d1f594193a40a38b",
- "sha256:9c443e7324ba5b85070c4a818ade28bfabedf16ea10206da1132edaa6dda237e"
- ],
- "version": "==2.18.4"
- },
"six": {
"hashes": [
"sha256:832dc0e10feb1aa2c68dcc57dbb658f1c7e65b9b61af69048abc87a2db00a0eb",
@@ -702,20 +625,6 @@
"sha256:d0afd5e8a7ac69bfb1372e1bbfa3c63c22e3db8ae1284690e96b45c4430d08d0"
],
"version": "==1.1"
- },
- "urllib3": {
- "hashes": [
- "sha256:06330f386d6e4b195fbfc736b297f58c5a892e4440e54d294d7004e3a9bbea1b",
- "sha256:cc44da8e1145637334317feebd728bd869a35285b93cbb4cca2577da7e62db4f"
- ],
- "version": "==1.22"
- },
- "yarg": {
- "hashes": [
- "sha256:4f9cebdc00fac946c9bf2783d634e538a71c7d280a4d806d45fd4dc0ef441492",
- "sha256:55695bf4d1e3e7f756496c36a69ba32c40d18f821e38f61d028f6049e5e15911"
- ],
- "version": "==0.1.9"
}
}
}
diff --git a/docs/testing/user/userguide/getting-started.rst b/docs/testing/user/userguide/getting-started.rst
index 0f60f13f..94f37cfc 100644
--- a/docs/testing/user/userguide/getting-started.rst
+++ b/docs/testing/user/userguide/getting-started.rst
@@ -22,7 +22,7 @@ Installation
Refer to `installation and configuration guide`_ for details
-.. _installation and configuration guide:../configguide/
+.. _installation and configuration guide: ../configguide/
Create
======
diff --git a/docs/testing/user/userguide/index.rst b/docs/testing/user/userguide/index.rst
index 8cbb43c2..262ddd70 100644
--- a/docs/testing/user/userguide/index.rst
+++ b/docs/testing/user/userguide/index.rst
@@ -17,3 +17,4 @@ QTIP User Guide
api.rst
web.rst
compute.rst
+ storage.rst
diff --git a/docs/testing/user/userguide/storage.rst b/docs/testing/user/userguide/storage.rst
new file mode 100644
index 00000000..7681ff7a
--- /dev/null
+++ b/docs/testing/user/userguide/storage.rst
@@ -0,0 +1,110 @@
+.. This work is licensed under a Creative Commons Attribution 4.0 International License.
+.. http://creativecommons.org/licenses/by/4.0
+.. (c) 2017 ZTE Corp.
+
+
+********************************
+Storage Performance Benchmarking
+********************************
+
+Like compute QPI, storage QPI gives users an overall score for system storage performance.
+The project `StorPerf`_ in OPNFV provides a tool to measure ephemeral and block storage
+performance of OpenStack. Naturally, QTIP integrates `StorPerf`_ to generate the storage
+performance data.
+
+For now, storage QPI runs against on the baremetal/virtual scenario deployed by
+the OPNFV installer `APEX`_.
+
+Getting started
+===============
+
+Notice: All descriptions are based on containers.
+
+Requirements
+------------
+
+* Git must be installed.
+* Docker and docker-compose must be installed.
+
+Git Clone QTIP Repo
+-------------------
+
+::
+
+ git clone https://git.opnfv.org/qtip
+
+Running QTIP container and Storperf Containers
+----------------------------------------------
+
+With Docker Compose, we can use a YAML file to configure application's services and
+use a single command to create and start all the services.
+
+There is a YAML file ``./qtip/tests/ci/storage/docker-compose.yaml`` from QTIP repos.
+It can help you to create and start the storage QPI service.
+
+Before running docker-compose, you must specify these three variables:
+
+* DOCKER_TAG, which specified the Docker tag(ie: latest)
+* SSH_CREDENTIALS, a directory which includes an SSH key pair will be mounted into QTIP container.
+ QTIP use this SSH key pair to connect to remote hosts.
+* ENV_FILE, which includes the environment variables required by QTIP and Storperf containers
+
+ A example of ENV_FILE:
+
+ ::
+
+ INSTALLER_TYPE=apex
+ INSTALLER_IP=192.168.122.247
+ TEST_SUITE=storage
+ NODE_NAME=zte-virtual5
+ SCENARIO=generic
+ TESTAPI_URL=
+ OPNFV_RELEASE=euphrates
+ # The below environment variables are Openstack Credentials.
+ OS_USERNAME=admin
+ OS_USER_DOMAIN_NAME=Default
+ OS_PROJECT_DOMAIN_NAME=Default
+ OS_BAREMETAL_API_VERSION=1.29
+ NOVA_VERSION=1.1
+ OS_PROJECT_NAME=admin
+ OS_PASSWORD=ZjmZJmkCvVXf9ry9daxgwmz3s
+ OS_NO_CACHE=True
+ COMPUTE_API_VERSION=1.1
+ no_proxy=,192.168.37.10,192.0.2.5
+ OS_CLOUDNAME=overcloud
+ OS_AUTH_URL=http://192.168.37.10:5000/v3
+ IRONIC_API_VERSION=1.29
+ OS_IDENTITY_API_VERSION=3
+ OS_AUTH_TYPE=password
+
+Then, you use the following commands to start storage QPI service.
+
+::
+
+ docker-compose -f docker-compose.yaml pull
+ docker-compose -f docker-compose.yaml up -d
+
+Execution
+---------
+
+You can run storage QPI with docker exec:
+::
+
+ docker exec <qtip container> bash -x /home/opnfv/repos/qtip/qtip/scripts/quickstart.sh
+
+QTIP generates results in the ``$PWD/results/`` directory are listed down under the
+timestamp name.
+
+Metrics
+-------
+
+Storperf provides the following `metrics`_:
+
+* IOPS
+* Bandwidth (number of kilobytes read or written per second)
+* Latency
+
+
+.. _StorPerf: https://wiki.opnfv.org/display/storperf
+.. _APEX: https://wiki.opnfv.org/display/apex
+.. _metrics: http://docs.opnfv.org/en/stable-euphrates/submodules/storperf/docs/testing/user/introduction.html#what-data-can-i-get
diff --git a/qtip/ansible_library/modules/mcp.py b/qtip/ansible_library/modules/mcp.py
index 21be7bcc..97ead724 100644
--- a/qtip/ansible_library/modules/mcp.py
+++ b/qtip/ansible_library/modules/mcp.py
@@ -72,16 +72,13 @@ def generate_inventory(nodes):
"""Generate ansible inventory from node list in json format"""
hosts = defaultdict(list)
hosts_meta = {}
- node_meta = {}
for key, value in nodes.iteritems():
- if isinstance(value, dict):
- for k, v in value.iteritems():
- if k == "fqdn_ip4":
- node_meta['ansible_ssh_host'] = v[0]
- node_meta['ansible_user'] = 'root'
- hosts_meta[key] = node_meta
- hosts['compute-nodes'].append(node_meta['ansible_ssh_host'])
+ hosts_meta[value['host']] = {
+ 'ansible_ssh_host': value['fqdn_ip4'][0],
+ 'ansible_user': 'ubuntu'
+ }
+ hosts['compute'].append(value['host'])
return {'hosts': hosts, 'hosts_meta': hosts_meta}
diff --git a/resources/ansible_roles/qtip-generator/defaults/main.yml b/resources/ansible_roles/qtip-generator/defaults/main.yml
index f6714b8d..344feb54 100644
--- a/resources/ansible_roles/qtip-generator/defaults/main.yml
+++ b/resources/ansible_roles/qtip-generator/defaults/main.yml
@@ -14,7 +14,7 @@ installer_group:
manual: dummy-group
fuel: fuel-masters
apex: apex-underclouds
- mcp: salt-masters
+ mcp: salt-master
project_name: 'qtip-project'
project_template: 'compute'
diff --git a/tests/ci/utils/start_services.sh b/tests/ci/utils/start_services.sh
index 0932d45e..c2129570 100644
--- a/tests/ci/utils/start_services.sh
+++ b/tests/ci/utils/start_services.sh
@@ -28,8 +28,8 @@ grep "export" ${TMPFILE} | sed "s/export //" >> $ENV_FILE
sed -i '/^PYTHONWARNINGS=/d' $ENV_FILE
# In CI job, it still uses fuel to represent MCP.
-if [[ "${BRANCH}" =~ "master" and "${INSTALLER_TYPE}" =~ "fuel" ]]; then
- sed -i 's/INSTALLER_TYPE=fuel/INSTALLER_TYPE=mcp' $ENV_FILE
+if [[ "${BRANCH}" =~ "master" && "${INSTALLER_TYPE}" =~ "fuel" ]];then
+ sed -i 's/^INSTALLER_TYPE=fuel/INSTALLER_TYPE=mcp/g' $ENV_FILE
fi
docker-compose -f $script_dir/${TEST_SUITE}/docker-compose.yaml pull