1 FROM maven:3.6.3-jdk-11-slim AS builder
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/.
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"
27 ENV DEVICE_VERSION=1.2.1
28 ENV DEVICE_FILE=1.2.1/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" {} +
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_FILE