summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPanu Matilainen <pmatilai@redhat.com>2021-06-22 13:08:28 +0300
committerPanu Matilainen <pmatilai@redhat.com>2021-06-22 15:02:29 +0300
commit44e6f1ea5cf1384374e42174f97d33296b1b1c3f (patch)
tree3f51ba00d832ac013e0919c5384d75e70c07cc10
parent90a333368ad7d928f020bbd8a3ad860f75cdee7a (diff)
downloadrpm-44e6f1ea5cf1384374e42174f97d33296b1b1c3f.tar.gz
Use a pre-built package for the hardlink test for reproducability
Besides rpm version string length, the file offsets also depend on at least libmagic version and probably something else I'm missing now, this is just too fragile to be useful. Use a pre-built package to avoid delaying 4.17 beta just because of such a dumb thing, figure out something better later (pre-built is not ideal as inevitably the pre-built will need to be re-built too and that gets difficult sometimes) (cherry picked from commit d71cfc276d6a1196273c7d1e65bffa0eb4c7a01a)
-rw-r--r--tests/Makefile.am1
-rw-r--r--tests/data/RPMS/hlinktest-1.0-1.noarch.rpmbin0 -> 8185 bytes
-rw-r--r--tests/rpmi.at24
3 files changed, 7 insertions, 18 deletions
diff --git a/tests/Makefile.am b/tests/Makefile.am
index 3bda68093..a41ce10de 100644
--- a/tests/Makefile.am
+++ b/tests/Makefile.am
@@ -98,6 +98,7 @@ EXTRA_DIST += data/RPMS/hello-1.0-1.ppc64.rpm
EXTRA_DIST += data/RPMS/hello-2.0-1.i686.rpm
EXTRA_DIST += data/RPMS/hello-2.0-1.x86_64.rpm
EXTRA_DIST += data/RPMS/hello-2.0-1.x86_64-signed.rpm
+EXTRA_DIST += data/RPMS/hlinktest-1.0-1.noarch.rpm
EXTRA_DIST += data/SRPMS/foo-1.0-1.src.rpm
EXTRA_DIST += data/SRPMS/hello-1.0-1.src.rpm
EXTRA_DIST += data/SOURCES/hello.c
diff --git a/tests/data/RPMS/hlinktest-1.0-1.noarch.rpm b/tests/data/RPMS/hlinktest-1.0-1.noarch.rpm
new file mode 100644
index 000000000..9bd968f7a
--- /dev/null
+++ b/tests/data/RPMS/hlinktest-1.0-1.noarch.rpm
Binary files differ
diff --git a/tests/rpmi.at b/tests/rpmi.at
index 00a7aa294..ee35bdce8 100644
--- a/tests/rpmi.at
+++ b/tests/rpmi.at
@@ -729,19 +729,7 @@ AT_SETUP([rpm -i hardlinks])
AT_KEYWORDS([build install])
RPMDB_INIT
-# Need a reproducable test package
-runroot rpmbuild \
- --define "%optflags -O2 -g" \
- --define "%_target_platform noarch-linux" \
- --define "%_binary_payload w.ufdio" \
- --define "%_buildhost localhost" \
- --define "%use_source_date_epoch_as_buildtime 1" \
- --define "%source_date_epoch_from_changelog 1" \
- --define "%clamp_mtime_to_source_date_epoch 1" \
- --with owned_dir \
- -bb --quiet /data/SPECS/hlinktest.spec
-
-pkg="/build/RPMS/noarch/hlinktest-1.0-1.noarch.rpm"
+pkg="/data/RPMS/hlinktest-1.0-1.noarch.rpm"
cp "${RPMTEST}/${pkg}" "${RPMTEST}/tmp/1.rpm"
dd if=/dev/zero of="${RPMTEST}/tmp/1.rpm" \
@@ -793,7 +781,7 @@ error: hlinktest-1.0-1.noarch: install failed
AT_CHECK([
RPMDB_INIT
-runroot rpm -i /build/RPMS/noarch/hlinktest-1.0-1.noarch.rpm
+runroot rpm -i "${pkg}"
runroot rpm -q --qf "[[%{filenlinks} %{filenames}\n]]%{longsize}\n" hlinktest
ls -i "${RPMTEST}"/foo/hello* | awk {'print $1'} | sort -u | wc -l
runroot rpm -e hlinktest
@@ -815,7 +803,7 @@ runroot rpm -e hlinktest
AT_CHECK([
RPMDB_INIT
-runroot rpm -i --excludepath=/foo/zzzz /build/RPMS/noarch/hlinktest-1.0-1.noarch.rpm
+runroot rpm -i --excludepath=/foo/zzzz "${pkg}"
runroot rpm -Vv --nogroup --nouser hlinktest
runroot rpm -e hlinktest
],
@@ -833,7 +821,7 @@ runroot rpm -e hlinktest
AT_CHECK([
RPMDB_INIT
-runroot rpm -i --excludepath=/foo/aaaa /build/RPMS/noarch/hlinktest-1.0-1.noarch.rpm
+runroot rpm -i --excludepath=/foo/aaaa "${pkg}"
runroot rpm -Vv --nogroup --nouser hlinktest
runroot rpm -e hlinktest
],
@@ -851,7 +839,7 @@ runroot rpm -e hlinktest
AT_CHECK([
RPMDB_INIT
-runroot rpm -i --excludepath=/foo/aaaa --excludepath=/foo/zzzz /build/RPMS/noarch/hlinktest-1.0-1.noarch.rpm
+runroot rpm -i --excludepath=/foo/aaaa --excludepath=/foo/zzzz "${pkg}"
runroot rpm -Vv --nogroup --nouser hlinktest
runroot rpm -e hlinktest
],
@@ -869,7 +857,7 @@ runroot rpm -e hlinktest
AT_CHECK([
RPMDB_INIT
-runroot rpm -i --excludepath=/foo/hello-foo /build/RPMS/noarch/hlinktest-1.0-1.noarch.rpm
+runroot rpm -i --excludepath=/foo/hello-foo "${pkg}"
runroot rpm -Vv --nogroup --nouser hlinktest
runroot rpm -e hlinktest
],