summaryrefslogtreecommitdiffstats
path: root/docs
diff options
context:
space:
mode:
Diffstat (limited to 'docs')
-rw-r--r--docs/com/pres/gambiachallenges/gambia.md77
-rw-r--r--docs/com/pres/gambiachallenges/index.html52
2 files changed, 129 insertions, 0 deletions
diff --git a/docs/com/pres/gambiachallenges/gambia.md b/docs/com/pres/gambiachallenges/gambia.md
new file mode 100644
index 000000000..d041a3fc2
--- /dev/null
+++ b/docs/com/pres/gambiachallenges/gambia.md
@@ -0,0 +1,77 @@
+# Functest Gambia, new challenges
+
+[Cédric Ollivier](mailto:cedric.ollivier@orange.com)
+
+2018/03/22
+
+
+
+## Gating
+
+
+### Our gating is very simple
+
+- today all test suites are run sequentially
+- all resources are not necessarily cleant until the next OpenStack deployment
+
+**It's fine for gating installers but not for verifying a production
+environment (e.g. multi users running the same testcase)**
+
+
+### Parallel and Live testing
+
+- all resources should be allocated in their own OpenStack projects (already
+ mostly the case)
+- no testcase should create singletons on resource attributes (name, ip, etc.)
+- all resources have to be cleant at the end
+
+**According to [Orange testing results](https://wiki.opnfv.org/pages/viewpage.action?pageId=13211751),
+Functest is already in a good shape to meet this goal**
+
+
+
+## Quality Assurance
+
+**Gambia release will match the OpenStack Quality Golden rules**
+
+
+### Pylint and coverage (started from E release)
+- need to refactor several vnf testcases and to remove duplicated code
+- document well and cover Functest utils: they are reused by
+OPNFV third-parties (SFC, SDNVPN)
+
+** Functest will be rated 10/10**
+
+
+### releasing
+
+- Functest could be also released as a classical Python package (
+[PyPI](https://pypi.python.org/pypi))
+- its API docs could be published in [Read the Docs](https://readthedocs.org/)
+
+
+### Current technical debt
+- former python modules (e.g. cli) or containers (e.g. restapi) have to be
+removed
+- functest shouldn't contain any OPNFV Installer logic. **All Jenkins Jobs
+must set the right env vars as all endusers**
+- vnf descriptors should be hosted by Functest instead of using external github
+repositories
+
+
+
+## other challenges
+
+
+### proposals
+
+- ease integrating tempest plugins with a minimum effort (new tempest driver in Functest Framework and new opnfv/functest-tempest container)
+- why not leveraging on OpenStack middlewares such as
+ [oslo.config](https://docs.openstack.org/oslo.config/latest/) or
+ [stevedore](https://docs.openstack.org/stevedore/latest/)?
+
+**Any new testcase is more than welcome!**
+
+
+
+## Thank you
diff --git a/docs/com/pres/gambiachallenges/index.html b/docs/com/pres/gambiachallenges/index.html
new file mode 100644
index 000000000..592ccf2f5
--- /dev/null
+++ b/docs/com/pres/gambiachallenges/index.html
@@ -0,0 +1,52 @@
+<html>
+<head>
+<title>Gambia challenges</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="gambia.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>