Fix: Fixed version of tinyrpc to not break the Ryu installation.
Change-Id: I901da179c43bdce4337575691fab82baae7987f4
Signed-off-by: peusterm <manuel.peuster@uni-paderborn.de>
diff --git a/Dockerfile b/Dockerfile
index a823cda..38adc2a 100755
--- a/Dockerfile
+++ b/Dockerfile
@@ -64,6 +64,9 @@
# Hotfix: https://github.com/pytest-dev/pytest/issues/4770
RUN pip2 install "more-itertools<=5.0.0"
+# Hotfix: Do not use latest tinyrpc lib, since it breaks Ryu
+RUN pip2 install "tinyrpc==1.0.3"
+
# Important: This entrypoint is required to start the OVS service
ENTRYPOINT ["/son-emu/utils/docker/entrypoint.sh"]
CMD ["python", "examples/default_single_dc_topology.py"]
diff --git a/Jenkinsfile b/Jenkinsfile
index 36156a7..a110b16 100644
--- a/Jenkinsfile
+++ b/Jenkinsfile
@@ -60,6 +60,7 @@
// files owned by root that could not be cleaned up.
stage("Post-Test") {
sh "docker images"
+ sh "docker run --rm --privileged --pid='host' -v /var/run/docker.sock:/var/run/docker.sock -u 0:0 osm/vim-emu-master pip list"
sh "docker run --rm --privileged --pid='host' -v /var/run/docker.sock:/var/run/docker.sock -u 0:0 osm/vim-emu-master pytest -v"
sh "docker run --rm --privileged --pid='host' -v /var/run/docker.sock:/var/run/docker.sock -u 0:0 osm/vim-emu-master flake8 --exclude=.eggs,devops,build,examples/charms --ignore=E501,W605,W504 ."
sh "echo 'done'"
diff --git a/ansible/install.yml b/ansible/install.yml
index 4cf9be7..e303aad 100755
--- a/ansible/install.yml
+++ b/ansible/install.yml
@@ -56,6 +56,9 @@
- name: install six
pip: name=six state=latest
+ - name: install tinyrpc (fixed version to not break ryu)
+ pip: name=tinyrpc version=1.0.3
+
- name: install ryu
pip: name=ryu state=latest
diff --git a/pipeline_local.sh b/pipeline_local.sh
index 4b34ea6..68317c4 100755
--- a/pipeline_local.sh
+++ b/pipeline_local.sh
@@ -1,4 +1,31 @@
#!/bin/bash
+# Copyright (c) 2015 SONATA-NFV and Paderborn University
+# ALL RIGHTS RESERVED.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+# Neither the name of the SONATA-NFV, Paderborn University
+# nor the names of its contributors may be used to endorse or promote
+# products derived from this software without specific prior written
+# permission.
+#
+# This work has been performed in the framework of the SONATA project,
+# funded by the European Commission under Grant number 671517 through
+# the Horizon 2020 and 5G-PPP programmes. The authors would like to
+# acknowledge the contributions of their colleagues of the SONATA
+# partner consortium (www.sonata-nfv.eu).
+
+
# helper script to be executed before committing
set -e
# trigger pep8 style check
@@ -10,6 +37,7 @@
sudo pytest -v
# do everything in Docker, like it is done by Jenkins
docker build -t vim-emu-loc-test .
+docker run --rm --privileged --pid='host' -v /var/run/docker.sock:/var/run/docker.sock vim-emu-loc-test pip list
docker run --rm --privileged --pid='host' -v /var/run/docker.sock:/var/run/docker.sock vim-emu-loc-test pytest -v
docker run --rm --privileged --pid='host' -v /var/run/docker.sock:/var/run/docker.sock vim-emu-loc-test flake8 --exclude=.eggs,devopsi,build,examples/charms --ignore=E501,W605,W504 .
echo "done."
diff --git a/setup.py b/setup.py
index 23bb860..c24498b 100755
--- a/setup.py
+++ b/setup.py
@@ -45,6 +45,7 @@
'argparse',
'networkx==1.11',
'six>=1.9',
+ 'tinyrpc==1.0.3',
'ryu',
'oslo.config',
'pytest<=4.6.4',
diff --git a/src/emuvim/api/rest/rest_api_endpoint.py b/src/emuvim/api/rest/rest_api_endpoint.py
index b9c11ab..d2abde8 100755
--- a/src/emuvim/api/rest/rest_api_endpoint.py
+++ b/src/emuvim/api/rest/rest_api_endpoint.py
@@ -69,6 +69,7 @@
# define dashboard endpoints
db_dir, db_file = self.get_dashboard_path()
+
@self.app.route('/dashboard/<path:path>')
def db_file(path):
logging.info("[DB] Serving: {}".format(path))