Honeynode Docker refactoring for Java11
[transportpce.git] / tests / Xtesting / DockerSims / Dockerfile
1 FROM maven:3.6.3-jdk-11-slim AS builder
2 ARG GIT_REF=master
3 RUN apt-get update \
4     && apt-get -f -m install -y git \
5     && rm -rf /var/lib/apt/lists/* \
6     && mkdir /tmp/git_repo \
7     && git clone -b "$GIT_REF"  https://git.opendaylight.org/gerrit/transportpce /tmp/git_repo \
8     && cd /tmp/git_repo/tests \
9     && ./buildHoneynode.sh  \
10     && ./buildHoneynode.sh 2.2.1 \
11     && mkdir -p /tmp/honeynode/honeynode_1.2.1/config \
12     && mkdir -p /tmp/honeynode/honeynode_2.2.1/config \
13     && mv /tmp/git_repo/tests/honeynode/1.2.1/honeynode-distribution/target/honeynode-distribution-1.19.04-hc/honeynode-distribution-1.19.04/* /tmp/honeynode/honeynode_1.2.1/. \
14     && mv /tmp/git_repo/tests/honeynode/2.2.1/honeynode-distribution/target/honeynode-distribution-1.19.04-hc/honeynode-distribution-1.19.04/* /tmp/honeynode/honeynode_2.2.1/. \
15     && cp /tmp/git_repo/tests/sample_configs/openroadm/1.2.1/* /tmp/honeynode/honeynode_1.2.1/config/. \
16     && cp /tmp/git_repo/tests/sample_configs/openroadm/2.2.1/* /tmp/honeynode/honeynode_2.2.1/config/.
17
18
19
20
21 FROM adoptopenjdk/openjdk11:alpine-jre
22 LABEL Name="OpenROADM compliant ROADM and XPDR NETCONF simulators"
23 LABEL Description="Simulators for Openroadm devices based on honeycomb project"
24 LABEL Maintainer="transportpce-dev@lists.opendaylight.org"
25 LABEL Url="https://git.opendaylight.org/gerrit/transportpce"
26
27 ENV DEVICE_VERSION=1.2.1
28 ENV DEVICE_FILE=oper-ROADMA-full.xml
29 RUN addgroup gsimulator && adduser -D usimulator -G gsimulator -u 100001\
30   && mkdir -p /opt/application/simulators
31 COPY --chown=usimulator:gsimulator --from=builder /tmp/honeynode/ /opt/application/simulators/honeynode
32 COPY --chown=usimulator:gsimulator --from=builder /tmp/git_repo/tests/sample_configs/openroadm/ /opt/application/simulators/honeynode/config
33 RUN find /opt/application/simulators -name "honeycomb-tpce" -exec  sed -i "/reflectwarn.sh/d" {} +
34 USER usimulator
35 WORKDIR /opt/application/simulators/honeynode
36 HEALTHCHECK CMD wget --header "Authorization: Basic `echo -n "${USER}:${PASSWORD}" | base64`"  http://localhost:8130/restconf/ -S -O -
37 EXPOSE 1830/tcp 8130/tcp
38 CMD /opt/application/simulators/honeynode/honeynode_$DEVICE_VERSION/honeycomb-tpce 1830 /opt/application/simulators/honeynode/config/$DEVICE_VERSION/$DEVICE_FILE