[Dev] [dbscripts] [PATCH 25/31] Allways build packages for all supported architectures
Luke Shumaker
lukeshu at lukeshu.com
Fri Apr 6 18:43:58 GMT 2018
From: Pierre Schmitz <pierre at archlinux.de>
(cherry picked from commit 76f95dd139094dc2985b6733f23fcb098f07c64e)
---
test/Makefile | 6 +--
test/cases/db-move.bats | 18 ++-----
test/cases/db-remove.bats | 10 ++--
test/cases/db-repo-add.bats | 9 ++--
test/cases/db-repo-remove.bats | 10 ++--
test/cases/db-update.bats | 88 +++++++++++++++------------------
test/cases/ftpdir-cleanup.bats | 18 ++-----
test/cases/packages.bats | 10 ++--
test/cases/sourceballs.bats | 14 ++----
test/fixtures/pkg-single-arch/PKGBUILD | 12 +++++
test/fixtures/pkg-single-epoch/PKGBUILD | 13 +++++
test/lib/common.bash | 64 ++++++++++++------------
12 files changed, 132 insertions(+), 140 deletions(-)
create mode 100644 test/fixtures/pkg-single-arch/PKGBUILD
create mode 100644 test/fixtures/pkg-single-epoch/PKGBUILD
diff --git a/test/Makefile b/test/Makefile
index 9a6d18f..da09c4a 100644
--- a/test/Makefile
+++ b/test/Makefile
@@ -1,10 +1,10 @@
-PACKAGE_CACHE ?= $(or $(TMPDIR),/tmp)/dbscripts-build
+export BUILDDIR ?= $(or $(TMPDIR),/tmp)/dbscripts-build
test:
- PATH=$(CURDIR)/../:$(CURDIR)/../cron-jobs/:$(PATH) PACKAGE_CACHE=$(PACKAGE_CACHE) bats cases
+ PATH=$(CURDIR)/../:$(CURDIR)/../cron-jobs/:$(PATH) bats cases
test-coverage:
- PATH=$(CURDIR)/../:$(CURDIR)/../cron-jobs/:$(PATH) PACKAGE_CACHE=$(PACKAGE_CACHE) kcov \
+ PATH=$(CURDIR)/../:$(CURDIR)/../cron-jobs/:$(PATH) kcov \
--include-path=$(CURDIR)/../ \
--exclude-path=$(CURDIR)/../test,$(CURDIR)/../cron-jobs/makepkg.conf,$(CURDIR)/../config \
$(COVERAGE_DIR) \
diff --git a/test/cases/db-move.bats b/test/cases/db-move.bats
index a0af0ce..4eea575 100755
--- a/test/cases/db-move.bats
+++ b/test/cases/db-move.bats
@@ -6,9 +6,7 @@ load ../lib/common
local arch
for pkgbase in "${pkgs[@]}"; do
- for arch in "${ARCH_BUILD[@]}"; do
- releasePackage testing "${pkgbase}" "${arch}"
- done
+ releasePackage testing "${pkgbase}"
done
db-update
@@ -29,9 +27,7 @@ load ../lib/common
local arch
for pkgbase in "${pkgs[@]}"; do
- for arch in "${ARCH_BUILD[@]}"; do
- releasePackage testing "${pkgbase}" "${arch}"
- done
+ releasePackage testing "${pkgbase}"
done
db-update
@@ -52,9 +48,7 @@ load ../lib/common
local arch
for pkgbase in "${pkgs[@]}"; do
- for arch in "${ARCH_BUILD[@]}"; do
- releasePackage testing "${pkgbase}" "${arch}"
- done
+ releasePackage testing "${pkgbase}"
done
db-update
@@ -72,7 +66,7 @@ load ../lib/common
local pkgbase
for pkgbase in "${pkgs[@]}"; do
- releasePackage testing "${pkgbase}" any
+ releasePackage testing "${pkgbase}"
done
db-update
@@ -90,9 +84,7 @@ load ../lib/common
local arch
for pkgbase in "${pkgs[@]}"; do
- for arch in "${ARCH_BUILD[@]}"; do
- releasePackage testing "${pkgbase}" "${arch}"
- done
+ releasePackage testing "${pkgbase}"
done
db-update
diff --git a/test/cases/db-remove.bats b/test/cases/db-remove.bats
index 5201440..deb0f0e 100755
--- a/test/cases/db-remove.bats
+++ b/test/cases/db-remove.bats
@@ -6,9 +6,7 @@ load ../lib/common
local arch
for pkgbase in "${pkgs[@]}"; do
- for arch in "${ARCH_BUILD[@]}"; do
- releasePackage extra "${pkgbase}" "${arch}"
- done
+ releasePackage extra "${pkgbase}"
done
db-update
@@ -32,9 +30,7 @@ load ../lib/common
local arch
for pkgbase in "${pkgs[@]}"; do
- for arch in "${ARCH_BUILD[@]}"; do
- releasePackage extra "${pkgbase}" "${arch}"
- done
+ releasePackage extra "${pkgbase}"
done
db-update
@@ -55,7 +51,7 @@ load ../lib/common
local pkgbase
for pkgbase in "${pkgs[@]}"; do
- releasePackage extra "${pkgbase}" any
+ releasePackage extra "${pkgbase}"
done
db-update
diff --git a/test/cases/db-repo-add.bats b/test/cases/db-repo-add.bats
index 869796a..a04d9bb 100755
--- a/test/cases/db-repo-add.bats
+++ b/test/cases/db-repo-add.bats
@@ -27,8 +27,8 @@ __movePackageToRepo() {
local arch
for pkgbase in "${pkgs[@]}"; do
+ releasePackage extra "$pkgbase"
for arch in "${ARCH_BUILD[@]}"; do
- releasePackage extra "$pkgbase" "$arch"
__movePackageToRepo extra ${pkgbase} ${arch}
db-repo-add extra "${arch}" "${pkgbase}-1-1-${arch}.pkg.tar.xz"
done
@@ -46,10 +46,13 @@ __movePackageToRepo() {
local pkgbase
local arch
+ for pkgbase in "${pkgs[@]}"; do
+ releasePackage extra "$pkgbase"
+ done
+
for arch in "${ARCH_BUILD[@]}"; do
add_pkgs=()
for pkgbase in "${pkgs[@]}"; do
- releasePackage extra "$pkgbase" "$arch"
__movePackageToRepo extra ${pkgbase} ${arch}
add_pkgs+=("${pkgbase}-1-1-${arch}.pkg.tar.xz")
done
@@ -69,7 +72,7 @@ __movePackageToRepo() {
local arch
for pkgbase in ${pkgs[@]}; do
- releasePackage extra ${pkgbase} any
+ releasePackage extra ${pkgbase}
__movePackageToRepo extra ${pkgbase} any
db-repo-add extra any ${pkgbase}-1-1-any.pkg.tar.xz
done
diff --git a/test/cases/db-repo-remove.bats b/test/cases/db-repo-remove.bats
index 165b759..6145f25 100755
--- a/test/cases/db-repo-remove.bats
+++ b/test/cases/db-repo-remove.bats
@@ -6,9 +6,7 @@ load ../lib/common
local arch
for pkgbase in "${pkgs[@]}"; do
- for arch in "${ARCH_BUILD[@]}"; do
- releasePackage extra "${pkgbase}" "${arch}"
- done
+ releasePackage extra "${pkgbase}"
done
db-update
@@ -32,9 +30,7 @@ load ../lib/common
local arch
for pkgbase in "${pkgs[@]}"; do
- for arch in "${ARCH_BUILD[@]}"; do
- releasePackage extra "${pkgbase}" "${arch}"
- done
+ releasePackage extra "${pkgbase}"
done
db-update
@@ -55,7 +51,7 @@ load ../lib/common
local pkgbase
for pkgbase in ${pkgs[@]}; do
- releasePackage extra ${pkgbase} any
+ releasePackage extra ${pkgbase}
done
db-update
diff --git a/test/cases/db-update.bats b/test/cases/db-update.bats
index cf60fcd..2fafcd8 100755
--- a/test/cases/db-update.bats
+++ b/test/cases/db-update.bats
@@ -6,9 +6,7 @@ load ../lib/common
local arch
for pkgbase in "${pkgs[@]}"; do
- for arch in "${ARCH_BUILD[@]}"; do
- releasePackage extra "${pkgbase}" "${arch}"
- done
+ releasePackage extra "${pkgbase}"
done
db-update
@@ -21,15 +19,15 @@ load ../lib/common
}
@test "add single simple package" {
- releasePackage extra 'pkg-simple-a' 'i686'
+ releasePackage extra 'pkg-single-arch'
db-update
- checkPackage extra 'pkg-simple-a-1-1-i686.pkg.tar.xz' 'i686'
+ checkPackage extra 'pkg-single-arch-1-1-x86_64.pkg.tar.xz' 'x86_64'
}
@test "add single epoch package" {
- releasePackage extra 'pkg-simple-epoch' 'i686'
+ releasePackage extra 'pkg-single-epoch'
db-update
- checkPackage extra 'pkg-simple-epoch-1:1-1-i686.pkg.tar.xz' 'i686'
+ checkPackage extra 'pkg-single-epoch-1:1-1-x86_64.pkg.tar.xz' 'x86_64'
}
@test "add any packages" {
@@ -37,7 +35,7 @@ load ../lib/common
local pkgbase
for pkgbase in "${pkgs[@]}"; do
- releasePackage extra "${pkgbase}" any
+ releasePackage extra "${pkgbase}"
done
db-update
@@ -54,9 +52,7 @@ load ../lib/common
local arch
for pkgbase in "${pkgs[@]}"; do
- for arch in "${ARCH_BUILD[@]}"; do
- releasePackage extra "${pkgbase}" "${arch}"
- done
+ releasePackage extra "${pkgbase}"
done
db-update
@@ -71,23 +67,23 @@ load ../lib/common
}
@test "update any package" {
- releasePackage extra pkg-any-a any
+ releasePackage extra pkg-any-a
db-update
- updatePackage pkg-any-a any
+ updatePackage pkg-any-a
- releasePackage extra pkg-any-a any
+ releasePackage extra pkg-any-a
db-update
checkPackage extra pkg-any-a-1-2-any.pkg.tar.xz any
}
@test "update any package to different repositories at once" {
- releasePackage extra pkg-any-a any
+ releasePackage extra pkg-any-a
- updatePackage pkg-any-a any
+ updatePackage pkg-any-a
- releasePackage testing pkg-any-a any
+ releasePackage testing pkg-any-a
db-update
@@ -96,21 +92,21 @@ load ../lib/common
}
@test "update same any package to same repository" {
- releasePackage extra pkg-any-a any
+ releasePackage extra pkg-any-a
db-update
checkPackage extra pkg-any-a-1-1-any.pkg.tar.xz any
- releasePackage extra pkg-any-a any
+ releasePackage extra pkg-any-a
run db-update
[ "$status" -ne 0 ]
}
@test "update same any package to different repositories" {
- releasePackage extra pkg-any-a any
+ releasePackage extra pkg-any-a
db-update
checkPackage extra pkg-any-a-1-1-any.pkg.tar.xz any
- releasePackage testing pkg-any-a any
+ releasePackage testing pkg-any-a
run db-update
[ "$status" -ne 0 ]
@@ -123,9 +119,7 @@ load ../lib/common
local pkgbase='pkg-split-a'
local arch
- for arch in "${ARCH_BUILD[@]}"; do
- releasePackage "${repo}" "${pkgbase}" "${arch}"
- done
+ releasePackage "${repo}" "${pkgbase}"
# remove a split package to make db-update fail
rm "${STAGING}/extra/${pkgbase}1-"*
@@ -140,26 +134,26 @@ load ../lib/common
@test "unknown repo" {
mkdir "${STAGING}/unknown/"
- releasePackage extra 'pkg-simple-a' 'i686'
- releasePackage unknown 'pkg-simple-b' 'i686'
+ releasePackage extra 'pkg-any-a'
+ releasePackage unknown 'pkg-any-b'
db-update
- checkPackage extra 'pkg-simple-a-1-1-i686.pkg.tar.xz' 'i686'
+ checkPackage extra 'pkg-any-a-1-1-any.pkg.tar.xz' any
[ ! -e "${FTP_BASE}/unknown" ]
rm -rf "${STAGING}/unknown/"
}
@test "add unsigned package fails" {
- releasePackage extra 'pkg-simple-a' 'i686'
+ releasePackage extra 'pkg-any-a'
rm "${STAGING}"/extra/*.sig
run db-update
[ "$status" -ne 0 ]
- checkRemovedPackage extra pkg-simple-a-1-1-i686.pkg.tar.xz i686
+ checkRemovedPackage extra pkg-any-a-1-1-any.pkg.tar.xz any
}
@test "add invalid signed package fails" {
local p
- releasePackage extra 'pkg-simple-a' 'i686'
+ releasePackage extra 'pkg-any-a'
for p in "${STAGING}"/extra/*${PKGEXT}; do
unxz "$p"
xz -0 "${p%%.xz}"
@@ -167,37 +161,37 @@ load ../lib/common
run db-update
[ "$status" -ne 0 ]
- checkRemovedPackage extra pkg-simple-a-1-1-i686.pkg.tar.xz i686
+ checkRemovedPackage extra pkg-any-a-1-1-any.pkg.tar.xz any
}
@test "add broken signature fails" {
local s
- releasePackage extra 'pkg-simple-a' 'i686'
+ releasePackage extra 'pkg-any-a'
for s in "${STAGING}"/extra/*.sig; do
echo 0 > "$s"
done
run db-update
[ "$status" -ne 0 ]
- checkRemovedPackage extra pkg-simple-a-1-1-i686.pkg.tar.xz i686
+ checkRemovedPackage extra pkg-any-a-1-1-any.pkg.tar.xz any
}
@test "add package with inconsistent version fails" {
local p
- releasePackage extra 'pkg-simple-a' 'i686'
+ releasePackage extra 'pkg-any-a'
for p in "${STAGING}"/extra/*; do
- mv "${p}" "${p/pkg-simple-a-1/pkg-simple-a-2}"
+ mv "${p}" "${p/pkg-any-a-1/pkg-any-a-2}"
done
run db-update
[ "$status" -ne 0 ]
- checkRemovedPackage extra 'pkg-simple-a-2-1-i686.pkg.tar.xz' 'i686'
+ checkRemovedPackage extra 'pkg-any-a-2-1-any.pkg.tar.xz' 'any'
}
@test "add package with inconsistent name fails" {
local p
- releasePackage extra 'pkg-simple-a' 'i686'
+ releasePackage extra 'pkg-any-a'
for p in "${STAGING}"/extra/*; do
mv "${p}" "${p/pkg-/foo-pkg-}"
@@ -205,40 +199,38 @@ load ../lib/common
run db-update
[ "$status" -ne 0 ]
- checkRemovedPackage extra 'foo-pkg-simple-a-1-1-i686.pkg.tar.xz' 'i686'
+ checkRemovedPackage extra 'foo-pkg-any-a-1-1-any.pkg.tar.xz' 'any'
}
@test "add package with inconsistent pkgbuild fails" {
skip # abslibre is broken
- releasePackage extra 'pkg-simple-a' 'i686'
+ releasePackage extra 'pkg-any-a'
- updateRepoPKGBUILD 'pkg-simple-a' extra i686
+ updateRepoPKGBUILD 'pkg-any-a' extra any
run db-update
[ "$status" -ne 0 ]
- checkRemovedPackage extra 'pkg-simple-a-1-1-i686.pkg.tar.xz' 'i686'
+ checkRemovedPackage extra 'pkg-any-a-1-1-any.pkg.tar.xz' 'any'
}
@test "add package with insufficient permissions fails" {
- releasePackage core 'pkg-simple-a' 'i686'
- releasePackage extra 'pkg-simple-b' 'i686'
+ releasePackage core 'pkg-any-a'
+ releasePackage extra 'pkg-any-b'
chmod -xwr ${FTP_BASE}/core/os/i686
run db-update
[ "$status" -ne 0 ]
chmod +xwr ${FTP_BASE}/core/os/i686
- checkRemovedPackage core 'pkg-simple-a-1-1-i686.pkg.tar.xz' 'i686'
- checkRemovedPackage extra 'pkg-simple-b-1-1-i686.pkg.tar.xz' 'i686'
+ checkRemovedPackage core 'pkg-any-a-1-1-any.pkg.tar.xz' 'any'
+ checkRemovedPackage extra 'pkg-any-b-1-1-any.pkg.tar.xz' 'any'
}
@test "package has to be a regular file" {
local p
local target=$(mktemp -d)
- for arch in "${ARCH_BUILD[@]}"; do
- releasePackage extra 'pkg-simple-a' $arch
- done
+ releasePackage extra 'pkg-simple-a'
for p in "${STAGING}"/extra/*i686*; do
mv "${p}" "${target}"
diff --git a/test/cases/ftpdir-cleanup.bats b/test/cases/ftpdir-cleanup.bats
index 2cb2e59..1a46fdf 100755
--- a/test/cases/ftpdir-cleanup.bats
+++ b/test/cases/ftpdir-cleanup.bats
@@ -16,9 +16,7 @@ __checkRepoRemovedPackage() {
local arch
for pkgbase in "${pkgs[@]}"; do
- for arch in "${ARCH_BUILD[@]}"; do
- releasePackage extra "${pkgbase}" "${arch}"
- done
+ releasePackage extra "${pkgbase}"
done
db-update
@@ -44,9 +42,7 @@ __checkRepoRemovedPackage() {
local arch
for pkgbase in "${pkgs[@]}"; do
- for arch in "${ARCH_BUILD[@]}"; do
- releasePackage extra "${pkgbase}" "${arch}"
- done
+ releasePackage extra "${pkgbase}"
done
db-update
@@ -69,7 +65,7 @@ __checkRepoRemovedPackage() {
local arch='any'
for pkgbase in "${pkgs[@]}"; do
- releasePackage extra "${pkgbase}" any
+ releasePackage extra "${pkgbase}"
done
db-update
@@ -91,9 +87,7 @@ __checkRepoRemovedPackage() {
local arch
for pkgbase in "${pkgs[@]}"; do
- for arch in "${ARCH_BUILD[@]}"; do
- releasePackage extra "${pkgbase}" "${arch}"
- done
+ releasePackage extra "${pkgbase}"
done
db-update
@@ -122,9 +116,7 @@ __checkRepoRemovedPackage() {
local arch
for pkgbase in ${pkgs[@]}; do
- for arch in "${ARCH_BUILD[@]}"; do
- releasePackage extra ${pkgbase} ${arch}
- done
+ releasePackage extra ${pkgbase}
done
db-update
diff --git a/test/cases/packages.bats b/test/cases/packages.bats
index 3e0246b..657de91 100755
--- a/test/cases/packages.bats
+++ b/test/cases/packages.bats
@@ -15,16 +15,16 @@ load ../lib/common
for pkgbase in "${tmp}"/*; do
pushd "${pkgbase}"
+ run namcap -e pkgnameindesc,tags PKGBUILD
+ [ -z "$output" ]
+
+ __buildPackage
+
# FIXME: Is overriding IFS a bats bug?
IFS=' '
pkgarchs=($(. PKGBUILD; echo ${arch[@]}))
for pkgarch in "${pkgarchs[@]}"; do
echo "Building ${pkgbase} on ${pkgarch}"
- run namcap -e pkgnameindesc,tags PKGBUILD
- [ -z "$output" ]
-
- __buildPackage "$pkgarch"
-
if [[ $pkgarch != "$ARCH_HOST" && $pkgarch != any ]]; then
# Cross-arch namcap is silly:
#
diff --git a/test/cases/sourceballs.bats b/test/cases/sourceballs.bats
index ba06b8d..f5e41a8 100755
--- a/test/cases/sourceballs.bats
+++ b/test/cases/sourceballs.bats
@@ -16,9 +16,7 @@ __checkRemovedSourcePackage() {
local arch
for pkgbase in "${pkgs[@]}"; do
- for arch in "${ARCH_BUILD[@]}"; do
- releasePackage extra "${pkgbase}" "${arch}"
- done
+ releasePackage extra "${pkgbase}"
done
db-update
@@ -33,7 +31,7 @@ __checkRemovedSourcePackage() {
local pkgbase
for pkgbase in "${pkgs[@]}"; do
- releasePackage extra "${pkgbase}" any
+ releasePackage extra "${pkgbase}"
done
db-update
@@ -50,9 +48,7 @@ __checkRemovedSourcePackage() {
local arch
for pkgbase in "${pkgs[@]}"; do
- for arch in "${ARCH_BUILD[@]}"; do
- releasePackage extra "${pkgbase}" "${arch}"
- done
+ releasePackage extra "${pkgbase}"
done
db-update
@@ -69,9 +65,7 @@ __checkRemovedSourcePackage() {
local arch
for pkgbase in "${pkgs[@]}"; do
- for arch in "${ARCH_BUILD[@]}"; do
- releasePackage extra "${pkgbase}" "${arch}"
- done
+ releasePackage extra "${pkgbase}"
done
db-update
sourceballs
diff --git a/test/fixtures/pkg-single-arch/PKGBUILD b/test/fixtures/pkg-single-arch/PKGBUILD
new file mode 100644
index 0000000..581efb4
--- /dev/null
+++ b/test/fixtures/pkg-single-arch/PKGBUILD
@@ -0,0 +1,12 @@
+pkgname=pkg-single-arch
+pkgver=1
+pkgrel=1
+pkgdesc="A package called ${pkgname}"
+arch=('x86_64')
+url='http://www.archlinux.org/'
+license=('GPL')
+depends=('glibc')
+
+package() {
+ install -D -m755 /bin/true ${pkgdir}/usr/bin/${pkgname}
+}
diff --git a/test/fixtures/pkg-single-epoch/PKGBUILD b/test/fixtures/pkg-single-epoch/PKGBUILD
new file mode 100644
index 0000000..c1bc3d6
--- /dev/null
+++ b/test/fixtures/pkg-single-epoch/PKGBUILD
@@ -0,0 +1,13 @@
+pkgname=pkg-single-epoch
+pkgver=1
+pkgrel=1
+epoch=1
+pkgdesc="A package called ${pkgname}"
+arch=('x86_64')
+url='http://www.archlinux.org/'
+license=('GPL')
+depends=('glibc')
+
+package() {
+ install -D -m755 /bin/true ${pkgdir}/usr/bin/${pkgname}
+}
diff --git a/test/lib/common.bash b/test/lib/common.bash
index ea01a2d..9c1ae4c 100644
--- a/test/lib/common.bash
+++ b/test/lib/common.bash
@@ -35,37 +35,44 @@ __getCheckSum() {
}
__buildPackage() {
- local arch=$1
+ local pkgdest=${1:-.}
local p
- local checkSum
+ local cache
+ local pkgarches
+ local tarch
local pkgnames
- if [[ -n ${PACKAGE_CACHE} ]]; then
- checkSum=$(__getCheckSum PKGBUILD)
- # TODO: Be more specific
- if cp -av ${PACKAGE_CACHE}/${checkSum}/*-${arch}${PKGEXT}{,.sig} .; then
- return 0
- fi
+ if [[ -n ${BUILDDIR} ]]; then
+ cache=${BUILDDIR}/$(__getCheckSum PKGBUILD)
+ if [[ -d ${cache} ]]; then
+ cp -Lv ${cache}/*${PKGEXT}{,.sig} ${pkgdest}
+ return 0
+ else
+ mkdir -p ${cache}
+ fi
fi
- if [ "${arch}" == 'any' ]; then
- sudo librechroot -n "dbscripts@${arch}" make
- else
- sudo librechroot -n "dbscripts@${arch}" -A "$arch" make
- fi
- sudo libremakepkg -n "dbscripts@${arch}"
+ pkgarches=($(. PKGBUILD; echo ${arch[@]}))
+ for tarch in ${pkgarches[@]}; do
+ if [ "${tarch}" == 'any' ]; then
+ sudo librechroot -n "dbscripts@${tarch}" make
+ else
+ sudo librechroot -n "dbscripts@${tarch}" -A "$tarch" make
+ fi
+ sudo PKGDEST="${pkgdest}" libremakepkg -n "dbscripts@${tarch}"
+ done
pkgnames=($(. PKGBUILD; print_all_package_names))
+ pushd ${pkgdest}
for p in ${pkgnames[@]/%/${PKGEXT}}; do
- [[ ${p} = *-${arch}${PKGEXT} ]] || continue
# Manually sign packages as "makepkg --sign" is buggy
gpg -v --detach-sign --no-armor --use-agent ${p}
- if [[ -n ${PACKAGE_CACHE} ]]; then
- mkdir -p ${PACKAGE_CACHE}/${checkSum}
- cp -Lv ${p}{,.sig} ${PACKAGE_CACHE}/${checkSum}/
+ if [[ -n ${BUILDDIR} ]]; then
+ cp -Lv ${p}{,.sig} ${cache}/
fi
done
+ popd
}
setup() {
@@ -128,11 +135,8 @@ teardown() {
releasePackage() {
local repo=$1
local pkgbase=$2
- local arch=$3
- local a
- local p
- local pkgver
- local pkgname
+ local pkgarches
+ local tarch
if [ ! -d "${TMP}/svn-packages-copy/${pkgbase}/trunk" ]; then
mkdir -p "${TMP}/svn-packages-copy/${pkgbase}"/{trunk,repos}
@@ -142,23 +146,21 @@ releasePackage() {
fi
pushd "${TMP}/svn-packages-copy/${pkgbase}/trunk/"
- __buildPackage ${arch}
- xbs release-client "${repo}" "${arch}"
- pkgver=$(. PKGBUILD; get_full_version)
- pkgname=($(. PKGBUILD; echo "${pkgname[@]}"))
- for p in "${pkgname[@]}"; do
- cp "${p}-${pkgver}-${arch}"${PKGEXT}{,.sig} "${STAGING}/${repo}/"
+
+ __buildPackage "${STAGING}"/${repo}
+ pkgarches=($(. PKGBUILD; echo ${arch[@]}))
+ for tarch in "${pkgarches[@]}"; do
+ xbs release-client "${repo}" "${tarch}"
done
popd
}
updatePackage() {
local pkgbase=$1
- local arch=$2
pushd "${TMP}/svn-packages-copy/${pkgbase}/trunk/"
__updatePKGBUILD
- __buildPackage ${arch}
+ __buildPackage
popd
}
--
2.16.2
More information about the Dev
mailing list