Add Dockerfile and bootstrap scripts to run rubbos 25/6925/1
authorQiLiang <liangqi1@huawei.com>
Sat, 16 Jan 2016 01:14:18 +0000 (01:14 +0000)
committerJun Li <matthew.lijun@huawei.com>
Sat, 16 Jan 2016 02:30:04 +0000 (02:30 +0000)
JIRA: -

Change-Id: Ifc14193ee2d6f0a1f9f5b67a2043ed6640a8b928
Signed-off-by: QiLiang <liangqi1@huawei.com>
(cherry picked from commit 2942272878f99b7a7894f175285ebfeeac788da9)

ci/docker/bottlenecks-ci/Dockerfile [new file with mode: 0644]
ci/rubbos_docker_run.sh [new file with mode: 0755]
ci/run.sh
utils/infra_setup/heat_template/HOT_create_instance.sh

diff --git a/ci/docker/bottlenecks-ci/Dockerfile b/ci/docker/bottlenecks-ci/Dockerfile
new file mode 100644 (file)
index 0000000..7e54388
--- /dev/null
@@ -0,0 +1,43 @@
+##############################################################################
+# Copyright (c) 2015 Huawei Technologies Co.,Ltd and others.
+#
+# 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 ubuntu:14.04
+MAINTAINER Qi Liang <liangqi1@huawei.com>
+
+LABEL image=opnfv/bottlenecks
+
+# GIT repo directory
+ENV REPOS_DIR /home/opnfv/repos
+
+# Bottlenecks repo
+ENV BOTTLENECKS_REPO_DIR ${REPOS_DIR}/bottlenecks
+ENV RELENG_REPO_DIR ${REPOS_DIR}/releng
+
+RUN apt-get update && apt-get install -y \
+    curl \
+    wget \
+    git \
+    sshpass \
+    python \
+    python-glanceclient \
+    python-heatclient \
+    python-keystoneclient \
+    python-neutronclient \
+    python-novaclient
+
+RUN apt-get -y autoremove && \
+    apt-get clean
+
+RUN mkdir -p ${REPOS_DIR}
+
+RUN git config --global http.sslVerify false
+# TODO fix code clone handler
+#RUN git clone https://gerrit.opnfv.org/gerrit/bottlenecks ${BOTTLENECKS_REPO_DIR}
+#RUN git clone https://gerrit.opnfv.org/gerrit/releng ${RELENG_REPO_DIR}
+
diff --git a/ci/rubbos_docker_run.sh b/ci/rubbos_docker_run.sh
new file mode 100755 (executable)
index 0000000..d170c00
--- /dev/null
@@ -0,0 +1,27 @@
+#!/bin/bash
+
+set -ex
+
+docker build -t opnfv/bottlenecks ${BOTTLENECKS_TOP_DIR}/ci/docker/bottlenecks-ci/
+
+if [ x"${GERRIT_REFSPEC_DEBUG}" != x ]; then
+    opts="--privileged=true -it"
+else
+    opts="--privileged=true --rm"
+fi
+
+envs="-e INSTALLER_TYPE=${INSTALLER_TYPE} -e INSTALLER_IP=${INSTALLER_IP} -e NODE_NAME=${NODE_NAME} -e EXTERNAL_NETWORK=${EXTERNAL_NETWORK} -e BOTTLENECKS_BRANCH=${GIT_BRANCH##origin/} -e GERRIT_REFSPEC_DEBUG=${GERRIT_REFSPEC_DEBUG}"
+volumes="-v ${BOTTLENECKS_TOP_DIR}:${BOTTLENECKS_TOP_DIR}"
+create_instance=${BOTTLENECKS_TOP_DIR}/utils/infra_setup/heat_template/HOT_create_instance.sh
+
+echo ${envs} ${ops} ${volumes}
+
+# Run docker
+cmd="sudo docker run ${opts} ${envs} ${volumes} opnfv/bottlenecks ${create_instance}"
+echo "Bottlenecks: Running docker cmd: ${cmd}"
+${cmd}
+
+echo "Bottlenecks: done!"
+
+set +ex
+
index 07b25df..af9b46f 100755 (executable)
--- a/ci/run.sh
+++ b/ci/run.sh
@@ -5,13 +5,14 @@ set -ex
 BOTTLENECKS_REPO=https://gerrit.opnfv.org/gerrit/bottlenecks
 
 SCRIPT_DIR=`cd ${BASH_SOURCE[0]%/*};pwd`
-GERRIT_REFSPEC_DEBUG=$1
+export BOTTLENECKS_TOP_DIR=$SCRIPT_DIR/../
+export GERRIT_REFSPEC_DEBUG=$1
 
 if [ x"$GERRIT_REFSPEC_DEBUG" != x ]; then
     git fetch $BOTTLENECKS_REPO $GERRIT_REFSPEC_DEBUG && git checkout FETCH_HEAD
 fi
 
-$SCRIPT_DIR/../utils/infra_setup/heat_template/HOT_create_instance.sh $GERRIT_REFSPEC_DEBUG
+$SCRIPT_DIR/rubbos_docker_run.sh
 
 set +ex
 
index ec5b366..55198be 100755 (executable)
@@ -2,8 +2,6 @@
 
 set -x
 
-GERRIT_REFSPEC_DEBUG=$1
-
 bottlenecks_env_prepare()
 {
     echo "Bottlenecks env prepare start $(date)"