Skip to main content

Module shell

Module shell 

Source
Expand description

The shell rendering of a recipe (design §2.1–§2.2): the POSIX library (configure.sh, one function per step kind, for apt, dnf and apk, systemd and OpenRC), and one library call per step. A Linux VM’s set-up runs the calls after the library; a generated Dockerfile RUNs each call after sourcing it; cloud-init carries the VM’s script. Every argument is quoted.

Constants§

LIBRARY
The library, as Isoloom ships it.
LIBRARY_PATH
Where the library is generated, from the project folder.

Functions§

call
Step r’s library call(s), one per line, as a VM runs it (a template’s text inline); None for a step the library doesn’t run (a script, a reboot, a playbook: the set-up’s own steps) or one with nothing to do (no port to open).
library_file
The library as a generated file, at LIBRARY_PATH.
script
A VM’s set-up step for resources, a run of the recipe between its scripts and reboots: the library, then each step’s call, from the project folder. fresh: no script, playbook or reboot ran before it in this apply, so nothing has changed yet; otherwise one may have, and the services after it restart (the rule errs on restarting).