Add service infrastructure for long-running deployment

- Add configuration system (config/*.exs, OrgGarden.Config)
- Refactor supervision tree with DynamicSupervisor and Registry
- Add OrgGarden.Server for serve mode lifecycle management
- Add health check HTTP endpoints (Bandit/Plug on :9090)
- Add telemetry events for export and watcher operations
- Implement graceful shutdown with SIGTERM handling
- Add Mix Release support with overlay scripts
- Add NixOS module for systemd service deployment
- Update documentation with service usage
This commit is contained in:
Ignacio Ballesteros
2026-02-21 20:38:47 +01:00
parent 6476b45f04
commit 01805dbf39
23 changed files with 1147 additions and 83 deletions

16
rel/env.sh.eex Normal file
View File

@@ -0,0 +1,16 @@
#!/bin/sh
# Release environment configuration
# This file is evaluated before the release starts
# Disable Erlang distribution (not needed for this application)
export RELEASE_DISTRIBUTION=none
# Enable shell history in IEx
export ERL_AFLAGS="-kernel shell_history enabled"
# Set release node name
export RELEASE_NODE=org_garden
# Log to console by default
export ELIXIR_ERL_OPTIONS="-noshell"