sys-svc-compose already emits a transient build.extra_hosts override for every
service that has a build, driven by INFINITO_CACHE_PACKAGE_FRONTEND_IP and
gated on the frontend CA being present. Its host list held the three apt hosts
and not argos-net.com, so 3af579449b rebuilt the same thing inside the
libretranslate role.
test_no_ansible_env_lookups found it: a role may not pull a default.env key
with lookup('env', ...), because default.env is the dev and CI contract rather
than something deployment-agnostic Ansible should reach into. Adding the host
to the shared list removes the rule violation and the duplicate in one move,
and with it LIBRETRANSLATE_CACHE_FRONTEND_IP, LIBRETRANSLATE_BUILD_HOSTS and
the container_extra_hosts call.
The URL lint probes every URL the repository mentions and a bare GET on
argos-net.com answers 404, measured, while the model paths Nexus prefixes
underneath /v1/ answer 206. The base URL is what Nexus needs, so the line is
marked the way the deb.debian.org redirector two lines above it already is.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Docker Runner Scripts 🐳
Shell helpers that run inside the infinito runner container defined by
the top-level compose.yml. They cover container
lifecycle (entry, healthcheck) and integration with peer compose
services (e.g. the registry-cache pull-through proxy).
Scope 📋
- This directory MUST contain only scripts that execute inside the
infinitocontainer, either as the container entrypoint, as a DockerHEALTHCHECK, or as asystemdunit hook. - This directory MUST NOT host host-side tooling. Scripts that run on
the developer or CI host belong under their workflow-specific path
(for example
scripts/tests/,scripts/image/,scripts/meta/). - This directory MUST NOT host application logic that belongs to an Ansible role.
Bind-mounted scripts 🔗
A script that is bind-mounted from this directory into a fixed in-container path (see compose.yml) MUST keep its git executable bit, because Docker bind-mounts preserve host file permissions and the in-container caller (systemd, dockerd, the entrypoint) cannot recover from a non-executable mount.
When a new script is added with a bind-mount target, its purpose and
in-container target path SHOULD be documented at the call site (the
matching compose/<service>/ README, or compose.yml.md).
Distro portability 🌐
A script in this directory MUST work across every distro variant that
the runner image is built for (currently Debian, Ubuntu, Arch, Fedora,
CentOS). Tool availability differs across these variants, so a script
SHOULD branch on command -v <tool> rather than on distro IDs.