furt/furt-lua/deployment/openbsd/rc.d-furt
michael 0abc9791d3 fix(deployment): resolve OpenBSD rc.d service tracking and deployment workflow
- Fix OpenBSD service file pexp pattern to match actual running process
- Set pexp after sourcing rc.subr to prevent automatic override
- Update deployment script process detection from broken furt-lua pattern
- Add TTY-based daemon detection in start.sh for service vs development mode
- Implement comprehensive deployment workflow with backup and health checks
- Enable proper rcctl start/stop/check functionality on OpenBSD

Root cause: OpenBSD rc.subr automatically generates pexp from daemon+flags,
but actual process (/usr/local/bin/lua src/main.lua) differs from wrapper
(start.sh). Solution: Override pexp after rc.subr with correct Lua pattern.

Deployment script also had incorrect process detection pattern looking for
'furt-lua' string that doesn't exist in process name.

Technical details:
- Service file: pexp="/usr/local/bin/lua src/main.lua.*" after rc.subr
- Process detection: pgrep -u _furt -f 'src/main.lua'
- TTY detection: [ ! -t 0 ] for daemon vs interactive mode
- Complete deployment workflow with stop/sync/start/health-check cycle

Fixes #77 - OpenBSD rc.d service file problem resolved
Related: Deployment automation now fully functional karl→walter
2025-06-23 19:44:21 +02:00

14 lines
281 B
Bash

#!/bin/ksh
daemon="/usr/local/furt/furt-lua/scripts/start.sh"
daemon_user="_furt"
daemon_cwd="/usr/local/furt/furt-lua"
daemon_flags="start"
. /etc/rc.d/rc.subr
# pexp NACH rc.subr überschreiben (Fix für OpenBSD Issue #77)
pexp="/usr/local/bin/lua src/main.lua.*"
rc_cmd $1