diff options
-rw-r--r-- | config.local.archlinux32 | 16 | ||||
-rw-r--r-- | config.local.archlinuxarm | 24 | ||||
-rw-r--r-- | config.local.community | 20 | ||||
-rw-r--r-- | config.local.packages | 20 | ||||
-rw-r--r-- | db-import-archlinux32.conf | 21 | ||||
-rw-r--r-- | db-import-archlinuxarm.conf | 26 | ||||
-rw-r--r-- | db-import-community.conf | 25 | ||||
-rw-r--r-- | db-import-packages.conf | 25 | ||||
-rwxr-xr-x | db-import-pkg | 51 | ||||
-rw-r--r-- | systemd/db-import@.service | 2 | ||||
-rw-r--r-- | test/cases/db-import-pkg.bats | 59 |
11 files changed, 148 insertions, 141 deletions
diff --git a/config.local.archlinux32 b/config.local.archlinux32 index af7296d..d1bf74c 100644 --- a/config.local.archlinux32 +++ b/config.local.archlinux32 @@ -4,3 +4,19 @@ PKGREPOS=(build-support community community-staging community-testing core extra ARCHES=('i686') PKGPOOL='pool/archlinux32' SRCPOOL='sources/archlinux32' + +# "tags" are repo-arch pairs +ARCHTAGS=({build-support,core,testing,extra,community}-i686) +ARCHPATH='$arch/$repo' +ARCHPKGPOOL='pool' + +OURPKGPOOL='pool/archlinux32' + +INHERIT=( + 'pool/packages' + 'pool/community' + 'pool/alarm' +) + +# https://git.archlinux32.org/archlinux32/packages/raw/branch/master/core/pacman-mirrorlist/mirrorlist +ARCHMIRROR='rsync://mirror.archlinux32.org/archlinux32/' diff --git a/config.local.archlinuxarm b/config.local.archlinuxarm index b3af169..7ff2586 100644 --- a/config.local.archlinuxarm +++ b/config.local.archlinuxarm @@ -4,3 +4,27 @@ PKGREPOS=(alarm aur community core extra) ARCHES=('armv7h') PKGPOOL='pool/alarm' SRCPOOL='sources/alarm' + +# "tags" are repo-arch pairs +ARCHTAGS=({core,extra,community}-armv7h) +ARCHPATH='$arch/$repo' + +OURPKGPOOL='pool/alarm' + +INHERIT=( + 'pool/packages' + 'pool/community' +) + +# Of the ALARM mirrors that have public rsync: +# +# $ ./config-list-mirrors-archlinuxarm +# rsync://nl.mirror.archlinuxarm.org/alarmro +# rsync://dk.mirror.archlinuxarm.org/archlinuxarm +# rsync://de3.mirror.archlinuxarm.org/archlinux-arm +# rsync://sg.mirror.archlinuxarm.org/archlinuxarm +# rsync://ru.mirror.archlinuxarm.org/archlinuxarm +# +# the ones in Denmark and the Netherlands have the best ping time from +# winston.parabola.nu (Iceland). +ARCHMIRROR='rsync://nl.mirror.archlinuxarm.org/alarmro/' diff --git a/config.local.community b/config.local.community index 5d3e69c..b5070c1 100644 --- a/config.local.community +++ b/config.local.community @@ -4,3 +4,23 @@ PKGREPOS=('community' 'community-testing' 'community-staging' 'multilib' 'multil ARCHES=('x86_64') PKGPOOL='pool/community' SRCPOOL='sources/community' + +# "tags" are repo-arch pairs +ARCHTAGS=({community,multilib,multilib-testing}-x86_64) +ARCHPATH='$repo/os/$arch' +ARCHPKGPOOL='pool/community' +ARCHSRCPOOL='sources/community' + +OURPKGPOOL='pool/community' +OURSRCPOOL='sources/community' + +# Of the few tier-1 mirrors with the 'sources/' folder: +# +# $ ./config-list-mirrors-archlinux --require=sources | jq -r '.[].url' +# rsync://archlinux.c3sl.ufpr.br/archlinux/ +# rsync://mirrors.kernel.org/archlinux/ +# rsync://ftp.acc.umu.se/mirror/archlinux/ +# +# ftp.acc.umu.se (Sweden) has (by far) the best ping time from +# winston.parabola.nu (Iceland). +ARCHMIRROR='rsync://ftp.acc.umu.se/mirror/archlinux/' diff --git a/config.local.packages b/config.local.packages index 98a9581..814c41a 100644 --- a/config.local.packages +++ b/config.local.packages @@ -4,3 +4,23 @@ PKGREPOS=('core' 'extra' 'testing' 'staging' 'kde-unstable' 'gnome-unstable') ARCHES=('x86_64') PKGPOOL='pool/packages' SRCPOOL='sources/packages' + +# "tags" are repo-arch pairs +ARCHTAGS=({core,testing,extra}-x86_64) +ARCHPATH='$repo/os/$arch' +ARCHPKGPOOL='pool/packages' +ARCHSRCPOOL='sources/packages' + +OURPKGPOOL='pool/packages' +OURSRCPOOL='sources/packages' + +# Of the few tier-1 mirrors with the 'sources/' folder: +# +# $ ./config-list-mirrors-archlinux --require=sources | jq -r '.[].url' +# rsync://archlinux.c3sl.ufpr.br/archlinux/ +# rsync://mirrors.kernel.org/archlinux/ +# rsync://ftp.acc.umu.se/mirror/archlinux/ +# +# ftp.acc.umu.se (Sweden) has (by far) the best ping time from +# winston.parabola.nu (Iceland). +ARCHMIRROR='rsync://ftp.acc.umu.se/mirror/archlinux/' diff --git a/db-import-archlinux32.conf b/db-import-archlinux32.conf deleted file mode 100644 index 2744840..0000000 --- a/db-import-archlinux32.conf +++ /dev/null @@ -1,21 +0,0 @@ -#!/hint/bash - -# "tags" are repo-arch pairs -ARCHTAGS=({build-support,core,testing,extra,community}-i686) -ARCHPATH='$arch/$repo' -ARCHPKGPOOL='pool' - -OURPKGPOOL='pool/archlinux32' - -INHERIT=( - 'pool/packages' - 'pool/community' - 'pool/alarm' -) - -# https://git.archlinux32.org/archlinux32/packages/raw/branch/master/core/pacman-mirrorlist/mirrorlist -ARCHMIRROR='rsync://mirror.archlinux32.org/archlinux32/' - -if [[ -n ${DBIMPORT_CONFIG} ]]; then - source "${DBIMPORT_CONFIG}" -fi diff --git a/db-import-archlinuxarm.conf b/db-import-archlinuxarm.conf index 5f103bd..c4b0b1c 100644 --- a/db-import-archlinuxarm.conf +++ b/db-import-archlinuxarm.conf @@ -1,31 +1,5 @@ #!/hint/bash -# "tags" are repo-arch pairs -ARCHTAGS=({core,extra,community}-armv7h) -ARCHPATH='$arch/$repo' - -OURPKGPOOL='pool/alarm' - -INHERIT=( - 'pool/packages' - 'pool/community' -) - -# Of the ALARM mirrors that have public rsync: -# -# $ ./config-list-mirrors-archlinuxarm -# rsync://nl.mirror.archlinuxarm.org/alarmro -# rsync://dk.mirror.archlinuxarm.org/archlinuxarm -# rsync://de3.mirror.archlinuxarm.org/archlinux-arm -# rsync://sg.mirror.archlinuxarm.org/archlinuxarm -# rsync://ru.mirror.archlinuxarm.org/archlinuxarm -# -# the ones in Denmark and the Netherlands have the best ping time from -# winston.parabola.nu (Iceland). -ARCHMIRROR='rsync://nl.mirror.archlinuxarm.org/alarmro/' - -# The following is for db-import-archlinuxarm-src - # NB: I am unsure if the presence or absence of a trailing slash in # the _ROOT variables is significant. -- lukeshu SYNCARGS='-mrtv --no-motd --delete-after --no-p --no-o --no-g --quiet --exclude .~tmp~/' diff --git a/db-import-community.conf b/db-import-community.conf deleted file mode 100644 index 7705a5a..0000000 --- a/db-import-community.conf +++ /dev/null @@ -1,25 +0,0 @@ -#!/hint/bash - -# "tags" are repo-arch pairs -ARCHTAGS=({community,multilib,multilib-testing}-x86_64) -ARCHPATH='$repo/os/$arch' -ARCHPKGPOOL='pool/community' -ARCHSRCPOOL='sources/community' - -OURPKGPOOL='pool/community' -OURSRCPOOL='sources/community' - -# Of the few tier-1 mirrors with the 'sources/' folder: -# -# $ ./config-list-mirrors-archlinux --require=sources | jq -r '.[].url' -# rsync://archlinux.c3sl.ufpr.br/archlinux/ -# rsync://mirrors.kernel.org/archlinux/ -# rsync://ftp.acc.umu.se/mirror/archlinux/ -# -# ftp.acc.umu.se (Sweden) has (by far) the best ping time from -# winston.parabola.nu (Iceland). -ARCHMIRROR='rsync://ftp.acc.umu.se/mirror/archlinux/' - -if [[ -n ${DBIMPORT_CONFIG} ]]; then - source "${DBIMPORT_CONFIG}" -fi diff --git a/db-import-packages.conf b/db-import-packages.conf deleted file mode 100644 index 3f1f4c5..0000000 --- a/db-import-packages.conf +++ /dev/null @@ -1,25 +0,0 @@ -#!/hint/bash - -# "tags" are repo-arch pairs -ARCHTAGS=({core,testing,extra}-x86_64) -ARCHPATH='$repo/os/$arch' -ARCHPKGPOOL='pool/packages' -ARCHSRCPOOL='sources/packages' - -OURPKGPOOL='pool/packages' -OURSRCPOOL='sources/packages' - -# Of the few tier-1 mirrors with the 'sources/' folder: -# -# $ ./config-list-mirrors-archlinux --require=sources | jq -r '.[].url' -# rsync://archlinux.c3sl.ufpr.br/archlinux/ -# rsync://mirrors.kernel.org/archlinux/ -# rsync://ftp.acc.umu.se/mirror/archlinux/ -# -# ftp.acc.umu.se (Sweden) has (by far) the best ping time from -# winston.parabola.nu (Iceland). -ARCHMIRROR='rsync://ftp.acc.umu.se/mirror/archlinux/' - -if [[ -n ${DBIMPORT_CONFIG} ]]; then - source "${DBIMPORT_CONFIG}" -fi diff --git a/db-import-pkg b/db-import-pkg index c6a3caf..02344ae 100755 --- a/db-import-pkg +++ b/db-import-pkg @@ -6,12 +6,8 @@ set -eE shopt -s extglob globstar nullglob source "$(librelib messages)" -source "$(librelib conf)" setup_traps -dbscripts_dir="$(dirname -- "$(readlink -e "$0")")" -readonly dbscripts_dir - # usage: expac_file <file.db> <expac_args> # # Uses the ${WORKDIR} global @@ -271,34 +267,51 @@ main() { # Run as `V=true db-import-pkg` to get verbose output declare -r arg_verbose="$V" - declare -r arg_upstream="$1" # Print usage message - if [[ $# -ne 1 ]]; then - msg 'usage: [V=true] %s <upstream-name>' "${0##*/}" - print '<upstream-name> refers to a %q/db-import-<upstream-name>.conf file.' "$dbscripts_dir" + if [[ $# -ne 0 ]] || [[ -z "$DBSCRIPTS_CONFIG" ]] || ! grep -q ARCHMIRROR -- "$DBSCRIPTS_CONFIG"; then + msg 'usage: [V=true] DBSCRIPTS_CONFIG=/path/to/file %s' "${0##*/}" exit $EXIT_INVALIDARGUMENT fi - if ! [[ -f "${dbscripts_dir}/db-import-${arg_upstream}.conf" && - -r "${dbscripts_dir}/db-import-${arg_upstream}.conf" ]]; then - print 'Not a valid upstream name: %q' "$arg_upstream" >&2 - exit $EXIT_INVALID_ARGUMENT - fi + local config_file + config_file="$(dirname "$(readlink -e "$0")")/config" + source "$config_file" + + local ret=0 varname varref + for varname in PKGEXTS DBEXT FILESEXT FTP_BASE; do + if [[ -z ${!varname:-} ]] || is_array "$varname"; then + print "Configure '%s' as a non-empty string in %q (or %q):" "$varname" "$config_file" "$LOCAL_CONFIG" + ret=$EXIT_NOTCONFIGURED + fi + done + for varname in ARCHMIRROR ARCHPATH OURPKGPOOL; do # optional: OURSRCPOOL ARCH{PKG,SRC}POOL + if [[ -z ${!varname:-} ]] || is_array "$varname"; then + print "Configure '%s' as a non-empty string in DBSCRIPTS_CONFIG=%q (did you set DBSCRIPTS_CONFIG correctly?):" "$varname" "$LOCAL_CONFIG" + ret=$EXIT_NOTCONFIGURED + fi + done + for varname in ARCHTAGS; do # optional: INHERIT + declare -n varref="$varname" + if (( ${#varref[*]} == 0 )) || ! is_array "$var"; then + print "Configure '%s' as a non-empty array in DBSCRIPTS_CONFIG=%q (did you set DBSCRIPTS_CONFIG correctly?):" "$varname" "$LOCAL_CONFIG" + fi + done - load_conf "${dbscripts_dir}/config" PKGEXTS DBEXT FILESEXT FTP_BASE - load_conf "${dbscripts_dir}/db-import-${arg_upstream}.conf" \ - ARCHMIRROR ARCHTAGS ARCHPATH OURPKGPOOL # optional: OURSRCPOOL ARCH{PKG,SRC}POOL INHERIT if [[ -n ${ARCHSRCPOOL:-} && -z ${OURSRCPOOL:-} ]]; then print 'If you set %s, then you must set %s' {ARCH,OUR}SRCPOOL - exit $EXIT_NOTCONFIGURED + ret=$EXIT_NOTCONFIGURED elif [[ -n ${OURSRCPOOL:-} && -z ${ARCHSRCPOOL:-} ]]; then print 'If you set %s, then you must set %s' {OUR,ARCH}SRCPOOL - exit $EXIT_NOTCONFIGURED + ret=$EXIT_NOTCONFIGURED fi if [[ -n ${ARCHSRCPOOL:-} && -z ${ARCHPKGPOOL:-} ]]; then print '%s requires that %s is also set' ARCH{SRC,PKG}POOL - exit $EXIT_NOTCONFIGURED + ret=$EXIT_NOTCONFIGURED + fi + + if (( ret != 0 )); then + exit $ret fi WORKDIR=$(mktemp -dt "${0##*/}.XXXXXXXXXX") diff --git a/systemd/db-import@.service b/systemd/db-import@.service index 884d4af..1509449 100644 --- a/systemd/db-import@.service +++ b/systemd/db-import@.service @@ -7,6 +7,6 @@ After=network-online.target Type=oneshot User=repo Environment=DBSCRIPTS_CONFIG=/etc/dbscripts/config.local.%I -ExecStart=/usr/bin/db-import-pkg %I +ExecStart=/usr/bin/db-import-pkg PrivateTmp=true diff --git a/test/cases/db-import-pkg.bats b/test/cases/db-import-pkg.bats index 5829773..2cddf65 100644 --- a/test/cases/db-import-pkg.bats +++ b/test/cases/db-import-pkg.bats @@ -51,15 +51,27 @@ setup() { date +%s > "${TMP}/rsyncd/archlinuxarm/lastsync" # Configure db-import to use that rsyncd server - cat <<-eot >"${TMP}/db-import-archlinux.local.conf" + cat <<-eot >"${TMP}/config.local.packages" + source_testconfig() { local STAGING; source ${DBSCRIPTS_CONFIG@Q}; }; source_testconfig + source ../config.local.packages ARCHTAGS=('core-x86_64') ARCHMIRROR=rsync://localhost:${rsyncport@Q}/rsyncd/archlinux/ eot - cat <<-eot >"${TMP}/db-import-archlinux32.local.conf" + cat <<-eot >"${TMP}/config.local.community" + source_testconfig() { local STAGING; source ${DBSCRIPTS_CONFIG@Q}; }; source_testconfig + source ../config.local.community + ARCHTAGS=('core-x86_64') + ARCHMIRROR=rsync://localhost:${rsyncport@Q}/rsyncd/archlinux/ + eot + cat <<-eot >"${TMP}/config.local.archlinux32" + source_testconfig() { local STAGING; source ${DBSCRIPTS_CONFIG@Q}; }; source_testconfig + source ../config.local.archlinux32 ARCHTAGS=('core-i686') ARCHMIRROR=rsync://localhost:${rsyncport@Q}/rsyncd/archlinux32/ eot - cat <<-eot >"${TMP}/db-import-archlinuxarm.local.conf" + cat <<-eot >"${TMP}/config.local.archlinuxarm" + source_testconfig() { local STAGING; source ${DBSCRIPTS_CONFIG@Q}; }; source_testconfig + source ../config.local.archlinuxarm ARCHTAGS=('core-armv7h') ARCHMIRROR=rsync://localhost:${rsyncport@Q}/rsyncd/archlinuxarm/ eot @@ -108,7 +120,6 @@ teardown() { __withRoTmp() { local mount="mount -o bind ${TMP@Q}{,} && mount -o bind,remount,ro /tmp{,}" local env=( - "DBIMPORT_CONFIG=${DBIMPORT_CONFIG}" "DBSCRIPTS_CONFIG=${DBSCRIPTS_CONFIG}" "XDG_CONFIG_HOME=${XDG_CONFIG_HOME}" ) @@ -204,7 +215,7 @@ __doesNotExist() { __releaseImportedPackage slavery x86_64 "$TMP/rsyncd/archlinux/core/os/x86_64/core.db.tar.gz" "$TMP/rsyncd/archlinux/pool/packages" __releaseImportedPackage pkg-simple-c x86_64 "$TMP/rsyncd/archlinux/core/os/x86_64/core.db.tar.gz" "$TMP/rsyncd/archlinux/pool/packages" - DBIMPORT_CONFIG="${TMP}/db-import-archlinux.local.conf" __db-import-pkg packages + DBSCRIPTS_CONFIG="${TMP}/config.local.packages" __db-import-pkg __isLinkTo "$TMP/ftp/core/os/x86_64/pkg-simple-c-1-1-x86_64.pkg.tar.xz" "$TMP/ftp/pool/packages/pkg-simple-c-1-1-x86_64.pkg.tar.xz" __doesNotExist "$TMP"/ftp/{core/os/x86_64,pool/packages,sources/packages}/slavery-* @@ -214,7 +225,7 @@ __doesNotExist() { __releaseImportedPackage slavery i686 "$TMP/rsyncd/archlinux32/i686/core/core.db.tar.gz" "$TMP/rsyncd/archlinux32/pool" __releaseImportedPackage pkg-simple-c i686 "$TMP/rsyncd/archlinux32/i686/core/core.db.tar.gz" "$TMP/rsyncd/archlinux32/pool" - DBIMPORT_CONFIG="${TMP}/db-import-archlinux32.local.conf" __db-import-pkg archlinux32 + DBSCRIPTS_CONFIG="${TMP}/config.local.archlinux32" __db-import-pkg __isLinkTo "$TMP/ftp/core/os/i686/pkg-simple-c-1-1-i686.pkg.tar.xz" "$TMP/ftp/pool/archlinux32/pkg-simple-c-1-1-i686.pkg.tar.xz" __doesNotExist "$TMP"/ftp/{core/os/i686,pool/archlinux32,sources/archlinux32}/slavery-* @@ -224,7 +235,7 @@ __doesNotExist() { __releaseImportedPackage slavery armv7h "$TMP/rsyncd/archlinuxarm/armv7h/core/core.db.tar.gz" __releaseImportedPackage pkg-simple-c armv7h "$TMP/rsyncd/archlinuxarm/armv7h/core/core.db.tar.gz" - DBIMPORT_CONFIG="${TMP}/db-import-archlinuxarm.local.conf" __db-import-pkg archlinuxarm + DBSCRIPTS_CONFIG="${TMP}/config.local.archlinuxarm" __db-import-pkg __isLinkTo "$TMP/ftp/core/os/armv7h/pkg-simple-c-1-1-armv7h.pkg.tar.xz" "$TMP/ftp/pool/alarm/pkg-simple-c-1-1-armv7h.pkg.tar.xz" __doesNotExist "$TMP"/ftp/{core/os/alarm,pool/alarm,sources/alarm}/slavery-* @@ -233,7 +244,7 @@ __doesNotExist() { @test "import DBs with no blacklisted packages" { __releaseImportedPackage pkg-simple-c x86_64 "$TMP/rsyncd/archlinux/core/os/x86_64/core.db.tar.gz" "$TMP/rsyncd/archlinux/pool/packages" - DBIMPORT_CONFIG="${TMP}/db-import-archlinux.local.conf" __db-import-pkg packages + DBSCRIPTS_CONFIG="${TMP}/config.local.packages" __db-import-pkg __isLinkTo "$TMP/ftp/core/os/x86_64/pkg-simple-c-1-1-x86_64.pkg.tar.xz" "$TMP/ftp/pool/packages/pkg-simple-c-1-1-x86_64.pkg.tar.xz" } @@ -242,14 +253,14 @@ __doesNotExist() { __releaseImportedPackage slavery x86_64 "$TMP/rsyncd/archlinux/core/os/x86_64/core.db.tar.gz" "$TMP/rsyncd/archlinux/pool/packages" __releaseImportedPackage pkg-simple-c x86_64 "$TMP/rsyncd/archlinux/core/os/x86_64/core.db.tar.gz" "$TMP/rsyncd/archlinux/pool/packages" - DBIMPORT_CONFIG="${TMP}/db-import-archlinux.local.conf" __db-import-pkg packages + DBSCRIPTS_CONFIG="${TMP}/config.local.packages" __db-import-pkg __isLinkTo "$TMP/ftp/core/os/x86_64/pkg-simple-c-1-1-x86_64.pkg.tar.xz" "$TMP/ftp/pool/packages/pkg-simple-c-1-1-x86_64.pkg.tar.xz" __updateImportedPackage pkg-simple-c __releaseImportedPackage pkg-simple-c x86_64 "$TMP/rsyncd/archlinux/core/os/x86_64/core.db.tar.gz" "$TMP/rsyncd/archlinux/pool/packages" - DBIMPORT_CONFIG="${TMP}/db-import-archlinux.local.conf" __db-import-pkg packages + DBSCRIPTS_CONFIG="${TMP}/config.local.packages" __db-import-pkg __isLinkTo "$TMP/ftp/core/os/x86_64/pkg-simple-c-1-2-x86_64.pkg.tar.xz" "$TMP/ftp/pool/packages/pkg-simple-c-1-2-x86_64.pkg.tar.xz" } @@ -258,7 +269,7 @@ __doesNotExist() { __releaseImportedPackage slavery x86_64 "$TMP/rsyncd/archlinux/core/os/x86_64/core.db.tar.gz" "$TMP/rsyncd/archlinux/pool/packages" __releaseImportedPackage pkg-simple-c x86_64 "$TMP/rsyncd/archlinux/core/os/x86_64/core.db.tar.gz" "$TMP/rsyncd/archlinux/pool/packages" - DBIMPORT_CONFIG="${TMP}/db-import-archlinux.local.conf" __db-import-pkg packages + DBSCRIPTS_CONFIG="${TMP}/config.local.packages" __db-import-pkg __isLinkTo "$TMP/ftp/core/os/x86_64/pkg-simple-c-1-1-x86_64.pkg.tar.xz" "$TMP/ftp/pool/packages/pkg-simple-c-1-1-x86_64.pkg.tar.xz" __doesNotExist "$TMP"/ftp/{core/os/x86_64,pool/packages,sources/packages}/slavery-* @@ -269,7 +280,7 @@ __doesNotExist() { __releaseImportedPackage slavery i686 "$TMP/rsyncd/archlinux32/i686/core/core.db.tar.gz" "$TMP/rsyncd/archlinux32/pool" __releaseImportedPackage pkg-simple-c i686 "$TMP/rsyncd/archlinux32/i686/core/core.db.tar.gz" "$TMP/rsyncd/archlinux32/pool" - DBIMPORT_CONFIG="${TMP}/db-import-archlinux32.local.conf" __db-import-pkg archlinux32 + DBSCRIPTS_CONFIG="${TMP}/config.local.archlinux32" __db-import-pkg __isLinkTo "$TMP/ftp/core/os/i686/pkg-simple-c-1-1-i686.pkg.tar.xz" "$TMP/ftp/pool/archlinux32/pkg-simple-c-1-1-i686.pkg.tar.xz" __doesNotExist "$TMP"/ftp/{core/os/i686,pool/archlinux32,sources/archlinux32}/slavery-* @@ -281,7 +292,7 @@ __doesNotExist() { __releaseImportedPackage slavery armv7h "$TMP/rsyncd/archlinuxarm/armv7h/core/core.db.tar.gz" __releaseImportedPackage pkg-simple-c armv7h "$TMP/rsyncd/archlinuxarm/armv7h/core/core.db.tar.gz" - DBIMPORT_CONFIG="${TMP}/db-import-archlinuxarm.local.conf" __db-import-pkg archlinuxarm + DBSCRIPTS_CONFIG="${TMP}/config.local.archlinuxarm" __db-import-pkg __isLinkTo "$TMP/ftp/core/os/armv7h/pkg-simple-c-1-1-armv7h.pkg.tar.xz" "$TMP/ftp/pool/alarm/pkg-simple-c-1-1-armv7h.pkg.tar.xz" __doesNotExist "$TMP"/ftp/{core/os/armv7h,pool/alarm,sources/alarm}/slavery-* @@ -294,9 +305,9 @@ __doesNotExist() { __releaseImportedPackage pkg-any-a i686 "$TMP/rsyncd/archlinux32/i686/core/core.db.tar.gz" "$TMP/rsyncd/archlinux32/pool" __releaseImportedPackage pkg-any-a armv7h "$TMP/rsyncd/archlinuxarm/armv7h/core/core.db.tar.gz" - DBIMPORT_CONFIG="${TMP}/db-import-archlinux.local.conf" __db-import-pkg packages - DBIMPORT_CONFIG="${TMP}/db-import-archlinux32.local.conf" __db-import-pkg archlinux32 - DBIMPORT_CONFIG="${TMP}/db-import-archlinuxarm.local.conf" __db-import-pkg archlinuxarm + DBSCRIPTS_CONFIG="${TMP}/config.local.packages" __db-import-pkg + DBSCRIPTS_CONFIG="${TMP}/config.local.archlinux32" __db-import-pkg + DBSCRIPTS_CONFIG="${TMP}/config.local.archlinuxarm" __db-import-pkg __isLinkTo "$TMP/ftp/core/os/x86_64/pkg-any-a-1-1-any.pkg.tar.xz" "$TMP/ftp/pool/packages/pkg-any-a-1-1-any.pkg.tar.xz" __isLinkTo "$TMP/ftp/core/os/i686/pkg-any-a-1-1-any.pkg.tar.xz" "$TMP/ftp/pool/packages/pkg-any-a-1-1-any.pkg.tar.xz" @@ -315,7 +326,7 @@ __doesNotExist() { __releaseImportedPackage pkg-simple-c x86_64 "$TMP/rsyncd/archlinux/core/os/x86_64/core.db.tar.gz" "$TMP/rsyncd/archlinux/pool/packages" __updateImportedPackage pkg-any-a __releaseImportedPackage pkg-any-a x86_64 "$TMP/rsyncd/archlinux/core/os/x86_64/core.db.tar.gz" "$TMP/rsyncd/archlinux/pool/packages" - DBIMPORT_CONFIG="${TMP}/db-import-archlinux.local.conf" __db-import-pkg packages + DBSCRIPTS_CONFIG="${TMP}/config.local.packages" __db-import-pkg __isLinkTo "$TMP/ftp/core/os/x86_64/pkg-any-a-1-2-any.pkg.tar.xz" "$TMP/ftp/pool/packages/pkg-any-a-1-2-any.pkg.tar.xz" # This assumes that a package nested too deelply under /pool/ @@ -327,7 +338,7 @@ __doesNotExist() { __releaseImportedPackage pkg-simple-c i686 "$TMP/rsyncd/archlinux32/i686/core/core.db.tar.gz" "$TMP/rsyncd/archlinux32/pool" local status=0 - DBIMPORT_CONFIG="${TMP}/db-import-archlinux32.local.conf" __db-import-pkg archlinux32 || status=$? + DBSCRIPTS_CONFIG="${TMP}/config.local.status=$?" __db-import-pkg archlinux32 || [[ $status != 0 ]] __doesNotExist "$TMP/ftp/core/os/i686/pkg-any-a-1-2-any.pkg.tar.xz" } @@ -336,21 +347,21 @@ __doesNotExist() { # This is modeled after the situation with 'asp' and 'asp32' __releaseImportedPackage pkg-any64 x86_64 "$TMP/rsyncd/archlinux/core/os/x86_64/core.db.tar.gz" "$TMP/rsyncd/archlinux/pool/packages" - DBIMPORT_CONFIG="${TMP}/db-import-archlinux.local.conf" __db-import-pkg packages + DBSCRIPTS_CONFIG="${TMP}/config.local.packages" __db-import-pkg __isLinkTo "$TMP/ftp/core/os/x86_64/pkg-any-2-1-any.pkg.tar.xz" "$TMP/ftp/pool/packages/pkg-any-2-1-any.pkg.tar.xz" __releaseImportedPackage pkg-any32 i686 "$TMP/rsyncd/archlinux32/i686/core/core.db.tar.gz" "$TMP/rsyncd/archlinux32/pool" - DBIMPORT_CONFIG="${TMP}/db-import-archlinux32.local.conf" __db-import-pkg archlinux32 + DBSCRIPTS_CONFIG="${TMP}/config.local.archlinux32" __db-import-pkg __isLinkTo "$TMP/ftp/core/os/i686/pkg-any-1-1.2-any.pkg.tar.xz" "$TMP/ftp/pool/archlinux32/pkg-any-1-1.2-any.pkg.tar.xz" } @test "import respects INHERIT precedence" { __releaseImportedPackage pkg-any-a armv7h "$TMP/rsyncd/archlinuxarm/armv7h/core/core.db.tar.gz" - DBIMPORT_CONFIG="${TMP}/db-import-archlinux32.local.conf" __db-import-pkg archlinux32 + DBSCRIPTS_CONFIG="${TMP}/config.local.archlinux32" __db-import-pkg __releaseImportedPackage pkg-any-a x86_64 "$TMP/rsyncd/archlinux/core/os/x86_64/core.db.tar.gz" "$TMP/rsyncd/archlinux/pool/packages" - DBIMPORT_CONFIG="${TMP}/db-import-archlinux.local.conf" __db-import-pkg packages - DBIMPORT_CONFIG="${TMP}/db-import-archlinuxarm.local.conf" __db-import-pkg archlinuxarm + DBSCRIPTS_CONFIG="${TMP}/config.local.packages" __db-import-pkg + DBSCRIPTS_CONFIG="${TMP}/config.local.archlinuxarm" __db-import-pkg __isLinkTo "$TMP/ftp/core/os/x86_64/pkg-any-a-1-1-any.pkg.tar.xz" "$TMP/ftp/pool/packages/pkg-any-a-1-1-any.pkg.tar.xz" __isLinkTo "$TMP/ftp/core/os/armv7h/pkg-any-a-1-1-any.pkg.tar.xz" "$TMP/ftp/pool/packages/pkg-any-a-1-1-any.pkg.tar.xz" @@ -360,7 +371,7 @@ __doesNotExist() { __releaseImportedPackage pkg-simple-c x86_64 "$TMP/rsyncd/archlinux/core/os/x86_64/core.db.tar.gz" "$TMP/rsyncd/archlinux/pool/packages" touch "$TMP/stamp" - DBIMPORT_CONFIG="${TMP}/db-import-archlinux.local.conf" __db-import-pkg packages + DBSCRIPTS_CONFIG="${TMP}/config.local.packages" __db-import-pkg __isLinkTo "$TMP/ftp/core/os/x86_64/pkg-simple-c-1-1-x86_64.pkg.tar.xz" "$TMP/ftp/pool/packages/pkg-simple-c-1-1-x86_64.pkg.tar.xz" [[ "$TMP/ftp/pool/packages/pkg-simple-c-1-1-x86_64.pkg.tar.xz" -nt "$TMP/stamp" ]] |