Fix: Fixed version of tinyrpc to not break the Ryu installation. 60/8160/3
authorpeusterm <manuel.peuster@uni-paderborn.de>
Wed, 13 Nov 2019 11:49:15 +0000 (12:49 +0100)
committerpeusterm <manuel.peuster@uni-paderborn.de>
Thu, 14 Nov 2019 10:22:12 +0000 (11:22 +0100)
Change-Id: I901da179c43bdce4337575691fab82baae7987f4
Signed-off-by: peusterm <manuel.peuster@uni-paderborn.de>
Dockerfile
Jenkinsfile
ansible/install.yml
pipeline_local.sh
setup.py
src/emuvim/api/rest/rest_api_endpoint.py

index a823cda..38adc2a 100755 (executable)
@@ -64,6 +64,9 @@ RUN python setup.py develop
 # 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"]
index 36156a7..a110b16 100644 (file)
@@ -60,6 +60,7 @@ node('docker') {
     // 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'"
index 4cf9be7..e303aad 100755 (executable)
@@ -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
      
index 4b34ea6..68317c4 100755 (executable)
@@ -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 @@ echo "Running unit tests ..."
 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."
index 23bb860..c24498b 100755 (executable)
--- a/setup.py
+++ b/setup.py
@@ -45,6 +45,7 @@ setup(name='emuvim',
           'argparse',
           'networkx==1.11',
           'six>=1.9',
+          'tinyrpc==1.0.3',
           'ryu',
           'oslo.config',
           'pytest<=4.6.4',
index b9c11ab..d2abde8 100755 (executable)
@@ -69,6 +69,7 @@ class RestApiEndpoint(object):
 
         # 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))