Merge pull request #4 from madhura68/fix/host-compatibility

fix: cross-host compat — idempotent groupadd, quoted env, ignore tarballs
This commit is contained in:
Janpeter Visser 2026-05-03 20:29:31 +02:00 committed by GitHub
commit 135ae2c2a2
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
3 changed files with 19 additions and 6 deletions

View file

@ -54,7 +54,7 @@ GH_PRECLONE_REPOS=madhura68/Scrum4Me,madhura68/scrum4me-mcp
#
# Voorbeeld voor madhura68:
# GIT_AUTHOR_EMAIL=12345678+madhura68@users.noreply.github.com
GIT_AUTHOR_NAME=Scrum4Me Agent
GIT_AUTHOR_NAME="Scrum4Me Agent"
GIT_AUTHOR_EMAIL=vervang-mij@users.noreply.github.com
# ----- Scrum4Me database ------------------------------------

4
.gitignore vendored
View file

@ -20,3 +20,7 @@ Thumbs.db
# Node (mocht je lokaal iets uitproberen)
node_modules/
# Build artefacts (local docker save tarballs)
*.tar
*.tar.gz

View file

@ -67,11 +67,20 @@ RUN git clone --branch ${MCP_GIT_REF} --depth 1 \
# admin op QNAP. Pas aan via build-arg als je een andere UID gebruikt.
ARG AGENT_UID=1000
ARG AGENT_GID=1000
RUN groupadd -g ${AGENT_GID} agent \
&& useradd -u ${AGENT_UID} -g ${AGENT_GID} -m -s /bin/bash agent \
&& mkdir -p /var/cache/repos /var/cache/npm /var/log/agent /var/run/agent \
&& mkdir -p /home/agent/Projects /home/agent/.scrum4me-agent-worktrees \
&& chown -R agent:agent /var/cache /var/log/agent /var/run/agent /home/agent
RUN set -eux; \
if getent group "${AGENT_GID}" >/dev/null; then \
groupmod -n agent "$(getent group "${AGENT_GID}" | cut -d: -f1)"; \
else \
groupadd -g "${AGENT_GID}" agent; \
fi; \
if id -u "${AGENT_UID}" >/dev/null 2>&1; then \
usermod -l agent -d /home/agent -m -g "${AGENT_GID}" -s /bin/bash "$(id -nu "${AGENT_UID}")"; \
else \
useradd -u "${AGENT_UID}" -g "${AGENT_GID}" -m -s /bin/bash agent; \
fi; \
mkdir -p /var/cache/repos /var/cache/npm /var/log/agent /var/run/agent; \
mkdir -p /home/agent/Projects /home/agent/.scrum4me-agent-worktrees; \
chown -R agent:agent /var/cache /var/log/agent /var/run/agent /home/agent
# ----- runner files ------------------------------------------------------
WORKDIR /opt/agent