skip unchanged packages in repo-pkg-build
All checks were successful
release / Release (push) Successful in 4m25s

This commit is contained in:
2026-03-23 05:11:03 +09:00
parent a368d043f4
commit 3703e7131d

View File

@@ -36,17 +36,27 @@ mkdir -p "$WORK"
cd "$WORK" cd "$WORK"
git clone --depth 1 https://git.syui.ai/ai/os.git git clone --depth 1 https://git.syui.ai/ai/os.git
for pkg in ailog aigpt aishell; do typeset -A PKG_REPOS
echo "=== Building $pkg ===" PKG_REPOS=(ailog log aigpt gpt aishell shell)
cp -r "$WORK/os/pkg/$pkg" "$WORK/$pkg"
cd "$WORK/$pkg"
makepkg -sf --noconfirm --sign --key "$GPG_KEY"
cd "$WORK"
done
mkdir -p "$REPO_DIR/x86_64" mkdir -p "$REPO_DIR/x86_64"
for pkg in ailog aigpt aishell; do for pkg in ailog aigpt aishell; do
repo_name="${PKG_REPOS[$pkg]}"
remote_hash=$(git ls-remote --heads "https://git.syui.ai/ai/${repo_name}.git" main | cut -c1-7)
existing=$(ls "$REPO_DIR/x86_64/${pkg}"-*.pkg.tar.zst 2>/dev/null | head -1)
if [ -n "$existing" ] && echo "$existing" | grep -q "\.g${remote_hash}-"; then
echo "=== $pkg unchanged (${remote_hash}), skipping ==="
continue
fi
echo "=== Building $pkg (${remote_hash}) ==="
cp -r "$WORK/os/pkg/$pkg" "$WORK/$pkg"
cd "$WORK/$pkg"
makepkg -sf --noconfirm --sign --key "$GPG_KEY"
cd "$WORK"
rm -f "$REPO_DIR/x86_64/${pkg}"-*.pkg.tar.zst rm -f "$REPO_DIR/x86_64/${pkg}"-*.pkg.tar.zst
rm -f "$REPO_DIR/x86_64/${pkg}"-*.pkg.tar.zst.sig rm -f "$REPO_DIR/x86_64/${pkg}"-*.pkg.tar.zst.sig
rm -f "$REPO_DIR/x86_64/${pkg}-debug"-*.pkg.tar.zst rm -f "$REPO_DIR/x86_64/${pkg}-debug"-*.pkg.tar.zst