auto_agent/edge-agent/scripts/package-linux.sh
2521690 591df2d18e feat: 增强 edge-agent 服务控制与便携打包能力
- 将 Windows/Linux service control 执行器从占位实现推进到可用
- 新增 service control 测试,覆盖 status/start/stop/restart 主路径
- 增强 edge-agent 启动脚本,优先使用包内私有 Python 运行时
- 增强 Windows/Linux 打包脚本,支持携带私有 Python 运行时
- 更新 edge-agent README 与当前进度总结
- 新增 dist 忽略规则,避免打包产物污染仓库
2026-04-09 11:26:42 +08:00

29 lines
883 B
Bash

#!/usr/bin/env bash
set -euo pipefail
ROOT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)"
DIST_DIR="$ROOT_DIR/dist"
TIMESTAMP="$(date +%Y%m%d-%H%M%S)"
PACKAGE_ROOT="$DIST_DIR/edge-agent-linux-$TIMESTAMP"
RUNTIME_ROOT="$PACKAGE_ROOT/runtime/python"
ARCHIVE_PATH="$DIST_DIR/edge-agent-linux-$TIMESTAMP.tar.gz"
PYTHON_HOME="${1:-${EDGE_PYTHON_HOME:-}}"
if [[ -z "$PYTHON_HOME" ]]; then
echo "Python runtime directory is required. Pass it as the first argument or set EDGE_PYTHON_HOME." >&2
exit 1
fi
mkdir -p "$PACKAGE_ROOT"
mkdir -p "$RUNTIME_ROOT"
mkdir -p "$DIST_DIR"
cp -r "$ROOT_DIR/app" "$PACKAGE_ROOT/"
cp "$ROOT_DIR/README.md" "$PACKAGE_ROOT/"
cp "$ROOT_DIR/pyproject.toml" "$PACKAGE_ROOT/"
cp "$ROOT_DIR/scripts/start-linux.sh" "$PACKAGE_ROOT/start.sh"
cp -r "$PYTHON_HOME"/. "$RUNTIME_ROOT"/
tar -czf "$ARCHIVE_PATH" -C "$PACKAGE_ROOT" .
echo "$ARCHIVE_PATH"