Use posix format for dist tarballs

Traditionally Automake has defaulted to the V7 tar format when
creating tarballs for distributions.  One of the many limitions
of this format is a 99 character maximum path + file name limit.
This can cause problems when adding new test cases to the ZTS
due to the depth of the sub-tree and descriptive test names.

This change switches the build system to the posix (aliased as
pax) tar format which conforms to the POSIX.1-2001 specification.
This format does not suffer from the V7 limitations, was designed
to be compatible, and will become the default format in future
versions of GNU tar.

https://www.gnu.org/software/tar/manual/html_chapter/tar_8.html

As part of this change the blockfiles directories which were
originally removed due to this limit have been readded.

Reviewed by: Tim Chase <tim@chase2k.com>
Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>
Closes #7767
This commit is contained in:
Brian Behlendorf 2018-08-15 09:52:28 -07:00 committed by GitHub
parent 1fff937a4c
commit 1dfde3d9b2
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
65 changed files with 75 additions and 71 deletions

View File

@ -51,6 +51,7 @@ AC_PROG_LIBTOOL
AM_PROG_AS
AM_PROG_CC_C_O
AX_CODE_COVERAGE
_AM_PROG_TAR(pax)
ZFS_AC_LICENSE
ZFS_AC_PACKAGE
@ -242,6 +243,7 @@ AC_CONFIG_FILES([
tests/zfs-tests/tests/functional/cli_root/zpool_get/Makefile
tests/zfs-tests/tests/functional/cli_root/zpool_history/Makefile
tests/zfs-tests/tests/functional/cli_root/zpool_import/Makefile
tests/zfs-tests/tests/functional/cli_root/zpool_import/blockfiles/Makefile
tests/zfs-tests/tests/functional/cli_root/zpool_labelclear/Makefile
tests/zfs-tests/tests/functional/cli_root/zpool/Makefile
tests/zfs-tests/tests/functional/cli_root/zpool_offline/Makefile
@ -255,6 +257,7 @@ AC_CONFIG_FILES([
tests/zfs-tests/tests/functional/cli_root/zpool_status/Makefile
tests/zfs-tests/tests/functional/cli_root/zpool_sync/Makefile
tests/zfs-tests/tests/functional/cli_root/zpool_upgrade/Makefile
tests/zfs-tests/tests/functional/cli_root/zpool_upgrade/blockfiles/Makefile
tests/zfs-tests/tests/functional/cli_user/Makefile
tests/zfs-tests/tests/functional/cli_user/misc/Makefile
tests/zfs-tests/tests/functional/cli_user/zfs_list/Makefile

View File

@ -61,7 +61,7 @@ function cleanup
log_assert "Verify that copies cannot be set with pool version 1"
log_onexit cleanup
log_must cp $STF_SUITE/tests/functional/cli_root/zpool_upgrade/$ZPOOL_VERSION_1_FILES $TEST_BASE_DIR
log_must cp $STF_SUITE/tests/functional/cli_root/zpool_upgrade/blockfiles/$ZPOOL_VERSION_1_FILES $TEST_BASE_DIR
log_must bunzip2 $TEST_BASE_DIR/$ZPOOL_VERSION_1_FILES
log_must zpool import -d $TEST_BASE_DIR $ZPOOL_VERSION_1_NAME
log_must zfs create $ZPOOL_VERSION_1_NAME/$TESTFS

View File

@ -55,7 +55,7 @@ valid_args=("$TESTPOOL/$TESTFS1@snap $TESTPOOL/$TESTFS2@snap \
log_assert "verify zfs supports multiple consistent snapshots"
log_onexit cleanup
typeset -i i=1
test_data=$STF_SUITE/tests/functional/cli_root/zpool_upgrade/*.bz2
test_data=$STF_SUITE/tests/functional/cli_root/zpool_upgrade/blockfiles/*.bz2
log_note "destroy a list of valid snapshots"
for ds in $datasets; do

View File

@ -1,8 +1,9 @@
SUBDIRS = blockfiles
pkgdatadir = $(datadir)/@PACKAGE@/zfs-tests/tests/functional/cli_root/zpool_import
dist_pkgdata_SCRIPTS = \
setup.ksh \
cleanup.ksh \
zpool_import.kshlib \
import_cache_device_added.ksh \
import_cache_device_removed.ksh \
import_cache_device_replaced.ksh \
@ -40,11 +41,7 @@ dist_pkgdata_SCRIPTS = \
zpool_import_encrypted_load.ksh \
zpool_import_errata3.ksh
BLOCKFILES = \
unclean_export.dat.bz2 \
cryptv0.dat.bz2
dist_pkgdata_DATA = \
zpool_import.cfg \
zpool_import.kshlib
dist_pkgdata_DATA = $(BLOCKFILES) \
zpool_import.cfg
EXTRA_DIST = $(BLOCKFILES)

View File

@ -0,0 +1,4 @@
pkgdatadir = $(datadir)/@PACKAGE@/zfs-tests/tests/functional/cli_root/zpool_import/blockfiles
dist_pkgdata_DATA = \
unclean_export.dat.bz2 \
cryptv0.dat.bz2

View File

@ -53,7 +53,7 @@ function uncompress_pool
log_note "Creating pool from $POOL_FILE"
log_must bzcat \
$STF_SUITE/tests/functional/cli_root/zpool_import/$POOL_FILE.bz2 \
$STF_SUITE/tests/functional/cli_root/zpool_import/blockfiles/$POOL_FILE.bz2 \
> /$TESTPOOL/$POOL_FILE
return 0
}

View File

@ -45,7 +45,7 @@ function uncompress_pool
{
log_note "Creating pool from $POOL_FILE"
log_must bzcat \
$STF_SUITE/tests/functional/cli_root/zpool_import/$POOL_FILE.bz2 \
$STF_SUITE/tests/functional/cli_root/zpool_import/blockfiles/$POOL_FILE.bz2 \
> /$TESTPOOL/$POOL_FILE
return 0
}

View File

@ -1,3 +1,5 @@
SUBDIRS = blockfiles
pkgdatadir = $(datadir)/@PACKAGE@/zfs-tests/tests/functional/cli_root/zpool_upgrade
dist_pkgdata_SCRIPTS = \
setup.ksh \
@ -12,62 +14,6 @@ dist_pkgdata_SCRIPTS = \
zpool_upgrade_008_pos.ksh \
zpool_upgrade_009_neg.ksh
BLOCKFILES = \
zfs-broken-mirror1.dat.bz2 \
zfs-broken-mirror2.dat.bz2 \
zfs-pool-v1.dat.bz2 \
zfs-pool-v10.dat.bz2 \
zfs-pool-v11.dat.bz2 \
zfs-pool-v12.dat.bz2 \
zfs-pool-v13.dat.bz2 \
zfs-pool-v14.dat.bz2 \
zfs-pool-v15.dat.bz2 \
zfs-pool-v1mirror1.dat.bz2 \
zfs-pool-v1mirror2.dat.bz2 \
zfs-pool-v1mirror3.dat.bz2 \
zfs-pool-v1raidz1.dat.bz2 \
zfs-pool-v1raidz2.dat.bz2 \
zfs-pool-v1raidz3.dat.bz2 \
zfs-pool-v1stripe1.dat.bz2 \
zfs-pool-v1stripe2.dat.bz2 \
zfs-pool-v1stripe3.dat.bz2 \
zfs-pool-v2.dat.bz2 \
zfs-pool-v2mirror1.dat.bz2 \
zfs-pool-v2mirror2.dat.bz2 \
zfs-pool-v2mirror3.dat.bz2 \
zfs-pool-v2raidz1.dat.bz2 \
zfs-pool-v2raidz2.dat.bz2 \
zfs-pool-v2raidz3.dat.bz2 \
zfs-pool-v2stripe1.dat.bz2 \
zfs-pool-v2stripe2.dat.bz2 \
zfs-pool-v2stripe3.dat.bz2 \
zfs-pool-v3.dat.bz2 \
zfs-pool-v3hotspare1.dat.bz2 \
zfs-pool-v3hotspare2.dat.bz2 \
zfs-pool-v3hotspare3.dat.bz2 \
zfs-pool-v3mirror1.dat.bz2 \
zfs-pool-v3mirror2.dat.bz2 \
zfs-pool-v3mirror3.dat.bz2 \
zfs-pool-v3raidz1.dat.bz2 \
zfs-pool-v3raidz2.dat.bz2 \
zfs-pool-v3raidz21.dat.bz2 \
zfs-pool-v3raidz22.dat.bz2 \
zfs-pool-v3raidz23.dat.bz2 \
zfs-pool-v3raidz3.dat.bz2 \
zfs-pool-v3stripe1.dat.bz2 \
zfs-pool-v3stripe2.dat.bz2 \
zfs-pool-v3stripe3.dat.bz2 \
zfs-pool-v4.dat.bz2 \
zfs-pool-v5.dat.bz2 \
zfs-pool-v6.dat.bz2 \
zfs-pool-v7.dat.bz2 \
zfs-pool-v8.dat.bz2 \
zfs-pool-v9.dat.bz2 \
zfs-pool-v999.dat.bz2 \
zfs-pool-vBROKEN.dat.bz2
dist_pkgdata_DATA = $(BLOCKFILES) \
dist_pkgdata_DATA = \
zpool_upgrade.cfg \
zpool_upgrade.kshlib
EXTRA_DIST = $(BLOCKFILES)

View File

@ -0,0 +1,54 @@
pkgdatadir = $(datadir)/@PACKAGE@/zfs-tests/tests/functional/cli_root/zpool_upgrade/blockfiles
dist_pkgdata_DATA = \
zfs-broken-mirror1.dat.bz2 \
zfs-broken-mirror2.dat.bz2 \
zfs-pool-v1.dat.bz2 \
zfs-pool-v10.dat.bz2 \
zfs-pool-v11.dat.bz2 \
zfs-pool-v12.dat.bz2 \
zfs-pool-v13.dat.bz2 \
zfs-pool-v14.dat.bz2 \
zfs-pool-v15.dat.bz2 \
zfs-pool-v1mirror1.dat.bz2 \
zfs-pool-v1mirror2.dat.bz2 \
zfs-pool-v1mirror3.dat.bz2 \
zfs-pool-v1raidz1.dat.bz2 \
zfs-pool-v1raidz2.dat.bz2 \
zfs-pool-v1raidz3.dat.bz2 \
zfs-pool-v1stripe1.dat.bz2 \
zfs-pool-v1stripe2.dat.bz2 \
zfs-pool-v1stripe3.dat.bz2 \
zfs-pool-v2.dat.bz2 \
zfs-pool-v2mirror1.dat.bz2 \
zfs-pool-v2mirror2.dat.bz2 \
zfs-pool-v2mirror3.dat.bz2 \
zfs-pool-v2raidz1.dat.bz2 \
zfs-pool-v2raidz2.dat.bz2 \
zfs-pool-v2raidz3.dat.bz2 \
zfs-pool-v2stripe1.dat.bz2 \
zfs-pool-v2stripe2.dat.bz2 \
zfs-pool-v2stripe3.dat.bz2 \
zfs-pool-v3.dat.bz2 \
zfs-pool-v3hotspare1.dat.bz2 \
zfs-pool-v3hotspare2.dat.bz2 \
zfs-pool-v3hotspare3.dat.bz2 \
zfs-pool-v3mirror1.dat.bz2 \
zfs-pool-v3mirror2.dat.bz2 \
zfs-pool-v3mirror3.dat.bz2 \
zfs-pool-v3raidz1.dat.bz2 \
zfs-pool-v3raidz2.dat.bz2 \
zfs-pool-v3raidz21.dat.bz2 \
zfs-pool-v3raidz22.dat.bz2 \
zfs-pool-v3raidz23.dat.bz2 \
zfs-pool-v3raidz3.dat.bz2 \
zfs-pool-v3stripe1.dat.bz2 \
zfs-pool-v3stripe2.dat.bz2 \
zfs-pool-v3stripe3.dat.bz2 \
zfs-pool-v4.dat.bz2 \
zfs-pool-v5.dat.bz2 \
zfs-pool-v6.dat.bz2 \
zfs-pool-v7.dat.bz2 \
zfs-pool-v8.dat.bz2 \
zfs-pool-v9.dat.bz2 \
zfs-pool-v999.dat.bz2 \
zfs-pool-vBROKEN.dat.bz2

View File

@ -49,7 +49,7 @@ function create_old_pool
log_note "Creating $pool_name from $pool_files"
for pool_file in $pool_files; do
log_must bzcat \
$STF_SUITE/tests/functional/cli_root/zpool_upgrade/$pool_file.bz2 \
$STF_SUITE/tests/functional/cli_root/zpool_upgrade/blockfiles/$pool_file.bz2 \
>$TEST_BASE_DIR/$pool_file
done
log_must zpool import -d $TEST_BASE_DIR $pool_name

View File

@ -153,7 +153,7 @@ then
done
# copy a v1 pool from cli_root
cp $STF_SUITE/tests/functional/cli_root/zpool_upgrade/zfs-pool-v1.dat.bz2 \
cp $STF_SUITE/tests/functional/cli_root/zpool_upgrade/blockfiles/zfs-pool-v1.dat.bz2 \
/$TESTDIR
log_must bunzip2 /$TESTDIR/zfs-pool-v1.dat.bz2
log_must zpool import -d /$TESTDIR v1-pool