TT#2723 Add initial Dockerfile for nmp tests

* using release-trunk-jessie for nodejs backport

Change-Id: I1448740423c12db48190667c29652a813d40bdba
changes/50/8850/5
Alexander Lutay 9 years ago committed by Victor Seva
parent c31a9d00a9
commit f2b7be7527

@ -0,0 +1,37 @@
# DOCKER_NAME=janus-client-jessie
FROM docker.mgm.sipwise.com/sipwise-jessie:latest
# Important! Update this no-op ENV variable when this Dockerfile
# is updated with the current date. It will force refresh of all
# of the base images and things like `apt-get update` won't be using
# old cached versions when the Dockerfile is built.
ENV REFRESHED_AT 2016-10-14
# TODO - the release-trunk-jessie is too dynamic yet, though required build deps
RUN echo "deb https://deb.sipwise.com/autobuild/ release-trunk-jessie main" >>/etc/apt/sources.list
RUN apt-get update
RUN apt-get install --assume-yes \
curl \
nodejs \
nodejs-legacy \
npm
RUN echo "cd /code && ./t/testrunner" >/root/.bash_history
WORKDIR /code
################################################################################
# Instructions for usage
# ----------------------
# When you want to build the base image from scratch (jump to the next section if you don't want to build yourself!):
# % docker build --tag="janus-client-jessie" .
# % docker run --rm -i -t -v $(pwd)/..:/code:ro janus-client-jessie:latest bash
#
# Use the existing docker image:
# % docker pull docker.mgm.sipwise.com/janus-client-jessie
# % docker run --rm -i -t -v $(pwd)/..:/code:ro docker.mgm.sipwise.com/janus-client-jessie:latest bash
#
# Inside docker:
# cd /code && ./t/testrunner
################################################################################

@ -0,0 +1,40 @@
#!/bin/bash
if ! [ -f /.dockerenv ] && ! grep -q 'devices:/docker' /proc/1/cgroup ; then
echo "Not running inside docker, exiting to avoid data damage." >&2
exit 1
fi
set -e
set -u
echo "JFYI, usage: $0 [<output_directory>] [junit]"
OUTPUT_DIRECTORY="${1:-/results/}"
mkdir -p "${OUTPUT_DIRECTORY}"
results="${OUTPUT_DIRECTORY}/test_results.tap"
echo "1..1" > "${results}"
echo "ok 1 - All OK" >> "${results}"
code_ro="/code"
code_rw="/code_rw"
# We need to make a copy here becuase in nature of npm is
# to use current folder for dependencies installation.
# It is dangerous as sources should not be chnaged during the test.
mkdir -p "${code_rw}"
cp -a "${code_ro}"/* "${code_rw}"
cd "${code_rw}"
if ! npm install ; then
echo "1..1" > "${results}"
echo "not ok 1 - 'nmp install' failed" >> "${results}"
exit 1
fi
if ! npm test ; then
echo "1..1" > "${results}"
echo "not ok 1 - 'nmp test' failed" >> "${results}"
exit 1
fi
Loading…
Cancel
Save