2025-03-26 16:32:10 +01:00
2024-12-06 22:39:45 +01:00
2024-12-02 21:58:12 -05:00
2025-03-26 16:29:53 +01:00
2023-11-28 19:48:39 +01:00
2025-03-25 22:44:59 +01:00
2025-03-26 05:33:01 +01:00

These setup files provide the text-only configurations for DMZ.

It should not contain private data.

Dependencies

  • recutils
  • (optional) graph-easy (the package may be called perl-graph-easy)

Aspirations

  • Each service should reside in its own directory.
  • Everything should be automated, including:
    • backups,
    • turning the backup back into a service,
    • configuring the service to run,
    • Makefile (or similar) wherever practical,
    • Idempotency.
  • All secrets stored elsewhere (probably in the dmzadmin repo)
  • Any maintenance scripts.
  • Configurations should reside in shadow-directories, e.g. a backup soft-serve's config.yaml should reside in this repo under splint.rs/soft-serve/etc/soft/config.yaml.

Network Database

I have a half-baked plan to finally make use of plain-text databases, and it's already half-working. Try these commands:

Ask what types of _rec_ords it contains:

Database

recinf network.rec

Select queries

Select with recsel, then specify the database (.rec) and type of record (like table in db).

  • --include-descriptors or -d
  • --type or -t
  • --expression or -e
  • --quick or -q
recsel network.rec --type router
recsel network.rec -d -t lxc

User -q for a --quick selection, or -e for more precise selections.

recsel network.rec --type lxc --quick wiki
recsel network.rec -t lxc -q nginx
recsel network.rec -t lxc -e "name ~ 'nginx'"
recsel network.rec -t lxc -e "name = 'nginx12'"

Insert queries

Insert a new record with recins.

recins network.rec -t lxc -r "name: bob" -r "service: bob" -r "host: moxx"

Update queries

If you can select something, you can also set its fields with recset.

Use -f to set the --field, and -a to --add, or -s to --set.

recset network.rec -t lxc -e "name = 'nginx12'" -f proxies -a soft-serve
recsel network.rec -t lxc -e "name = 'nginx11'" -p proxies[0]
recset network.rec -t lxc -e" name = 'nginx11'" -f proxies[0] -s wiki9
Description
No description provided
Readme 208 KiB
Languages
Shell 60.9%
Python 23.6%
Makefile 15.5%