mirror of
https://github.com/logos-storage/logos-storage-nim-cs-dist-tests.git
synced 2026-01-05 23:13:08 +00:00
build(docker): add custom entrypoint for BiblioTech and TestNetRewarder (#121)
This commit is contained in:
parent
9bbc33a583
commit
a0a613f2e1
@ -9,9 +9,9 @@ FROM ${IMAGE} AS builder
|
|||||||
ARG APP_HOME
|
ARG APP_HOME
|
||||||
|
|
||||||
WORKDIR ${APP_HOME}
|
WORKDIR ${APP_HOME}
|
||||||
COPY ./Tools/BiblioTech ./Tools/BiblioTech
|
COPY Tools/BiblioTech Tools/BiblioTech
|
||||||
COPY ./Framework ./Framework
|
COPY Framework Framework
|
||||||
COPY ./ProjectPlugins ./ProjectPlugins
|
COPY ProjectPlugins ProjectPlugins
|
||||||
RUN dotnet restore Tools/BiblioTech
|
RUN dotnet restore Tools/BiblioTech
|
||||||
RUN dotnet publish Tools/BiblioTech -c Release -o out
|
RUN dotnet publish Tools/BiblioTech -c Release -o out
|
||||||
|
|
||||||
@ -23,4 +23,7 @@ ENV APP_HOME=${APP_HOME}
|
|||||||
|
|
||||||
WORKDIR ${APP_HOME}
|
WORKDIR ${APP_HOME}
|
||||||
COPY --from=builder ${APP_HOME}/out .
|
COPY --from=builder ${APP_HOME}/out .
|
||||||
CMD dotnet ${APP_HOME}/BiblioTech.dll
|
COPY --chmod=0755 Tools/BiblioTech/docker/docker-entrypoint.sh /
|
||||||
|
|
||||||
|
ENTRYPOINT ["/docker-entrypoint.sh"]
|
||||||
|
CMD ["bash", "-c", "dotnet ${APP_HOME}/BiblioTech.dll"]
|
||||||
|
|||||||
30
Tools/BiblioTech/docker/docker-entrypoint.sh
Normal file
30
Tools/BiblioTech/docker/docker-entrypoint.sh
Normal file
@ -0,0 +1,30 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
# Marketplace address from URL
|
||||||
|
if [[ -n "${MARKETPLACE_ADDRESS_FROM_URL}" ]]; then
|
||||||
|
WAIT=${MARKETPLACE_ADDRESS_FROM_URL_WAIT:-300}
|
||||||
|
SECONDS=0
|
||||||
|
SLEEP=1
|
||||||
|
# Run and retry if fail
|
||||||
|
while (( SECONDS < WAIT )); do
|
||||||
|
MARKETPLACE_ADDRESS=($(curl -s -f -m 5 "${MARKETPLACE_ADDRESS_FROM_URL}"))
|
||||||
|
# Check if exit code is 0 and returned value is not empty
|
||||||
|
if [[ $? -eq 0 && -n "${MARKETPLACE_ADDRESS}" ]]; then
|
||||||
|
export CODEXCONTRACTS_MARKETPLACEADDRESS="${MARKETPLACE_ADDRESS}"
|
||||||
|
break
|
||||||
|
else
|
||||||
|
# Sleep and check again
|
||||||
|
echo "Can't get Marketplace address from ${MARKETPLACE_ADDRESS_FROM_URL} - Retry in $SLEEP seconds / $((WAIT - SECONDS))"
|
||||||
|
sleep $SLEEP
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Show
|
||||||
|
echo -e "\nRun parameters:"
|
||||||
|
vars=$(env | grep "CODEX" | grep -v -e "[0-9]_SERVICE_" -e "[0-9]_NODEPORT_")
|
||||||
|
echo -e "${vars//CODEX/ - CODEX}"
|
||||||
|
echo -e " - $@\n"
|
||||||
|
|
||||||
|
# Run
|
||||||
|
exec "$@"
|
||||||
@ -9,9 +9,9 @@ FROM ${IMAGE} AS builder
|
|||||||
ARG APP_HOME
|
ARG APP_HOME
|
||||||
|
|
||||||
WORKDIR ${APP_HOME}
|
WORKDIR ${APP_HOME}
|
||||||
COPY ./Tools/TestNetRewarder ./Tools/TestNetRewarder
|
COPY Tools/TestNetRewarder Tools/TestNetRewarder
|
||||||
COPY ./Framework ./Framework
|
COPY Framework Framework
|
||||||
COPY ./ProjectPlugins ./ProjectPlugins
|
COPY ProjectPlugins ProjectPlugins
|
||||||
RUN dotnet restore Tools/TestNetRewarder
|
RUN dotnet restore Tools/TestNetRewarder
|
||||||
RUN dotnet publish Tools/TestNetRewarder -c Release -o out
|
RUN dotnet publish Tools/TestNetRewarder -c Release -o out
|
||||||
|
|
||||||
@ -23,4 +23,7 @@ ENV APP_HOME=${APP_HOME}
|
|||||||
|
|
||||||
WORKDIR ${APP_HOME}
|
WORKDIR ${APP_HOME}
|
||||||
COPY --from=builder ${APP_HOME}/out .
|
COPY --from=builder ${APP_HOME}/out .
|
||||||
CMD dotnet ${APP_HOME}/TestNetRewarder.dll
|
COPY --chmod=0755 Tools/TestNetRewarder/docker/docker-entrypoint.sh /
|
||||||
|
|
||||||
|
ENTRYPOINT ["/docker-entrypoint.sh"]
|
||||||
|
CMD ["bash", "-c", "dotnet ${APP_HOME}/TestNetRewarder.dll"]
|
||||||
|
|||||||
30
Tools/TestNetRewarder/docker/docker-entrypoint.sh
Normal file
30
Tools/TestNetRewarder/docker/docker-entrypoint.sh
Normal file
@ -0,0 +1,30 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
# Marketplace address from URL
|
||||||
|
if [[ -n "${MARKETPLACE_ADDRESS_FROM_URL}" ]]; then
|
||||||
|
WAIT=${MARKETPLACE_ADDRESS_FROM_URL_WAIT:-300}
|
||||||
|
SECONDS=0
|
||||||
|
SLEEP=1
|
||||||
|
# Run and retry if fail
|
||||||
|
while (( SECONDS < WAIT )); do
|
||||||
|
MARKETPLACE_ADDRESS=($(curl -s -f -m 5 "${MARKETPLACE_ADDRESS_FROM_URL}"))
|
||||||
|
# Check if exit code is 0 and returned value is not empty
|
||||||
|
if [[ $? -eq 0 && -n "${MARKETPLACE_ADDRESS}" ]]; then
|
||||||
|
export CODEXCONTRACTS_MARKETPLACEADDRESS="${MARKETPLACE_ADDRESS}"
|
||||||
|
break
|
||||||
|
else
|
||||||
|
# Sleep and check again
|
||||||
|
echo "Can't get Marketplace address from ${MARKETPLACE_ADDRESS_FROM_URL} - Retry in $SLEEP seconds / $((WAIT - SECONDS))"
|
||||||
|
sleep $SLEEP
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Show
|
||||||
|
echo -e "\nRun parameters:"
|
||||||
|
vars=$(env | grep "CODEX" | grep -v -e "[0-9]_SERVICE_" -e "[0-9]_NODEPORT_")
|
||||||
|
echo -e "${vars//CODEX/ - CODEX}"
|
||||||
|
echo -e " - $@\n"
|
||||||
|
|
||||||
|
# Run
|
||||||
|
exec "$@"
|
||||||
Loading…
x
Reference in New Issue
Block a user