Files
computer-playbook/scripts/docker/entry.sh
T
kevinveenbirkenbachandClaude Opus 4.7 848fd08308 fix(docker): drop pkgmgr from dev container, install in-tree via make
`pkgmgr install infinito` started failing in CI after the floating
`pkgmgr-<distro>:stable` base image was rebuilt with kpmx 1.15.x, which
no longer registers the `infinito` identifier in its default config:

    Identifier 'infinito' did not match any repository in config.

The error string then flowed through `pkgmgr path infinito` in
entry.sh and was treated as the install directory, leading to
`make install` in a bogus cwd. This broke test-development,
test-install-pkgmgr, and build-ci-images for every distro.

The pkgmgr step in the dev Dockerfile is redundant — `make install`
runs `pip install -e .` which already produces the `infinito` CLI
shim via pyproject.toml's [project.scripts] entry. Drop the pkgmgr
calls, the rsync-into-INFINITO_PATH dance, and the `INFINITO_PATH`
variable; everything operates on `INFINITO_SRC_DIR` directly.

Production `pkgmgr install` paths (roles/sys-cli, roles/web-app-navigator,
.github/workflows/test-install-pkgmgr.yml) are intentionally untouched —
the test-install-pkgmgr job is what surfaces the upstream kpmx breakage.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-28 10:50:35 +02:00

49 lines
945 B
Bash
Executable File

#!/usr/bin/env bash
set -euo pipefail
echo "[docker-infinito] Starting infinito container"
if [[ "${1:-}" == "/sbin/init" ]]; then
echo "[docker-infinito] Starting systemd as PID 1..."
exec /sbin/init
fi
: "${INFINITO_SRC_DIR:?INFINITO_SRC_DIR must be set by the container environment}"
export INFINITO_SRC_DIR
run_local_build() {
echo "[docker-infinito] Build enabled (--compile)"
cd "${INFINITO_SRC_DIR}"
echo "[docker-infinito] Reinstall via 'make install' in ${INFINITO_SRC_DIR}..."
make install
echo "[docker-infinito] Installed:"
infinito --version || true
}
while [[ $# -gt 0 ]]; do
case "$1" in
--compile)
shift
run_local_build
;;
--compile-silent)
shift
run_local_build >/dev/null 2>&1
;;
--)
shift
break
;;
*)
break
;;
esac
done
if [[ $# -eq 0 ]]; then
echo "[docker-infinito] No arguments provided. Showing infinito help..."
exec infinito --help
else
cd "${INFINITO_SRC_DIR}"
exec "$@"
fi