Commit 79867866 authored by Andrey Filippov's avatar Andrey Filippov

feat: Integrate workspace locking into eyesis_mcp_ctl.sh

parent 479b64e0
...@@ -10,6 +10,17 @@ set -euo pipefail ...@@ -10,6 +10,17 @@ set -euo pipefail
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
REPO_ROOT="$(cd "${SCRIPT_DIR}/.." && pwd)" REPO_ROOT="$(cd "${SCRIPT_DIR}/.." && pwd)"
LOCK_SCRIPT="${REPO_ROOT}/attic/elphel-agent-tools/bin/workspace_lock.sh"
check_lock() {
if [[ -x "${LOCK_SCRIPT}" ]]; then
if ! "${LOCK_SCRIPT}" check; then
echo "Error: Workspace is locked." >&2
"${LOCK_SCRIPT}" status >&2
exit 1
fi
fi
}
STATE_DIR="${EYESIS_MCP_STATE_DIR:-${REPO_ROOT}/attic/session-logs}" STATE_DIR="${EYESIS_MCP_STATE_DIR:-${REPO_ROOT}/attic/session-logs}"
PID_FILE="${STATE_DIR}/eyesis_mcp.pid" PID_FILE="${STATE_DIR}/eyesis_mcp.pid"
...@@ -484,12 +495,15 @@ done ...@@ -484,12 +495,15 @@ done
case "${COMMAND}" in case "${COMMAND}" in
start) start)
check_lock
start_process start_process
;; ;;
stop) stop)
check_lock
stop_process stop_process
;; ;;
restart) restart)
check_lock
stop_process || true stop_process || true
start_process start_process
;; ;;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment