• Brian Behlendorf's avatar
    Add zimport.sh compatibility test script · a16bc6bd
    Brian Behlendorf authored
    
    
    Verify that an assortment of known good reference pools can be imported
    using different versions of the ZoL code.
    
    By default references pools for the major ZFS implementation will be
    checked against the most recent ZoL tags and the master development branch.
    Alternate tags or branches may be verified with the '-s <src-tag> option.
    Passing the keyword "installed" will instruct the script to test whatever
    version is installed.
    
    Preferentially a reference pool is used for all tests.  However, if one
    does not exist and the pool-tag matches one of the src-tags then a new
    reference pool will be created using binaries from that source build.
    This is particularly useful when you need to test your changes before
    opening a pull request.
    
    New reference pools may be added by placing a bzip2 compressed tarball
    of the pool in the scripts/zpool-example directory and then passing
    the -p <pool-tag> option.  To increase the test coverage reference pools
    should be collected for all the major ZFS implementations.  Having these
    pools easily available is also helpful to the developers.
    
    Care should be taken to run these tests with a kernel supported by all
    the listed tags.  Otherwise build failure will cause false positives.
    
    EXAMPLES:
    
    The following example will verify the zfs-0.6.2 tag, the master branch,
    and the installed zfs version can correctly import the listed pools.
    Note there is no reference pool available for master and installed but
    because binaries are available one is automatically constructed.  The
    working directory is also preserved between runs (-k) preventing the
    need to rebuild from source for multiple runs.
    
     zimport.sh -k -f /var/tmp/zimport \
         -s "zfs-0.6.1 zfs-0.6.2 master installed" \
         -p "all master installed"
    
    --------------------- ZFS on Linux Source Versions --------------
                    zfs-0.6.1       zfs-0.6.2       master          0.6.2-180
    -----------------------------------------------------------------
    Clone SPL       Skip		Skip		Skip		Skip
    Clone ZFS       Skip		Skip		Skip		Skip
    Build SPL       Skip		Skip		Skip		Skip
    Build ZFS       Skip		Skip		Skip		Skip
    -----------------------------------------------------------------
    zevo-1.1.1      Pass		Pass		Pass		Pass
    zol-0.6.1       Pass		Pass		Pass		Pass
    zol-0.6.2-173   Fail		Fail		Pass		Pass
    zol-0.6.2       Pass		Pass		Pass		Pass
    master          Fail		Fail		Pass		Pass
    installed       Pass		Pass		Pass		Pass
    Signed-off-by: default avatarBrian Behlendorf <behlendorf1@llnl.gov>
    Signed-off-by: default avatarTim Chase <tim@chase2k.com>
    Signed-off-by: default avatarRichard Yao <ryao@gentoo.org>
    Issue #2094
    a16bc6bd
.gitmodules 108 Bytes