# TODO - switch to sipwise internal one FROM debian:jessie # 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 2015-09-15 # mirrors behind httpredir randomly throw `Error reading from server. Remote end closed connection` # and we want to be independent from any external services anyway # TODO - the release-trunk-jessie is too dynamic yet, though required for some build/test dependencies RUN apt-get update && apt-get -y install apt-transport-https wget RUN echo "# generated by Dockerfile from ngcp-panel at $(date)\n\ deb https://debian.sipwise.com/debian jessie main\n\ deb https://debian.sipwise.com/debian jessie-updates main\n\ deb https://debian-security.sipwise.com/debian-security jessie-security main contrib non-free\n\ deb https://deb.sipwise.com/autobuild/ release-trunk-jessie main\n" > /etc/apt/sources.list RUN wget -O /etc/apt/trusted.gpg.d/sipwise.gpg https://deb.sipwise.com/spce/sipwise.gpg RUN apt-get update RUN apt-get install --assume-yes \ devscripts \ git \ libtap-formatter-junit-perl \ lsof \ net-tools \ vim-tiny \ wget RUN adduser --disabled-password --gecos="REST-API Testuser" testuser WORKDIR /tmp/ COPY control /tmp/ RUN mk-build-deps /tmp/control RUN dpkg --force-depends -i /tmp/ngcp-panel-tests-rest-api-build-deps_1.0_all.deb RUN apt-get --assume-yes -f install # for prove execution RUN wget http://deb.sipwise.com/files/libtest-pretty-perl_0.31-1~bpo80+1_all.deb RUN dpkg --force-depends -i libtest-pretty-perl_0.31-1~bpo80+1_all.deb RUN apt-get --assume-yes -f install # useful for debugging tests RUN apt-get -y install libdata-printer-perl RUN apt-get clean RUN echo "cd /code && ./t/api-rest/testrunner 1.2.3.4" > /home/testuser/.bash_history RUN echo "su - testuser" > /root/.bash_history WORKDIR /home/testuser ################################################################################ # 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="ngcp-panel-tests-rest-api-jessie" . # % docker run --rm -i -t -v $(pwd)/../..:/code:rw ngcp-panel-tests-rest-api-jessie:latest bash # # Use the existing docker image: # % docker pull docker1.mgm.sipwise.com/ngcp-panel-tests-rest-api-jessie # % docker run --rm -i -t -v $(pwd)/../..:/code:rw docker1.mgm.sipwise.com/ngcp-panel-tests-rest-api-jessie:latest bash # # Inside docker: # su - testuser # cd /code && ./t/api-rest/testrunner $IP_OF_NGCP_SYSTEM # IP_OF_NGCP_SYSTEM can be e.g. IP of a `vagrant up ce-trunk` system (eth1) ################################################################################