feat(operations): add automated reconciliation center
This commit is contained in:
@@ -6,6 +6,7 @@ RELEASE_ID=${1:?release id is required}
|
||||
ARCHIVE=${2:?web archive is required}
|
||||
API_BINARY=${3:-}
|
||||
ONEOS_SCOPE_BINARY=${4:-}
|
||||
RECONCILIATION_BINARY=${5:-}
|
||||
ROOT=${PLATFORM_ROOT:-/opt/lingniu-vehicle-platform}
|
||||
BASE_URL=${PLATFORM_BASE_URL:-http://127.0.0.1:20300}
|
||||
SERVICE=${PLATFORM_SERVICE:-lingniu-vehicle-platform}
|
||||
@@ -25,6 +26,9 @@ fi
|
||||
if test -n "$ONEOS_SCOPE_BINARY"; then
|
||||
test -f "$ONEOS_SCOPE_BINARY" || { printf 'OneOS scope sync binary is missing: %s\n' "$ONEOS_SCOPE_BINARY" >&2; exit 1; }
|
||||
fi
|
||||
if test -n "$RECONCILIATION_BINARY"; then
|
||||
test -f "$RECONCILIATION_BINARY" || { printf 'reconciliation evaluator binary is missing: %s\n' "$RECONCILIATION_BINARY" >&2; exit 1; }
|
||||
fi
|
||||
test -x "$SCRIPT_DIR/prepare-web-release-tree.sh" || { printf 'release tree helper is missing\n' >&2; exit 1; }
|
||||
test -f "$SCRIPT_DIR/prune-release-history.py" || { printf 'release pruning helper is missing\n' >&2; exit 1; }
|
||||
test -f "$SCRIPT_DIR/verify-customer-demo.py" || { printf 'customer demo gate is missing\n' >&2; exit 1; }
|
||||
@@ -76,7 +80,7 @@ trap rollback ERR
|
||||
|
||||
test ! -e "$next" || { printf 'release already exists: %s\n' "$next" >&2; exit 1; }
|
||||
mkdir -p "$next/web"
|
||||
for runtime_file in platform-api alert-evaluator alert-stream-evaluator platform-migrate oneos-scope-sync alert-benchmark; do
|
||||
for runtime_file in platform-api alert-evaluator alert-stream-evaluator platform-migrate oneos-scope-sync reconciliation-evaluator alert-benchmark; do
|
||||
if test -f "$old/$runtime_file"; then
|
||||
cp "$old/$runtime_file" "$next/$runtime_file"
|
||||
fi
|
||||
@@ -88,6 +92,9 @@ fi
|
||||
if test -n "$ONEOS_SCOPE_BINARY"; then
|
||||
cp "$ONEOS_SCOPE_BINARY" "$next/oneos-scope-sync"
|
||||
fi
|
||||
if test -n "$RECONCILIATION_BINARY"; then
|
||||
cp "$RECONCILIATION_BINARY" "$next/reconciliation-evaluator"
|
||||
fi
|
||||
if test -f "$old/lingniu-vehicle-platform.service"; then
|
||||
cp "$old/lingniu-vehicle-platform.service" "$next/lingniu-vehicle-platform.service"
|
||||
fi
|
||||
@@ -96,12 +103,16 @@ if test -d "$SCRIPT_DIR/migrations"; then
|
||||
mkdir -p "$next/deploy/migrations"
|
||||
cp "$SCRIPT_DIR"/migrations/*.sql "$next/deploy/migrations/"
|
||||
fi
|
||||
if test -d "$SCRIPT_DIR/systemd"; then
|
||||
mkdir -p "$next/deploy/systemd"
|
||||
cp "$SCRIPT_DIR"/systemd/* "$next/deploy/systemd/"
|
||||
fi
|
||||
cp "$SCRIPT_DIR/prepare-web-release-tree.sh" "$next/deploy/prepare-web-release-tree.sh"
|
||||
cp "$SCRIPT_DIR/prune-release-history.py" "$next/deploy/prune-release-history.py"
|
||||
cp "$SCRIPT_DIR/verify-customer-demo.py" "$next/deploy/verify-customer-demo.py"
|
||||
cp "$0" "$next/deploy/install-web-release.sh"
|
||||
chmod +x "$next/platform-api" "$next/deploy/"*.sh "$next/deploy/prune-release-history.py" "$next/deploy/verify-customer-demo.py"
|
||||
for runtime_file in alert-evaluator alert-stream-evaluator platform-migrate oneos-scope-sync alert-benchmark; do
|
||||
for runtime_file in alert-evaluator alert-stream-evaluator platform-migrate oneos-scope-sync reconciliation-evaluator alert-benchmark; do
|
||||
test ! -f "$next/$runtime_file" || chmod +x "$next/$runtime_file"
|
||||
done
|
||||
|
||||
|
||||
Reference in New Issue
Block a user