Files
logwisp/deploy
lixen dfd8a68988
Package / arch (push) Canceled after 0s
Package / user (push) Canceled after 0s
Package / deb (push) Canceled after 0s
Package / freebsd (push) Canceled after 0s
Package / image (push) Canceled after 0s
Test / test (push) Canceled after 0s
Test / e2e (push) Canceled after 0s
v0.29.0 the configuration engine, and lw --schema
2026-10-09 18:34:45 -04:00
..

deploy

lw-deploy.sh writes a LogWisp configuration for one node and deploys it: in a docker or podman container, as a systemd or FreeBSD rc.d service (on the host or inside a jail), or as a configuration you run yourself. It is POSIX sh, written for FreeBSD's /bin/sh as much as for dash.

deploy/lw-deploy.sh                  # asks, with inline menus
deploy/lw-deploy.sh -h               # every flag
deploy/lw-deploy.sh --dry-run ...    # print the configuration and commands only
deploy/lw-deploy.sh --yes ...        # no questions: defaults, or fail on a missing value
  • Roles
    • edge: tails log directories, forwards the entries to an aggregator
    • aggregator: receives from edges; writes files, serves HTTP and TCP streams
    • standalone: tails log directories; writes files, serves streams
  • Runtimes
    • docker, podman: a hardened container of the logwisp image (Linux)
    • native: systemd on Linux, rc.d on FreeBSD, --jail NAME for a jail
    • manual: the configuration only, for lw -c
  • Every question has a flag. Before changing anything the script prints its plan and the command line that repeats it without questions, ready for the next node. It starts nothing that lw --check rejects.
  • The native runtimes install the service files of deploy/package/.
  • Not covered, and printed by the script: filters, rate limits, heartbeat, several pipelines, proxy mode, ACLs, certificate creation. Edit the generated logwisp.toml for those.

Scenarios and what each runtime writes: doc/deployment.md.