aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorCédric Ollivier <cedric.ollivier@orange.com>2020-01-11 19:08:27 +0100
committerCédric Ollivier <cedric.ollivier@orange.com>2020-01-11 19:09:40 +0100
commit6b770d9faf53410e2ec628ce27734e278d468a9b (patch)
treead684e75e760071f8d743b8bca710059fa234425
parent319463673314c6b7d75d940a7c69e28f0c90a2a5 (diff)
Publish CNTT Snezka RC Cookbook
http://testresults.opnfv.org/functest/cntt_rc_cookbook/ Change-Id: Ie100ddcf4a0ad1b8ba01a10ae91d2a6f40587c3c Signed-off-by: Cédric Ollivier <cedric.ollivier@orange.com>
-rw-r--r--doc/cntt_rc_cookbook/cntt_rc_cookbook.md80
-rw-r--r--doc/cntt_rc_cookbook/index.html52
2 files changed, 132 insertions, 0 deletions
diff --git a/doc/cntt_rc_cookbook/cntt_rc_cookbook.md b/doc/cntt_rc_cookbook/cntt_rc_cookbook.md
new file mode 100644
index 00000000..dfb97aea
--- /dev/null
+++ b/doc/cntt_rc_cookbook/cntt_rc_cookbook.md
@@ -0,0 +1,80 @@
+# CNTT Snezka RC Cookbook
+
+[Cédric Ollivier](mailto:cedric.ollivier@orange.com)
+
+2020/01/15
+
+
+
+## CNTT Snezka RC
+
+
+### CNTT RI and RC toolchains
+
+- leverage on existing OPNFV testing knowledge and experience
+- conform to LFN CI/CD toolchain continuously deploying and testing NFVI
+- deploy locally the same components via
+ [Xtesting CI](https://galaxy.ansible.com/collivier/xtesting) in case of RC
+
+
+### TC integration requirements
+
+- enforce that the test cases are delivered with all runtime dependencies
+- avoid manual operations when configuring the server running the test cases
+- conform to the common test case execution
+- leverage on an unified way to manage all the interactions with the CI/CD
+ components and with third-parties
+
+**2 simple requirements: [Docker](https://www.docker.com/) + [Xtesting](https://xtesting.readthedocs.io/en/latest/)**
+
+
+### Run CNTT RC Cookbook
+
+- copy/paste the following commands:
+```bash
+virtualenv functest
+. functest/bin/activate
+pip install ansible
+ansible-galaxy install collivier.xtesting
+git clone https://gerrit.opnfv.org/gerrit/functest functest-src
+(cd functest-src && git checkout -b stable/hunter origin/stable/hunter)
+ansible-playbook functest-src/ansible/site.cntt.yml
+```
+- prepare the TC requirements (credentials, images, etc.)
+- trigger the job on the local Jenkins and send the final archive to
+ third-party certification
+
+**Try it, and you will love it!**
+
+
+
+## CNTT Post-Snezka RC
+
+
+### Update the OPNFV TCs
+
+- [port YardStick testcases to Xtesting](https://github.com/cntt-n/CNTT/issues/509)
+- [port Bottlenecks to Xtesting](https://github.com/cntt-n/CNTT/issues/511)
+- [port StorPerf testcases to Xtesting](https://github.com/cntt-n/CNTT/issues/673)
+- [port NFVbench testcases to Xtesting](https://github.com/cntt-n/CNTT/issues/865)
+
+
+### Increase the test coverage
+
+- [add heat-tempest-plugin to Functest](https://github.com/cntt-n/CNTT/issues/483)
+- [add KloudBuster to Functest](https://github.com/cntt-n/CNTT/issues/508)
+- [add tempest-stress to Functest](https://github.com/cntt-n/CNTT/issues/916)
+
+
+
+## Conclusion
+
+
+### Takeaways
+
+- the RI/RC model is very simple and pragmatic
+- it eases smootly integrating new test cases without extra logics and skills
+- it's already in-use in Functest Kubernetes which should be more than an help
+ for CNTT RC2 (see k8s_conformance and xrally_kubernetes)
+
+**Any contribution is more than welcome!**
diff --git a/doc/cntt_rc_cookbook/index.html b/doc/cntt_rc_cookbook/index.html
new file mode 100644
index 00000000..e7c2e015
--- /dev/null
+++ b/doc/cntt_rc_cookbook/index.html
@@ -0,0 +1,52 @@
+<html>
+<head>
+<title>CNTT Snezka: RC Cookbook</title>
+<meta name="author" content="Cédric Ollivier">
+<meta name="viewport"
+ content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no">
+<link rel="stylesheet" href="../reveal.js/css/reveal.css">
+<link rel="stylesheet" href="../reveal.js/css/theme/white.css">
+<link rel="stylesheet" href="../reveal.js/lib/css/zenburn.css">
+<script>
+var link = document.createElement( 'link' );
+link.rel = 'stylesheet';
+link.type = 'text/css';
+link.href = window.location.search.match( /print-pdf/gi ) ? '../reveal.js/css/print/pdf.css' : '../reveal.js/css/print/paper.css';
+document.getElementsByTagName( 'head' )[0].appendChild( link );
+</script>
+</head>
+<body>
+ <div class="reveal">
+ <div class="slides">
+ <section data-markdown="rc_cookbook.md" data-separator="^\n\n\n"
+ data-separator-vertical="^\n\n" data-separator-notes="^Note:"></section>
+ </div>
+ </div>
+ <script src="../reveal.js/lib/js/head.min.js"></script>
+ <script src="../reveal.js/js/reveal.js"></script>
+ <script>
+ Reveal.initialize({
+ dependencies : [ {
+ src : '../reveal.js/plugin/markdown/marked.js',
+ condition : function() {
+ return !!document.querySelector('[data-markdown]');
+ }
+ }, {
+ src : '../reveal.js/plugin/markdown/markdown.js',
+ condition : function() {
+ return !!document.querySelector('[data-markdown]');
+ }
+ }, {
+ src: '../reveal.js/plugin/highlight/highlight.js',
+ async: true,
+ callback: function() {
+ hljs.initHighlightingOnLoad();
+ }
+ }, {
+ src: '../reveal.js/plugin/notes/notes.js',
+ async: true
+ } ]
+ });
+ </script>
+</body>
+</html>