# Single source of truth for the project's static defaults. # # Every key here is copied verbatim into the generated `.env` by # `make dotenv` (which delegates to `python -m cli.meta.env`), together # with the dynamic runtime-resolved values (distro, GHA flags, # df/meminfo-derived sizes, sha256 secrets, repository owner, ...). # # Override at generation time by exporting the variable before running # `make dotenv` -- already-set env vars take precedence over the # defaults below. # # Convention: every key is preceded by a single-line `# ...` comment # that explains what the value is for. The generator preserves the # comments when materialising `.env`. # Where scripts/meta/resolve/apps.sh runs the meta-CLI: host | docker. INFINITO_APP_DISCOVERY_RUNNER=docker # Host interface(s) the compose stack binds published ports to. INFINITO_BIND_IP=127.0.0.1 # `1` builds the local image; `0` skips the build and pulls the published image (CI overrides via -e INFINITO_BUILD=0). INFINITO_BUILD=1 # `1` keeps BuildKit on (default); `0` forces the compose wrapper to use the legacy builder. INFINITO_BUILDKIT_ENABLED=1 # Bind-mounted apt sources.list fragment for the package-cache frontend. INFINITO_CACHE_PACKAGE_APT_LIST=./compose/package-cache/apt.list # Host directory holding the package-cache frontend CA materials. INFINITO_CACHE_PACKAGE_FRONTEND_CA_DIR=/var/cache/infinito/core/cache/package/frontend/ca # CA certificate file produced under INFINITO_CACHE_PACKAGE_FRONTEND_CA_DIR. INFINITO_CACHE_PACKAGE_FRONTEND_CA_FILE=/var/cache/infinito/core/cache/package/frontend/ca/ca.crt # Host directory holding the package-cache frontend TLS certificates. INFINITO_CACHE_PACKAGE_FRONTEND_CERTS_DIR=/var/cache/infinito/core/cache/package/frontend/certs # Init image used by the package-cache frontend cert-gen wrapper to run cert-gen.sh. INFINITO_CACHE_PACKAGE_FRONTEND_INIT_IMAGE=alpine:latest # Static IPv4 address the package-cache frontend takes on the docker bridge. INFINITO_CACHE_PACKAGE_FRONTEND_IP=172.30.0.4 # Host directory backing the Nexus 3 package-cache blobstore. INFINITO_CACHE_PACKAGE_HOST_PATH=/var/cache/infinito/core/cache/package/data # Cache freshness window (minutes) Nexus tolerates before re-validating upstream. 8640 = 6 days (below the 7-day Debian Valid-Until). INFINITO_CACHE_PACKAGE_MAX_AGE_MIN=8640 # Bind-mounted .npmrc fragment for the package-cache frontend. INFINITO_CACHE_PACKAGE_NPMRC=./compose/package-cache/npmrc # Bind-mounted pip.conf fragment for the package-cache frontend. INFINITO_CACHE_PACKAGE_PIP_CONF=./compose/package-cache/pip.conf # Host port the Nexus 3 package cache binds to on BIND_IP. INFINITO_CACHE_PACKAGE_PORT=8081 # Host directory holding the registry-cache CA materials. INFINITO_CACHE_REGISTRY_CA_HOST_PATH=/var/cache/infinito/core/cache/registry/ca # Host directory backing the docker registry-mirror cache (bind mount). INFINITO_CACHE_REGISTRY_HOST_PATH=/var/cache/infinito/core/cache/registry/mirror # Bind-mounted registry-cache proxy configuration consumed by the cache container. INFINITO_CACHE_REGISTRY_PROXY_CONF=./compose/registry-cache/proxy.conf # Compose service container name; generator overrides as infinito_nexus_${INFINITO_DISTRO}. INFINITO_CONTAINER=infinito_nexus_debian # `1` (default) keeps CA injection on in the container wrapper; `0` skips it. INFINITO_CONTAINER_CA_ENABLED=1 # cpus cap applied to the infinito container; 0 means "unlimited". INFINITO_CPUS=0 # Truthy enables debug behavior in the local deploy flows. INFINITO_DEBUG=true # Deployment matrix target: server | workstation | universal. INFINITO_DEPLOY_TYPE=server # Distro the build/test matrix is currently iterating over (generator may override). INFINITO_DISTRO=debian # Space-separated list of distros the build/test matrix iterates over. INFINITO_DISTROS="arch debian ubuntu fedora centos" # Domain the host-side DNS-fallback / dnsmasq config wires up (consumed by scripts/system/network/dns/). INFINITO_DNS_DOMAIN=infinito.example # Path to the hosts file the DNS-fallback installer writes the BEGIN/END block into. INFINITO_DNS_HOSTS_FILE=/etc/hosts # IPv4 of the CoreDNS sidecar inside INFINITO_SUBNET; CI/dev default, overridden in real deploys. INFINITO_DNS_IP=172.30.0.53 # Mount point inside the infinito container where INFINITO_DOCKER_VOLUME lands. INFINITO_DOCKER_MOUNT=/var/lib/docker # Docker volume backing /var/lib/docker; generator overrides to /mnt/docker on GHA. INFINITO_DOCKER_VOLUME=docker # Top-level project domain rendered into vhost/cert/test fixtures; CI/dev default, overridden in real deploys. INFINITO_DOMAIN=infinito.example # INFINITO_DOMAIN escaped for inclusion in regex patterns (literal `.`); keep in sync with INFINITO_DOMAIN. INFINITO_DOMAIN_RE=infinito\.example # IPv4 of the bridge gateway inside INFINITO_SUBNET. INFINITO_GATEWAY=172.30.0.1 # Prefix path under which GHCR mirror lookups search for cached images. INFINITO_GHCR_MIRROR_PREFIX=mirror # Image tag used to address the published infinito image (CI publishes 'latest' on push). INFINITO_IMAGE_TAG=latest # Repo-relative path to the Ansible vars file `infinito administration inventory provision --vars-file <...>` consumes. INFINITO_INVENTORY_VARS_FILE=inventories/development/default.yml # IPv4 of the infinito application container inside INFINITO_SUBNET; CI/dev default, overridden in real deploys. INFINITO_IP4=172.30.0.10 # IPv6 loopback / public address the playbook's `internet` network defaults to when no host_var pin is set. INFINITO_IP6=::1 # True when /proc/version identifies the host as WSL2; generator overrides via runtime detection. INFINITO_IS_WSL2=false # Ansible limit pattern for local deploys. INFINITO_LIMIT_HOST=localhost # Where scripts/lint/wrapper.sh executes 'make lint*' / 'make autoformat': host | docker. INFINITO_LINT_RUNNER=docker # memswap_limit cap applied to the infinito container; 0 means "unlimited". INFINITO_MEMSWAP_LIMIT=0 # mem_limit cap applied to the infinito container; 0 means "unlimited". INFINITO_MEM_LIMIT=0 # MTU of the compose stack's bridge network; 1500 matches most hosts. INFINITO_OUTER_NETWORK_MTU=1500 # GHCR owner of the pkgmgr base image. Composed into INFINITO_PARENT_IMAGE by utils/env/handlers/infinito_parent_image.py. INFINITO_PARENT_IMAGE_OWNER=kevinveenbirkenbach # Tag of the pkgmgr base image. Composed into INFINITO_PARENT_IMAGE by utils/env/handlers/infinito_parent_image.py. INFINITO_PARENT_IMAGE_TAG=stable # Variant of the pkgmgr base image. Currently only `full` is supported. INFINITO_PARENT_IMAGE_VARIANT=full # `true` keeps Playwright trace, screenshot, and video for every test; default `false` retains them only on failure. INFINITO_PLAYWRIGHT_KEEP=false # Docker pull policy compose applies; generator overrides to `always` on GHA. INFINITO_PULL_POLICY=never # True when running under nektos/act locally; generator overrides via runtime detection. INFINITO_RUNNING_ON_ACT=false # True when running on real GitHub Actions; generator overrides via runtime detection. INFINITO_RUNNING_ON_GITHUB=false # Extra flags forwarded verbatim to 'docker run' by 'make run'. INFINITO_RUN_FLAGS= # Absolute path to the bind-mounted repo root inside the dev container. INFINITO_SRC_DIR=/opt/src/infinito # CIDR of the internal docker bridge used by the compose stack. INFINITO_SUBNET=172.30.0.0/24 # Glob `unittest discover -p` applies when running the test suites. INFINITO_TEST_PATTERN=test*.py # Where scripts/tests/code/wrapper.sh executes the test run: docker | host. INFINITO_TEST_RUNNER=docker # Absolute path of the project virtualenv inside the dev container (and on the host when /opt is writable). INFINITO_VENV_DIR=/opt/venvs/infinito # Seconds 'make up' waits for the infinito container healthcheck before failing. INFINITO_WAIT_HEALTH_TIMEOUT_S=600 # Optional app-discovery filter consumed by scripts/meta/resolve/apps.sh and the GHA workflow. INFINITO_WHITELIST= # Master toggle for the worker SPOT chain (INFINITO_WORKER_CPU / _FETCH); falsy values: 0/false/no/off. INFINITO_WORKER_ENABLED=true