From 6a0c75d1702e70c67bf4e2141ce8d1c33fa23562 Mon Sep 17 00:00:00 2001 From: QiLiang Date: Sat, 16 Jan 2016 01:14:18 +0000 Subject: [PATCH 1/1] Add Dockerfile and bootstrap scripts to run rubbos JIRA: - Change-Id: Ifc14193ee2d6f0a1f9f5b67a2043ed6640a8b928 Signed-off-by: QiLiang (cherry picked from commit 2942272878f99b7a7894f175285ebfeeac788da9) --- ci/docker/bottlenecks-ci/Dockerfile | 43 ++++++++++++++++++++++ ci/rubbos_docker_run.sh | 27 ++++++++++++++ ci/run.sh | 5 ++- .../heat_template/HOT_create_instance.sh | 2 - 4 files changed, 73 insertions(+), 4 deletions(-) create mode 100644 ci/docker/bottlenecks-ci/Dockerfile create mode 100755 ci/rubbos_docker_run.sh diff --git a/ci/docker/bottlenecks-ci/Dockerfile b/ci/docker/bottlenecks-ci/Dockerfile new file mode 100644 index 00000000..7e543886 --- /dev/null +++ b/ci/docker/bottlenecks-ci/Dockerfile @@ -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 + +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 index 00000000..d170c00d --- /dev/null +++ b/ci/rubbos_docker_run.sh @@ -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 + diff --git a/ci/run.sh b/ci/run.sh index 07b25dff..af9b46fb 100755 --- 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 diff --git a/utils/infra_setup/heat_template/HOT_create_instance.sh b/utils/infra_setup/heat_template/HOT_create_instance.sh index ec5b3666..55198beb 100755 --- a/utils/infra_setup/heat_template/HOT_create_instance.sh +++ b/utils/infra_setup/heat_template/HOT_create_instance.sh @@ -2,8 +2,6 @@ set -x -GERRIT_REFSPEC_DEBUG=$1 - bottlenecks_env_prepare() { echo "Bottlenecks env prepare start $(date)" -- 2.16.6