From 59045d3ddf94f4edd5e6fa2c01c253354e5cfddc Mon Sep 17 00:00:00 2001 From: Casey LP Date: Sun, 29 Jan 2023 00:12:45 +0000 Subject: [PATCH] Only adjust configs if none rolled in. --- opensim/Dockerfile | 17 ++++++++--------- opensim/{ => defaults}/OpenSim.ini | 0 opensim/{ => defaults}/Regions.ini | 0 opensim/{ => defaults}/StandaloneCommon.ini | 0 opensim/docker-entrypoint.sh | 17 +++++++++++++++++ 5 files changed, 25 insertions(+), 9 deletions(-) rename opensim/{ => defaults}/OpenSim.ini (100%) rename opensim/{ => defaults}/Regions.ini (100%) rename opensim/{ => defaults}/StandaloneCommon.ini (100%) diff --git a/opensim/Dockerfile b/opensim/Dockerfile index 0648af6..0f8715a 100644 --- a/opensim/Dockerfile +++ b/opensim/Dockerfile @@ -5,17 +5,16 @@ LABEL org.opencontainers.image.authors="code@soupbowl.io" LABEL org.opencontainers.image.source="https://github.com/soup-bowl/opensimulator-docker" LABEL org.opencontainers.image.licenses="MIT" -RUN curl -o /bin/wait-for-it https://raw.githubusercontent.com/vishnubob/wait-for-it/master/wait-for-it.sh \ - && chmod +x /bin/wait-for-it - RUN apt-get update && apt-get install -y screen -RUN mkdir /opt/opensim-tmp && curl http://opensimulator.org/dist/opensim-0.9.2.1.tar.gz | tar xzf - -C /opt/opensim-tmp -RUN mkdir /opt/opensim && mv /opt/opensim-tmp/opensim*/* /opt/opensim +RUN mkdir /opt/opensim-tmp \ + && curl http://opensimulator.org/dist/opensim-0.9.2.1.tar.gz | tar xzf - -C /opt/opensim-tmp \ + && rm /opt/opensim-tmp/opensim*/bin/OpenSim.ini \ + && rm /opt/opensim-tmp/opensim*/bin/config-include/StandaloneCommon.ini \ + && mkdir /opt/opensim \ + && mv /opt/opensim-tmp/opensim*/* /opt/opensim -COPY Regions.ini /opt/opensim/bin/Regions/Regions.ini -COPY OpenSim.ini /opt/opensim/bin/OpenSim.ini -COPY StandaloneCommon.ini /opt/opensim/bin/config-include/StandaloneCommon.ini +COPY defaults /opt/opensim/bin/defaults EXPOSE 9000 @@ -24,4 +23,4 @@ WORKDIR /opt/opensim/bin COPY docker-entrypoint.sh /usr/local/bin/ ENTRYPOINT ["docker-entrypoint.sh"] -CMD [ "mono", "./OpenSim.exe" ] +CMD [ "mono", "./OpenSim.exe" ] diff --git a/opensim/OpenSim.ini b/opensim/defaults/OpenSim.ini similarity index 100% rename from opensim/OpenSim.ini rename to opensim/defaults/OpenSim.ini diff --git a/opensim/Regions.ini b/opensim/defaults/Regions.ini similarity index 100% rename from opensim/Regions.ini rename to opensim/defaults/Regions.ini diff --git a/opensim/StandaloneCommon.ini b/opensim/defaults/StandaloneCommon.ini similarity index 100% rename from opensim/StandaloneCommon.ini rename to opensim/defaults/StandaloneCommon.ini diff --git a/opensim/docker-entrypoint.sh b/opensim/docker-entrypoint.sh index 051cd37..3aac662 100644 --- a/opensim/docker-entrypoint.sh +++ b/opensim/docker-entrypoint.sh @@ -1,4 +1,21 @@ #!/usr/bin/env bash set -Eeuo pipefail +chown -R $(id -u):$(id -g) defaults + +if [ ! -e OpenSim.ini ]; then + echo >&2 "INFO: No OpenSim configuration found, pulling one together." + cp defaults/OpenSim.ini OpenSim.ini +fi + +if [ ! -e config-include/StandaloneCommon.ini ]; then + echo >&2 "INFO: No Grid Common configuration found, pulling one together." + cp defaults/StandaloneCommon.ini config-include/StandaloneCommon.ini +fi + +if [ `find Regions -maxdepth 1 -name '*.ini' | wc -l` -eq 0 ]; then + echo >&2 "INFO: No region details found, pulling one together." + cp defaults/Regions.ini Regions/Regions.ini +fi + exec "$@"