Commit 2787405c authored by Andreas Liebig's avatar Andreas Liebig
Browse files

Merge branch 'master' of git@forge.etsi.org:emergency-communications/NG112.git

parents b193b534 7c8a7ed2
Loading
Loading
Loading
Loading

.jenkins.sh

100644 → 100755
+0 −0

File mode changed from 100644 to 100755.

+71 −50
Original line number Diff line number Diff line
# Copyright ETSI 2018
# See: https://forge.etsi.org/etsi-forge-copyright-statement.txt
FROM ubuntu:18.04

FROM gcc:latest

MAINTAINER STF549
MAINTAINER ETSI STF 549

LABEL description="STF549 Docker Image"

ENV TERM=linux
ENV TERM=xterm
ENV HOSTNAME docker-titan-STF549

ARG USERNAME
ARG PASSWORD
RUN DEBIAN_FRONTEND=noninteractive apt-get update \
    && DEBIAN_FRONTEND=noninteractive apt-get install software-properties-common -y \
    && DEBIAN_FRONTEND=noninteractive add-apt-repository ppa:linuxuprising/java -y

RUN echo "docker-titan" > /etc/hostname \
    && DEBIAN_FRONTEND=noninteractive apt-get update \
    && DEBIAN_FRONTEND=noninteractive apt-get dist-upgrade -y \
    && DEBIAN_FRONTEND=noninteractive apt-get autoremove -y \
    && DEBIAN_FRONTEND=noninteractive apt-get autoclean -y \
    && DEBIAN_FRONTEND=noninteractive apt-get install -y \
RUN DEBIAN_FRONTEND=noninteractive apt-get update \
    && DEBIAN_FRONTEND=noninteractive apt-get --allow-unauthenticated install -y \
      autoconf \
      bison \
      build-essential \
      cmake \
      curl \
      dos2unix \
      doxygen \
      emacs \
      expect \
      flex \
      graphviz \
      g++-8 \
      gcc-8 \
      gdb \
      git-core \
      gnutls-bin \
      graphviz \
      inetutils-ping \
      libglib2.0-dev \
      libpcap-dev \
      libgcrypt-dev \
@@ -43,8 +41,10 @@ RUN echo "docker-titan" > /etc/hostname \
      libxml2-dev \
      lsof \
      ntp \
      openssh-server \
      pkg-config \
      qt5-default \
      qttools5-dev \
      qtmultimedia5-dev \
      libqt5svg5-dev \
      subversion \
