Files
omv-dijiang/bin/update
T
2026-05-04 13:10:46 +08:00

42 lines
1.1 KiB
Bash
Executable File

#!/bin/sh
set -e
SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)"
ROOT="$(dirname "$SCRIPT_DIR")"
SING_BOX="$ROOT/works/sing-box"
REV_FILE="$ROOT/works/rev"
# defaults
REPO_URL="git@git.inker.bot:arknights/sing-box.git"
if [ ! -z "$CI_JOB_TOKEN" ]; then
git config --global url."gitlab-ci-token:${CI_JOB_TOKEN}@git.inker.bot:".insteadOf "git@git.inker.bot:"
fi
UPSTREAM_BRANCH="main"
CONFIG="$ROOT/works/config"
if [ -f "$CONFIG" ]; then
. "$CONFIG"
fi
if [ -d "$SING_BOX/.git" ]; then
echo "Updating sing-box..."
git -C "$SING_BOX" fetch --all
if [ -n "$UPSTREAM_BRANCH" ]; then
git -C "$SING_BOX" checkout "$UPSTREAM_BRANCH"
fi
git -C "$SING_BOX" pull
else
echo "Cloning sing-box..."
if [ -n "$UPSTREAM_BRANCH" ]; then
git clone -b "$UPSTREAM_BRANCH" "$REPO_URL" "$SING_BOX"
else
git clone "$REPO_URL" "$SING_BOX"
fi
fi
REV="$(git -C "$SING_BOX" rev-parse HEAD)"
echo "$REV" > "$REV_FILE"
echo "Done. Version: $(git -C "$SING_BOX" describe --tags --always 2>/dev/null || echo "$REV")"
echo "Stored rev: $REV"