summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--build/clearwater-docker.sh63
-rw-r--r--build/clearwater-live-test.sh76
-rw-r--r--tests/k8s-cloudify-clearwater.sh (renamed from tools/cloudify/k8s-cloudify-clearwater.sh)13
3 files changed, 118 insertions, 34 deletions
diff --git a/build/clearwater-docker.sh b/build/clearwater-docker.sh
index 9fa4bde..8e84618 100644
--- a/build/clearwater-docker.sh
+++ b/build/clearwater-docker.sh
@@ -42,36 +42,6 @@ function log() {
echo "$f:$l ($(date)) $1"
}
-function build() {
- log "Starting clearwater-docker build process"
- if [[ -d /tmp/clearwater-docker ]]; then rm -rf /tmp/clearwater-docker; fi
-
- log "Cloning clearwater-docker repo to /tmp/clearwater-docker"
- git clone https://github.com/Metaswitch/clearwater-docker.git \
- /tmp/clearwater-docker
-
- log "Building the images"
- cd /tmp/clearwater-docker
- vnfc="base astaire cassandra chronos bono ellis homer homestead homestead-prov ralf sprout"
- for i in $vnfc ; do
- log "Building $i"
- sudo docker build $cache -t clearwater/$i $i
- done
-}
-
-function push() {
- log "push images to docker hub"
- for i in $vnfc ; do
- log "Tagging the image as $hub_user/clearwater-$i:$tag"
- id=$(sudo docker images | grep clearwater/$i | awk '{print $3}')
- id=$(echo $id | cut -d ' ' -f 1)
- sudo docker tag $id $hub_user/clearwater-$i:$tag
-
- log "Pushing the image to dockerhub as $hub_user/clearwater-$i"
- sudo docker push $hub_user/clearwater-$i
- done
-}
-
hub_user=$1
tag=$2
cache="$3"
@@ -85,7 +55,36 @@ else
sudo yum update -y
fi
-build
-push
+if [[ "$cache" == "--no-cache" ]]; then
+ log "Purge old images"
+ images=$(sudo docker images clearwater-* | awk '/clearwater/ {print $1}')
+ for image in $images ; do sudo docker image rm $image; done
+fi
+
+log "Starting clearwater-docker build process"
+if [[ -d /tmp/clearwater-docker ]]; then rm -rf /tmp/clearwater-docker; fi
+
+log "Cloning clearwater-docker repo to /tmp/clearwater-docker"
+git clone --recursive https://github.com/Metaswitch/clearwater-docker.git \
+ /tmp/clearwater-docker
+
+log "Building the images"
+cd /tmp/clearwater-docker
+vnfc="base astaire cassandra chronos bono ellis homer homestead homestead-prov ralf sprout"
+for i in $vnfc ; do
+ log "Building $i"
+ if [[ "$i" != "base" ]]; then
+ log "Reference $hub_user/clearwater-base:$tag"
+ sed -i -- "s~FROM clearwater/base~FROM $hub_user/clearwater-base:$tag~" \
+ $i/Dockerfile
+ fi
+ sudo docker build $cache -t clearwater-$i $i
+ log "Tagging the image as $hub_user/clearwater-$i:$tag"
+ id=$(sudo docker images | grep "clearwater-$i " | awk '{print $3}')
+ id=$(echo $id | cut -d ' ' -f 1)
+ sudo docker tag $id $hub_user/clearwater-$i:$tag
+ log "Pushing the image to dockerhub as $hub_user/clearwater-$i"
+ sudo docker push $hub_user/clearwater-$i
+done
cd $WORK_DIR
diff --git a/build/clearwater-live-test.sh b/build/clearwater-live-test.sh
new file mode 100644
index 0000000..a4db776
--- /dev/null
+++ b/build/clearwater-live-test.sh
@@ -0,0 +1,76 @@
+#!/bin/bash
+# Copyright 2018 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: Build script for the github clearwater-live-test project
+#. https://github.com/Metaswitch/clearwater-live-test
+#.
+#. Prerequisites:
+#. Docker hub user logged on so images can be pushed to docker hub, i.e. via
+#. $ docker login -u <hub_user>
+#.
+#. Usage:
+#. bash clearwater-live-test.sh <hub_user> <tag> [--no-cache]
+#. hub_user: username for dockerhub
+#. tag: tag to apply to the built images
+#. --no-cache: build clean
+#.
+#. Status: this is a work in progress, under test.
+
+trap 'fail' ERR
+
+fail() {
+ log "Build Failed!"
+ exit 1
+}
+
+function log() {
+ f=$(caller 0 | awk '{print $2}')
+ l=$(caller 0 | awk '{print $1}')
+ echo ""
+ echo "$f:$l ($(date)) $1"
+}
+
+hub_user=$1
+tag=$2
+cache="$3"
+dist=`grep DISTRIB_ID /etc/*-release | awk -F '=' '{print $2}'`
+export WORK_DIR=$(pwd)
+
+log "Update package repos"
+if [ "$dist" == "Ubuntu" ]; then
+ sudo apt-get update
+else
+ sudo yum update -y
+fi
+
+log "Starting clearwater-live-test build process"
+if [[ -d /tmp/clearwater-live-test ]]; then rm -rf /tmp/clearwater-live-test; fi
+
+log "Cloning clearwater-live-test repo to /tmp/clearwater-live-test"
+git clone --recursive https://github.com/Metaswitch/clearwater-live-test.git \
+ /tmp/clearwater-live-test
+cd /tmp/clearwater-live-test
+
+log "Building the image"
+sudo docker build $cache -t clearwater/clearwater-live-test .
+
+log "Tagging the image as $hub_user/clearwater-live-test:$tag"
+id=$(sudo docker images | grep "clearwater-live-test " | awk '{print $3}')
+id=$(echo $id | cut -d ' ' -f 1)
+sudo docker tag $id $hub_user/clearwater-live-test:$tag
+
+log "Pushing the image to dockerhub as $hub_user/clearwater-live-test"
+sudo docker push $hub_user/clearwater-live-test
+
diff --git a/tools/cloudify/k8s-cloudify-clearwater.sh b/tests/k8s-cloudify-clearwater.sh
index 5ed19a3..ce7176e 100644
--- a/tools/cloudify/k8s-cloudify-clearwater.sh
+++ b/tests/k8s-cloudify-clearwater.sh
@@ -145,9 +145,18 @@ EOF
kubectl create -f ~/callsip.yaml
kubectl exec -d --namespace default callsip <<EOF
apt-get update
-apt-get install -y git netcat
-apt-get install dnsutils -y
+apt-get install -y git netcat dnsutils jq curl
nslookup bono.default.svc.cluster.local
+
+curl -o /tmp/json -v -H "NGV-Signup-Code: secret" -H "Content-Type: application/json" -d "{\"email\": \"bob@example.com\", \"password\": \"example\", \"full_name\": \"Bob\"}" -X POST "http://ellis.default.svc.cluster.local:80/accounts"
+
+curl -o /tmp/json -v -H "NGV-API-Key: secret" -X POST http://ellis.default.svc.cluster.local:80/accounts/bob@example.com/numbers/
+
+curl -o /tmp/json -v -H "Content-Type: application/json" -d "{\"email\": \"bob@example.com\", \"password\": \"example\"}" -X POST "http://ellis.default.svc.cluster.local:80/session"
+
+
+curl -H "NGV-API-Key: secret" -H "Content-Type: application/json" -d "{\"private_id\": \"sip:bob@example.com\", \"new_private_id\": \"true\"}" -X POST http://ellis.default.svc.cluster.local:80/accounts/bob@example.com/numbers/sip:1@example.com
+
git clone https://github.com/rundekugel/callSip.sh.git
while true ; do
bash /callSip.sh/src/callSip.sh -v 4 -p 5060 -d 10 -s bono.default.svc.cluster.local -c bob@example.com alice@example.com