summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--db-functions18
-rwxr-xr-xdb-update3
2 files changed, 18 insertions, 3 deletions
diff --git a/db-functions b/db-functions
index c1bf6e8..d0c45a4 100644
--- a/db-functions
+++ b/db-functions
@@ -26,15 +26,21 @@ mv_acl() {
# set up general environment
WORKDIR=$(mktemp -dt "${0##*/}.XXXXXXXXXX")
+if [ -n "${SVNUSER}" ]; then
+ setfacl -m u:"${SVNUSER}":rwx "${WORKDIR}"
+ setfacl -m d:u:"${USER}":rwx "${WORKDIR}"
+ setfacl -m d:u:"${SVNUSER}":rwx "${WORKDIR}"
+fi
LOCKS=()
REPO_MODIFIED=0
# Used: plain, msg, msg2, warning, error, in_array, get_full_version, abort, die
# Overwritten: cleanup
# Ignored: stat_busy, stat_done,
-# setup_workdir, trab_abort, trap_exit,
+# setup_workdir, trap_abort, trap_exit,
# lock, slock, lock_close
-. $(librelib common)
+# pkgver_equal, find_cached_package, check_root
+. "$(librelib common)"
script_lock() {
local LOCKDIR="$TMPDIR/.scriptlock.${0##*/}"
@@ -83,7 +89,6 @@ cleanup() {
if (( REPO_MODIFIED )); then
date +%s > "${FTP_BASE}/lastupdate"
- date -u +%s > "${FTP_BASE}/lastsync"
fi
[ "$1" ] && exit "$1"
@@ -225,6 +230,13 @@ getpkgarch() {
echo "$_ver"
}
+check_packager() {
+ local _packager
+
+ _packager=$(_grep_pkginfo "$1" "packager")
+ [[ $_packager && $_packager != 'Unknown Packager' ]]
+}
+
getpkgfile() {
if [[ ${#} -ne 1 ]]; then
error 'No canonical package found!'
diff --git a/db-update b/db-update
index 3b63708..57a2251 100755
--- a/db-update
+++ b/db-update
@@ -51,6 +51,9 @@ for repo in "${repos[@]}"; do
if ! check_pkgrepos "${pkg}"; then
die "Package %s already exists in another repository" "${repo}/${pkg##*/}"
fi
+ if ! check_packager "${pkg}"; then
+ die "Package ${repo}/${pkg##*/} does not have a valid packager"
+ fi
done
if ! check_splitpkgs "${repo}" "${pkgs[@]}"; then
die "Missing split packages for %s" "${repo}"