shipyard/tools/shipyard_image_run.sh

51 lines
1.6 KiB
Bash
Executable File

#!/bin/bash
# Copyright 2017 AT&T Intellectual Property. All other rights reserved.
#
# 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.
#
set -x
IMAGE=$1
USE_PROXY=${USE_PROXY:-false}
# Collect necessary files and run shipyard image in docker
mkdir -p build/.tmprun/etc
cp $PWD/etc/shipyard/api-paste.ini build/.tmprun/etc
cp $PWD/tools/resources/shipyard.conf build/.tmprun/etc
docker run \
-v $PWD/build/.tmprun/etc:/etc/shipyard \
-p 9000:9000 \
--name shipyard_test ${IMAGE} \
&
sleep 5
RESULT="$(curl -i 'http://127.0.0.1:9000/versions' --noproxy '*' | tr '\r' '\n' | head -1)"
if [ "${USE_PROXY}" == "true" ]; then
CLI_RESULT="$(docker run -t --rm --net=host --env HTTP_PROXY="${PROXY}" --env HTTPS_PROXY="${PROXY}" ${IMAGE} help | tr '\r' '\n' | head -1)"
else
CLI_RESULT="$(docker run -t --rm --net=host ${IMAGE} help | tr '\r' '\n' | head -1)"
fi
docker stop shipyard_test
docker rm shipyard_test
rm -r build/.tmprun
GOOD="HTTP/1.1 200 OK"
CLI_GOOD="THE SHIPYARD COMMAND"
if [[ ${RESULT} == ${GOOD} && ${CLI_RESULT} == ${CLI_GOOD} ]]; then
exit 0
else
exit 1
fi