diff options
Diffstat (limited to 'tools')
-rw-r--r-- | tools/setup_osc.sh | 66 |
1 files changed, 66 insertions, 0 deletions
diff --git a/tools/setup_osc.sh b/tools/setup_osc.sh new file mode 100644 index 0000000..4bb2324 --- /dev/null +++ b/tools/setup_osc.sh @@ -0,0 +1,66 @@ +#!/bin/bash +# Copyright 2017 AT&T Intellectual Property, Inc +# +# 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. +# +# What this is: Script to install OpenStack clients on host +# +# How to use: +# $ source setup_osc.sh [branch] +# branch: version to use e.g. "ocata" (default: master) + +trap 'fail' ERR + +function fail() { + log $1 + exit 1 +} + +function log() { + f=$(caller 0 | awk '{print $2}') + l=$(caller 0 | awk '{print $1}') + echo; echo "$f:$l ($(date)) $1" +} + +install_client () { + log "Install $1" + git clone https://github.com/openstack/$1.git + cd $1 + if [ $# -eq 2 ]; then git checkout $2; fi + pip install . + cd .. +} + +dist=`grep DISTRIB_ID /etc/*-release | awk -F '=' '{print $2}'` +if [ "$dist" == "Ubuntu" ]; then + sudo apt-get update + sudo apt-get install -y gcc python-pip python-dev git +else + sudo yum update -y + sudo yum install -y gcc python-pip python-devel git +fi + +sudo pip install --upgrade pip virtualenv setuptools pbr tox + +echo "Create virtualenv" +virtualenv ~/venv +source ~/venv/bin/activate +# to stop virtualenv, enter the command "deactivate" + +log "Install OpenStack clients" +if [[ -d ~/venv/git ]]; then rm -rf ~/venv/git; fi +mkdir ~/venv/git +cd ~/venv/git +install_client python-openstackclient $1 +install_client python-heatclient $1 +install_client python-neutronclient $1 |