blackleafdigital/ZLayer CLI

Install and (optionally) run the ZLayer CLI

View on GitHub

Trust Signals

Scorecard Score
not yet scored
Maintenance Recency
Activelast commit Jun 14, 2026
License
Apache 2.0

Pinned Snippet

workflow.ymlSHA-pinned
uses: blackleafdigital/zlayer@3c4692aecaa8aaa81d2c6cc924498fc9a64e3406 # v0.12.10

tags can be moved; commit SHAs can't. why a SHA?

namedescriptionrequireddefault
versionZLayer version (default: latest)nolatest
commandOptional ZLayer command to run after install. If empty, the action only installs.no""
working-directoryWorking directory for the commandno.
install-dirWhere to install the zlayer binary. - empty (default): portable install to $RUNNER_TEMP/zlayer-bin. No sudo, no daemon, no system deps touched. - non-empty (e.g. /usr/local/bin): full system install via install.sh. Handles libseccomp / cgroups v2 / SELinux relabel / completions / optional daemon. Requires sudo. no""
data-dirZLAYER_DATA_DIR override propagated via $GITHUB_ENV so every subsequent step in the job sees it. - empty in portable mode: defaults to $RUNNER_TEMP/zlayer-data. - empty in system mode: leaves ZLAYER_DATA_DIR unset (zlayer uses platform default /var/lib/zlayer). - non-empty: written verbatim to $GITHUB_ENV in both modes. no""
install-daemonOnly used in system mode (install-dir non-empty). If 'true', install.sh runs `zlayer daemon install` (systemd on Linux, launchd on macOS). Default 'false' (sets ZLAYER_NO_SERVICE=1). nofalse
start-daemonPortable mode only. After install, launch `zlayer serve --daemon --bind <bind>`. No-op in system mode (the systemd/launchd unit starts the daemon if install-daemon: true). nofalse
bindDaemon bind address. - System mode forwards via ZLAYER_BIND env to install.sh -> `daemon install --bind`. - Portable + start-daemon spawns with `--bind <value>`. no127.0.0.1:3669
docker-socketEnable Docker API socket emulation. - System mode: forwards ZLAYER_DOCKER_SOCKET=1 to install.sh. - Portable + start-daemon: passes --docker-socket to the spawned daemon. Requires a zlayer binary built with the `docker-compat` feature; validated at runtime. nofalse
enable-completionsInstall shell completions. Detects $SHELL. - System mode: `zlayer completions <shell>` piped (with sudo) to the system completion path. - Portable: piped to $RUNNER_TEMP/zlayer-completions/. nofalse
with-overlayEnable overlay networking on the daemon. Implies install-daemon: true (system mode) OR start-daemon: true (portable mode). Verifies /dev/net/tun and sudo availability. System mode forwards ZLAYER_WITH_OVERLAY=1 to install.sh; portable currently no-op for the daemon flag (the flag is only honored by `daemon install`). nofalse
admin-emailForwarded via env ZLAYER_BOOTSTRAP_EMAIL (clap env-mapped). System mode.no""
admin-password-filePath to a file containing the admin password. Forwarded via env ZLAYER_ADMIN_PASSWORD_FILE to install.sh, which appends --admin-password-file. System mode. no""
jwt-secretForwarded via env ZLAYER_JWT_SECRET (clap env-mapped). System mode.no""
namedescription
versionInstalled ZLayer version
bin-dirDirectory the zlayer binary was installed into
data-dirResolved ZLAYER_DATA_DIR (empty when system mode and no override was given).
daemon-running'true' iff start-daemon: true or system-mode daemon install succeeded AND the daemon responds on <bind> (1 retry, 2s connect timeout). Empty string otherwise.
socket-pathUDS socket path if daemon was started.
docker-socket-path/var/run/docker.sock if docker-socket: true and daemon is running, empty otherwise.