Add Dockerfile with CPerf's test tools 73/11973/3
authorJamo Luhrsen <jluhrsen@redhat.com>
Thu, 7 Apr 2016 04:59:47 +0000 (21:59 -0700)
committerDaniel Farrell <dfarrell@redhat.com>
Wed, 27 Apr 2016 21:36:55 +0000 (17:36 -0400)
Includes:
  - CBench install
  - ODL Integration/Test, OPNFV RelEng and OPNFV CPerf repos
  - Robot Framework and required libs for ODL's tests

Change-Id: I000d34f564becbeb0d9c907ca837ba744b808e32
Signed-off-by: Jamo Luhrsen <jluhrsen@redhat.com>
Signed-off-by: Daniel Farrell <dfarrell@redhat.com>
docker/Dockerfile [new file with mode: 0644]

diff --git a/docker/Dockerfile b/docker/Dockerfile
new file mode 100644 (file)
index 0000000..7280a73
--- /dev/null
@@ -0,0 +1,70 @@
+##############################################################################
+# Docker container for CPerf's test tools.
+##############################################################################
+#
+# To build (from the directory that contains this Dockerfile):
+#   $ docker build -t opnfv/cperf .
+#
+# To run:
+#   $ docker run -it opnfv/cperf ${pybot_command}
+#
+# Pass the full pybot test command as ${pybot_command}.
+#
+# Copyright (c) 2016 Red Hat Inc.
+# Jamo Luhrsen <jluhrsen@redhat.com>
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+#############################################################################
+
+FROM centos:7
+MAINTAINER Jamo Luhrsen <jluhrsen@redhat.com>
+
+ENV HOME /home/opnfv
+ENV REPOS_DIR /home/opnfv/repos
+RUN mkdir -p ${REPOS_DIR}
+
+RUN yum install -y epel-release && yum update -y
+
+RUN yum install -y \
+    net-snmp-devel \
+    libpcap-devel \
+    autoconf \
+    make \
+    automake \
+    libtool \
+    libconfig-devel \
+    wget \
+    git \
+    python-devel \
+    python-pip \
+    python-setuptools
+
+RUN pip install docker-py \
+    setuptools \
+    importlib \
+    requests \
+    scapy \
+    netifaces \
+    netaddr \
+    ipaddr \
+    jsonpath-rw \
+    robotframework{,-{httplibrary,requests,sshlibrary,selenium2library}}
+
+RUN git config --global http.sslVerify false
+
+# Clone ODL Int/Test, ODL RelEng and OPNFV CPerf repos
+ENV CPERF_REPO_DIR ${REPOS_DIR}/cperf
+ENV RELENG_REPO_DIR ${REPOS_DIR}/releng
+ENV ODL_TEST_REPO_DIR ${REPOS_DIR}/odl_test
+RUN git clone https://gerrit.opnfv.org/gerrit/cperf ${CPERF_REPO_DIR}
+RUN git clone https://gerrit.opnfv.org/gerrit/releng ${RELENG_REPO_DIR}
+RUN git clone https://git.opendaylight.org/gerrit/p/integration/test ${ODL_TEST_REPO_DIR}
+
+# Clone and build CBench
+ENV OF_DIR ${REPOS_DIR}/openflow
+ENV OFLOPS_DIR ${REPOS_DIR}/oflops
+RUN git clone git://gitosis.stanford.edu/openflow.git ${OF_DIR}
+RUN git clone https://github.com/andi-bigswitch/oflops.git ${OFLOPS_DIR}
+RUN cd ${OFLOPS_DIR} && ./boot.sh && ./configure --with-openflow-src-dir=${OF_DIR} && make && make install