summaryrefslogtreecommitdiff
path: root/cron-jobs
diff options
context:
space:
mode:
authorLuke Shumaker <lukeshu@sbcglobal.net>2016-04-17 19:11:45 -0400
committerLuke Shumaker <lukeshu@sbcglobal.net>2016-04-17 19:11:45 -0400
commitfc2e33cd67dfd2f27346d65ec525101ad3b92afc (patch)
treef852d3858fc2af8f6f5423d767206b5d0dbc6d6c /cron-jobs
parentacaa58d1833510973cf41fa8349fd3be39c596d8 (diff)
mv cron-jobs/repo-sanity-check db-check-repo-sanity
Diffstat (limited to 'cron-jobs')
-rwxr-xr-xcron-jobs/repo-sanity-check57
1 files changed, 0 insertions, 57 deletions
diff --git a/cron-jobs/repo-sanity-check b/cron-jobs/repo-sanity-check
deleted file mode 100755
index 239f042..0000000
--- a/cron-jobs/repo-sanity-check
+++ /dev/null
@@ -1,57 +0,0 @@
-#!/bin/bash
-# Solves issue165... on the old roundup install. From the database
-# backups, the title was "Older/deprecated packages never leave the
-# repo", I don't know how the body of the issue is stored in the DB,
-# but the title says enough, I think.
-
-. "$(dirname "$(readlink -e "$0")")/../config"
-. "$(dirname "$(readlink -e "$0")")/../db-functions"
-
-# Traverse all repos
-for _repo in "${PKGREPOS[@]}"; do
- msg "Cleaning up [%s]" "${_repo}"
-
- # Find all pkgnames on this repo's abs
- on_abs=($(
- find "${SVNREPO}/${_repo}" -name PKGBUILD | \
- while read pkgbuild; do
- source "${pkgbuild}" >/dev/null 2>&1
- # cleanup to save memory
- unset build package source md5sums pkgdesc pkgver pkgrel epoch \
- url license arch depends makedepends optdepends options \
- >/dev/null 2>&1
-
- # also cleanup package functions
- for _pkg in "${pkgname[@]}"; do
- unset "package_${pkg}" >/dev/null 2>&1
- done
-
- # this fills the on_abs array
- echo "${pkgname[@]}"
- done
- ))
-
- # quit if abs is empty
- if [ ${#on_abs[*]} -eq 0 ]; then
- warning "[%s]'s ABS tree is empty, skipping" "${_repo}"
- break
- fi
-
- # Find all pkgnames on repos
- on_repo=($(
- find "${FTP_BASE}/${_repo}" -name "*.pkg.tar.?z" \
- -printf "%f\n" | sed "s/^\(.\+\)-[^-]\+-[^-]\+-[^-]\+$/\1/"
- ))
-
- # Compares them, whatever is on repos but not on abs should be removed
- remove=($(comm -13 \
- <(printf '%s\n' "${on_abs[@]}" | sort -u) \
- <(printf '%s\n' "${on_repo[@]}" | sort -u) ))
-
- # Remove them from databases, ftpdir-cleanup will take care of the rest
- find "${FTP_BASE}/${_repo}" -name "*.db.tar.?z" \
- -exec repo-remove {} "${remove[@]}" \; >/dev/null 2>&1
-
- msg2 "Removed the following packages:"
- plain '%s' "${remove[@]}"
-done