@@ -53,48 +53,69 @@ RUN echo "docker-titan" > /etc/hostname \
      tcpdump \
      texlive-font-utils \
      tshark \
      tzdata \
      valgrind \
      vim \
      vsftpd \
      xutils-dev \ 
      tree \
      unzip \
      wget \
    && DEBIAN_FRONTEND=noninteractive apt-get autoremove -y \
    && DEBIAN_FRONTEND=noninteractive apt-get autoclean -y \
    && useradd --create-home --shell /bin/bash stf549 \
    && echo "stf549:stf549" | chpasswd \
    && adduser stf549 sudo \
    && su - stf549 \
    && whoami \
    && cd /home/stf549 \
    && mkdir -p bin lib include dev tmp frameworks docs \
    && ls -ltr \
    && cd /home/stf549/dev \
    && git clone http://forge.etsi.org/gitlab/emergency-communications/NG112.git STF549_Ng112 \
    && cd /home/stf549/dev/STF549_Ng112/ttcn \
        && svn co --username $USERNAME --password $PASSWORD --non-interactive https://oldforge.etsi.org/svn/LibCommon/tags/v1.4.0/ttcn \
        && svn co --username $USERNAME --password $PASSWORD --non-interactive https://oldforge.etsi.org/svn/LibSip/trunk \
    && cd /home/stf549/dev/STF549_Ng112/scripts \
    && chmod 775 *.bash devenv.bash.ubuntu \
    && cd /home/stf549 \
    && ln -sf /home/stf549/dev/STF549_Ng112/scripts/devenv.bash.ubuntu /home/stf549/devenv.bash \
    && export HOME=/home/stf549 \
    && . /home/stf549/devenv.bash \
    && echo "" >> /home/stf549/.bashrc \
    && echo ". ./devenv.bash" >> /home/stf549/.bashrc \
    && echo "" >> /home/stf549/.bashrc \
    && cd /home/stf549/dev/STF549_Ng112/scripts \
    && ./build_titan.bash \
    && cd /home/stf549 \
    && . /home/stf549/devenv.bash \
    && cd /home/stf549/dev/STF549_Ng112/scripts \
    && ./update_emcom_project.bash \
    && ls -ltr /home/stf549/dev/STF549_Ng112 \
    && cd /home/stf549/dev/STF549_Ng112/etsi_emcom/src/AtsNg112/objs \
    && ../bin/ng112.bash
      xsltproc \
    && DEBIAN_FRONTEND=noninteractive apt-get autoremove --purge -y \
    && DEBIAN_FRONTEND=noninteractive apt-get autoclean \
    && rm -rf /var/lib/apt/lists/*

RUN echo "docker-titan-STF549" > /etc/hostname \
    && echo "root:etsi" | chpasswd 

RUN useradd --create-home --shell /bin/bash --groups sudo etsi \
    && echo "etsi:etsi" | chpasswd \
    && adduser etsi sudo 

RUN  cd /home/etsi \
    && echo "" >> /home/etsi/.bashrc \
    && echo "export HOME=/home/etsi" >> /home/etsi/.bashrc \
    && echo "export LD_LIBRARY_PATH=/home/etsi/dev/etsi_emcom/lib:$LD_LIBRARY_PATH" >> /home/etsi/.bashrc \
    && echo "export PATH=/home/etsi/bin:$PATH" >> /home/etsi/.bashrc \
    && echo "cd /home/etsi" >> /home/etsi/.bashrc \
    && echo ". ./devenv.bash" >> /home/etsi/.bashrc \
    && . /home/etsi/.bashrc \
    && mkdir -p bin lib include tmp frameworks docs man dev \
    && chown etsi:etsi bin lib include tmp frameworks docs man dev \
    && echo "etsi ALL=(ALL) NOPASSWD:ALL" >> /etc/sudoers

COPY [^.]* /home/etsi/dev/STF549_Ng112/
RUN chown -R etsi /home/etsi/dev/STF549_Ng112/ && cd /home/etsi/dev/STF549_Ng112 && git checkout TTCN_3_Developments

USER etsi
 
RUN cd /home/etsi/frameworks \
    && git clone https://github.com/YannGarcia/osip.git ./osip \
    && cd osip \
    && ./autogen.sh \
    && ./configure --prefix=/home/etsi \
    && make && make install

RUN cd /home/etsi/frameworks \
    && wget -q 'http://ftp.halifax.rwth-aachen.de/eclipse//technology/epp/downloads/release/oxygen/2/eclipse-cpp-oxygen-2-linux-gtk-x86_64.tar.gz' -Oeclipse-cpp-oxygen-2-linux-gtk-x86_64.tar.gz \
    && tar -zxvf ./eclipse-cpp-oxygen-2-linux-gtk-x86_64.tar.gz \
    && rm -f ./eclipse-cpp-oxygen-2-linux-gtk-x86_64.tar.gz

CMD ["/bin/bash", "-c", "su - stf549"]
RUN cd /home/etsi/dev/STF549_Ng112 \
    && ls \
    && cd /home/etsi/dev/STF549_Ng112/ttcn \
    && svn co --username svnusers --password svnusers --non-interactive --trust-server-cert https://oldforge.etsi.org/svn/LibSip/trunk ./LibSip \
    && svn co --username svnusers --password svnusers --non-interactive --trust-server-cert https://oldforge.etsi.org/svn/LibCommon/trunk/ttcn ./LibCommon \
    && svn co --username svnusers --password svnusers --non-interactive --trust-server-cert https://oldforge.etsi.org/svn/LibIts/branches/STF525/ttcn/Http ./LibHttp \
    && cd /home/etsi/dev/STF549_Ng112/scripts \
    && chmod 775 *.bash devenv.bash.* \
    && cd /home/etsi \
    && ln -sf /home/etsi/dev/STF549_Ng112/scripts/devenv.bash.ubuntu /home/etsi/devenv.bash \
    && ls -ltr /home/etsi \
    && export HOME=/home/etsi \
    && . /home/etsi/devenv.bash \
    && cd /home/etsi/dev/STF549_Ng112/scripts \
    && ./build_titan.bash

# That's all Floks

docker/build-container.sh

100644 → 100755
+2 −6
Original line number Diff line number Diff line
@@ -2,17 +2,13 @@
# Copyright ETSI 2018
# See: https://forge.etsi.org/etsi-forge-copyright-statement.txt

set -e
#set -e
#set -vx

USERNAME=<username>
PASSWORD=<password>

DOCKER_FILE=./Dockerfile
if [ -f ${DOCKER_FILE} ]
then
    docker rmi -f $(docker images -q)
    docker build --tag stf549_ng112 --force-rm --build-arg USERNAME=${USERNAME} --build-arg PASSWORD=${PASSWORD} .
    docker build --tag stf549_ng112 . # --force-rm
    if [ "$?" != "0" ]
    then
        echo "Docker build failed: $?"

docker/run-container.sh

100644 → 100755
+6 −1
Original line number Diff line number Diff line
@@ -5,7 +5,12 @@
#set -e
#set -vx

docker run -it --rm stf549_ng112:latest /bin/bash
docker run stf549_ng112:latest "/bin/bash" \
	-c "source /home/etsi/devenv.bash \
		&& /home/etsi/dev/STF549_Ng112/scripts/update_emcom_project.bash \
	    && cd ${HOME}/dev/etsi_emcom/src/AtsNg112/objs \
	    && ../bin/ng112.bash \
	    && ../bin/run_all.bash"

# That's all Floks
exit 0

docker/validate-in-docker.sh

100644 → 100755
+0 −0

File mode changed from 100644 to 100755.

Loading