Skip to main content

Module constraints

Module constraints 

Source
Expand description

What the network an environment runs in imposes (see Constraints), as each target needs it:

  • images: every image: of the Compose file and the Kubernetes manifests, and the FROM of the Dockerfiles Isoloom writes, go through the registry mirrors (rewrite_image, as each backend writes them);
  • containers: the machines (never Isoloom’s own checks or router) get the proxy and the package mirrors as environment variables (machine_env), their builds the proxy as build arguments (build_args);
  • Linux VMs: a shell preamble run as root before anything else (linux_prelude) sets the proxy for the shell, apt, dnf and Docker, rewrites the apt sources to the mirrors, writes pip’s and npm’s configuration and the time servers.

Functions§

build_args
The build arguments a machine’s image build gets: the proxy (Docker’s predefined ARGs, so a Dockerfile needs no change), and the mirrors as the machine’s environment has them.
linux_prelude
The shell (run as root, idempotent) that applies the constraints on a Linux VM, before its own set-up and steps. None when the spec has none.
machine_env
The environment a machine’s container gets: the proxy, and the package mirrors tools read from the environment.
no_proxy
What is reached without the proxy: localhost, the environment’s machine names and network blocks (as written, and Docker’s), then the spec’s own list, each once.
of
The spec’s constraints, when it has any that change something.
rewrite_image
image pulled through the mirror of its registry, when there is one.