From e97b9b6e00740e617c6081ae91635cda2eb7f0d7 Mon Sep 17 00:00:00 2001 From: Dexoron Date: Wed, 27 May 2026 23:58:53 +0800 Subject: [PATCH] feat: enhance package database update process with checks for existing files --- .github/workflows/dexoron-packages-index.yml | 21 +++++++++++++++----- 1 file changed, 16 insertions(+), 5 deletions(-) diff --git a/.github/workflows/dexoron-packages-index.yml b/.github/workflows/dexoron-packages-index.yml index df1b3a0..7f5bd90 100644 --- a/.github/workflows/dexoron-packages-index.yml +++ b/.github/workflows/dexoron-packages-index.yml @@ -40,13 +40,24 @@ jobs: docker run --rm \ -v ${{ github.workspace }}/central-packages:/packages \ archlinux:latest \ - bash -c " + bash -c ' cd /packages/archlinux/x86_64 && \ rm -f dexoron.db dexoron.files && \ - repo-add dexoron.db.tar.gz *.pkg.tar.zst && \ - ln -sf dexoron.db.tar.gz dexoron.db && \ - ln -sf dexoron.files.tar.gz dexoron.files - " + + # Включаем nullglob, чтобы пустая маска *.pkg.tar.zst не превращалась в одноименную строку + shopt -s nullglob + packages=(*.pkg.tar.zst) + + # Проверяем, есть ли бинарные пакеты в папке + if [ ${#packages[@]} -gt 0 ]; then + echo "Found ${#packages[@]} packages. Updating database..." + repo-add dexoron.db.tar.gz "${packages[@]}" && \ + ln -sf dexoron.db.tar.gz dexoron.db && \ + ln -sf dexoron.files.tar.gz dexoron.files + else + echo "No .pkg.tar.zst files found in directory. Skipping database update." + fi + ' - name: Push to dexoron/packages run: |