[arch-projects] [dbscripts] [PATCH 1/2] pacman 5.1 compatibility
The print_all_package_names function changed its behavior, adapt Signed-off-by: Eli Schwartz <eschwartz@archlinux.org> --- test/lib/common.bash | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/test/lib/common.bash b/test/lib/common.bash index 36c735fd..738cc972 100644 --- a/test/lib/common.bash +++ b/test/lib/common.bash @@ -30,7 +30,7 @@ __buildPackage() { local cache local pkgarches local tarch - local pkgnames + local pkgfiles if [[ -n ${BUILDDIR} ]]; then cache=${BUILDDIR}/$(__getCheckSum PKGBUILD) @@ -45,14 +45,14 @@ __buildPackage() { for tarch in ${pkgarches[@]}; do if [ "${tarch}" == 'any' ]; then PKGDEST=${pkgdest} PKGEXT=${PKGEXT} makepkg -c + mapfile -tO "${#pkgfiles[@]}" pkgfiles < <(PKGDEST=${pkgdest} PKGEXT=${PKGEXT} makepkg --packagelist) else PKGDEST=${pkgdest} PKGEXT=${PKGEXT} CARCH=${tarch} makepkg -c + mapfile -tO "${#pkgfiles[@]}" pkgfiles < <(PKGDEST=${pkgdest} PKGEXT=${PKGEXT} CARCH=${tarch} makepkg --packagelist) fi done - pkgnames=($(. PKGBUILD; print_all_package_names)) - pushd ${pkgdest} - for p in ${pkgnames[@]/%/${PKGEXT}}; do + for p in ${pkgfiles[@]}; do # Manually sign packages as "makepkg --sign" is buggy gpg -v --detach-sign --no-armor --use-agent ${p} @@ -60,7 +60,6 @@ __buildPackage() { cp -Lv ${p}{,.sig} ${cache}/ fi done - popd } __archrelease() { -- 2.17.0
pacman 5.1 enforces this restriction. OTOH it is a simpler setup to set this as the user homedir directly in account creation (just like makechrootpkg has always done) than to create an additional, world-writable, directory. Signed-off-by: Eli Schwartz <eschwartz@archlinux.org> --- test/Dockerfile | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/test/Dockerfile b/test/Dockerfile index 3913f007..83c84499 100644 --- a/test/Dockerfile +++ b/test/Dockerfile @@ -2,8 +2,7 @@ FROM archlinux/base RUN pacman -Syu --noconfirm --needed sudo fakeroot awk subversion make kcov bash-bats gettext grep RUN pacman-key --init RUN echo '%wheel ALL=(ALL) NOPASSWD: ALL' > /etc/sudoers.d/wheel -RUN useradd -N -g users -G wheel -m tester -RUN install -d -m 1777 /build +RUN useradd -N -g users -G wheel -d /build -m tester USER tester RUN echo -e "\ Key-Type: RSA\n\ -- 2.17.0
On 05/28/2018 08:02 PM, Eli Schwartz wrote:
pacman 5.1 enforces this restriction. OTOH it is a simpler setup to set this as the user homedir directly in account creation (just like makechrootpkg has always done) than to create an additional, world-writable, directory.
Signed-off-by: Eli Schwartz <eschwartz@archlinux.org> --- test/Dockerfile | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/test/Dockerfile b/test/Dockerfile index 3913f007..83c84499 100644 --- a/test/Dockerfile +++ b/test/Dockerfile @@ -2,8 +2,7 @@ FROM archlinux/base RUN pacman -Syu --noconfirm --needed sudo fakeroot awk subversion make kcov bash-bats gettext grep RUN pacman-key --init RUN echo '%wheel ALL=(ALL) NOPASSWD: ALL' > /etc/sudoers.d/wheel -RUN useradd -N -g users -G wheel -m tester -RUN install -d -m 1777 /build +RUN useradd -N -g users -G wheel -d /build -m tester USER tester RUN echo -e "\ Key-Type: RSA\n\
I cannot see why this does not work, but https://travis-ci.org/archlinux/dbscripts/builds/384957987#L583 and https://travis-ci.org/archlinux/dbscripts/builds/384957987#L597 Despite useradd being told to create the homedir "/build", it doesn't seem to exist in the container. -- Eli Schwartz Bug Wrangler and Trusted User
participants (1)
-
Eli Schwartz