From a8994ec765acb9573f7ee4304b74afa459204a38 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89rico=20Rolim?= Date: Wed, 2 Dec 2020 15:06:37 -0300 Subject: [PATCH 1/5] common/travis/fetch-xtools: make it work inside masterdir. --- common/travis/fetch-xtools.sh | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/common/travis/fetch-xtools.sh b/common/travis/fetch-xtools.sh index 7abf44bcc12..0dd9e6c532c 100755 --- a/common/travis/fetch-xtools.sh +++ b/common/travis/fetch-xtools.sh @@ -2,9 +2,18 @@ # # fetch-xtools.sh +TAR=tar +command -v bsdtar >/dev/null && TAR=bsdtar +URL="https://github.com/leahneukirchen/xtools/archive/master.tar.gz" +FILE="xtools.tar.gz" + mkdir -p /tmp/bin /bin/echo -e '\x1b[32mInstalling xtools...\x1b[0m' -wget -q -O - https://github.com/leahneukirchen/xtools/archive/master.tar.gz | \ - gunzip | tar x -C /tmp/bin --wildcards "xtools-master/x*" \ - --strip-components=1 || exit 1 +if command -v wget >/dev/null; then + wget -q -O "$FILE" "$URL" || exit 1 +else + xbps-fetch -o "$FILE" "$URL" || exit 1 +fi + +$TAR xf "$FILE" -C /tmp/bin --strip-components=1 || exit 1 From 3e85bfc84073c0a452f64b7d430f8b3e21122cd6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89rico=20Rolim?= Date: Wed, 2 Dec 2020 15:30:48 -0300 Subject: [PATCH 2/5] common/travis/build.sh: don't clean masterdir for native builds. This allows tests to be run in a separate step without rebuilding everything. --- common/travis/build.sh | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/common/travis/build.sh b/common/travis/build.sh index 1c45910ea69..483bcf54755 100755 --- a/common/travis/build.sh +++ b/common/travis/build.sh @@ -6,6 +6,11 @@ if [ "$1" != "$2" ]; then arch="-a $2" fi +# keep builddir so tests can be run without rebuilding everything +if [ "$3" = 1 ]; then + test="-C" +fi + PKGS=$(/hostrepo/xbps-src sort-dependencies $(cat /tmp/templates)) NPROCS=1 @@ -16,7 +21,7 @@ fi export FTP_RETRIES=10 for pkg in ${PKGS}; do - /hostrepo/xbps-src -j$NPROCS -H "$HOME"/hostdir $arch pkg "$pkg" + /hostrepo/xbps-src -j$NPROCS -H "$HOME"/hostdir $arch $test pkg "$pkg" [ $? -eq 1 ] && exit 1 done From a7ff86328e2271b1886b4bc061c46e42f6625055 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89rico=20Rolim?= Date: Wed, 2 Dec 2020 15:31:32 -0300 Subject: [PATCH 3/5] common/travis/test.sh: create file. --- common/travis/test.sh | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) create mode 100755 common/travis/test.sh diff --git a/common/travis/test.sh b/common/travis/test.sh new file mode 100755 index 00000000000..571747c0755 --- /dev/null +++ b/common/travis/test.sh @@ -0,0 +1,24 @@ +#!/bin/sh +# +# test.sh + +if [ "$1" != 1 ]; then + echo "Skipping tests..." + exit 0 +fi + +PKGS=$(cat /tmp/templates) + +NPROCS=1 +if [ -r /proc/cpuinfo ]; then + NPROCS=$(grep ^proc /proc/cpuinfo|wc -l) +fi + +export FTP_RETRIES=10 + +for pkg in ${PKGS}; do + /hostrepo/xbps-src -j$NPROCS -H "$HOME"/hostdir -Q check "$pkg" + [ $? -eq 1 ] && exit 1 +done + +exit 0 From 1ce15d710e9d11547424582daadcc235fa61f1ea Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89rico=20Rolim?= Date: Sat, 28 Nov 2020 15:47:04 -0300 Subject: [PATCH 4/5] .github/workflows: run tests on CI for native builds. Also fix "list contents" step by adding a fetch-xtools step. --- .github/workflows/build.yaml | 26 ++++++++++++++++++-------- 1 file changed, 18 insertions(+), 8 deletions(-) diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index 33186037f8d..79d4368d77c 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -34,19 +34,20 @@ jobs: PATH: '/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/sbin:/usr/local/bin:/tmp/bin' ARCH: '${{ matrix.config.arch }}' BOOTSTRAP: '${{ matrix.config.bootstrap }}' + TEST: '${{ matrix.config.test }}' HOSTREPO: /hostrepo strategy: fail-fast: false matrix: config: - - { arch: x86_64, bootstrap: x86_64 } - - { arch: i686, bootstrap: i686 } - - { arch: aarch64, bootstrap: x86_64 } - - { arch: armv7l, bootstrap: x86_64 } - - { arch: x86_64-musl, bootstrap: x86_64-musl } - - { arch: armv6l-musl, bootstrap: x86_64-musl } - - { arch: aarch64-musl, bootstrap: x86_64-musl } + - { arch: x86_64, bootstrap: x86_64, test: 1 } + - { arch: i686, bootstrap: i686, test: 1 } + - { arch: aarch64, bootstrap: x86_64, test: 0 } + - { arch: armv7l, bootstrap: x86_64, test: 0 } + - { arch: x86_64-musl, bootstrap: x86_64-musl, test: 1 } + - { arch: armv6l-musl, bootstrap: x86_64-musl, test: 0 } + - { arch: aarch64-musl, bootstrap: x86_64-musl, test: 0 } steps: - name: Prepare container @@ -73,9 +74,18 @@ jobs: ( here="$(pwd)" cd / - "$here/common/travis/build.sh" "$BOOTSTRAP" "$ARCH" + "$here/common/travis/build.sh" "$BOOTSTRAP" "$ARCH" "$TEST" ) + - name: Check packages + run: | + ( + here="$(pwd)" + cd / + "$here/common/travis/test.sh" "$TEST" + ) + + - run: common/travis/fetch-xtools.sh - name: Show files run: | ( From ee981114c9ad746e32f39f35dc4901a974f4e74b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89rico=20Rolim?= Date: Sat, 28 Nov 2020 15:48:53 -0300 Subject: [PATCH 5/5] [temporary] test make's test suite. --- srcpkgs/make/template | 1 + 1 file changed, 1 insertion(+) diff --git a/srcpkgs/make/template b/srcpkgs/make/template index 0aebcbc70be..eecf8233b05 100644 --- a/srcpkgs/make/template +++ b/srcpkgs/make/template @@ -1,4 +1,5 @@ # Template file for 'make' +# time to test pkgname=make version=4.3 revision=3