]> granicus.if.org Git - zfs/commitdiff
Add .travis.yml
authorGeorge Melikov <mail@gmelikov.ru>
Mon, 13 Nov 2017 17:18:18 +0000 (20:18 +0300)
committerBrian Behlendorf <behlendorf1@llnl.gov>
Mon, 13 Nov 2017 17:18:18 +0000 (09:18 -0800)
Travis builders have maximum work time ~49 minutes,
so we have to use 5 builders and spread the ZTS over
them using test group tags.

Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
Reviewed-by: Giuseppe Di Natale <dinatale2@llnl.gov>
Signed-off-by: George Melikov <mail@gmelikov.ru>
Closes #6829

.travis.yml [new file with mode: 0644]

diff --git a/.travis.yml b/.travis.yml
new file mode 100644 (file)
index 0000000..620c043
--- /dev/null
@@ -0,0 +1,38 @@
+language: c
+sudo: required
+env:
+  global:
+    # Travis limits maximum log size, we have to cut tests output 
+    - ZFS_TEST_TRAVIS_LOG_MAX_LENGTH=800
+  matrix:
+    # tags are mainly in ascending order
+    - ZFS_TEST_TAGS='acl,atime,bootfs,cachefile,casenorm,chattr,checksum,clean_mirror,compression,ctime,delegate,devices,events,exec,fault,features,grow_pool,zdb,zfs,zfs_bookmark,zfs_change-key,zfs_clone,zfs_copies,zfs_create,zfs_diff,zfs_get,zfs_inherit,zfs_load-key,zfs_rename'
+    - ZFS_TEST_TAGS='cache,history,hkdf,inuse,zfs_property,zfs_receive,zfs_reservation,zfs_send,zfs_set,zfs_share,zfs_snapshot,zfs_unload-key,zfs_unmount,zfs_unshare,zfs_upgrade,zpool,zpool_add,zpool_attach,zpool_clear,zpool_create,zpool_destroy,zpool_detach'
+    - ZFS_TEST_TAGS='grow_replicas,mv_files,cli_user,zfs_mount,zfs_promote,zfs_rollback,zpool_events,zpool_expand,zpool_export,zpool_get,zpool_history,zpool_import,zpool_labelclear,zpool_offline,zpool_online,zpool_remove,zpool_reopen,zpool_replace,zpool_scrub,zpool_set,zpool_status,zpool_sync,zpool_upgrade'
+    - ZFS_TEST_TAGS='zfs_destroy,large_files,largest_pool,link_count,migration,mmap,mmp,mount,nestedfs,no_space,nopwrite,online_offline,pool_names,poolversion,privilege,quota,raidz,redundancy,rsend'
+    - ZFS_TEST_TAGS='inheritance,refquota,refreserv,rename_dirs,replacement,reservation,rootpool,scrub_mirror,slog,snapshot,snapused,sparse,threadsappend,tmpfile,truncate,upgrade,userquota,vdev_zaps,write_dirs,xattr,zvol,libzfs'
+before_install:
+    - sudo apt-get -qq update
+    - sudo apt-get install --yes -qq build-essential autoconf libtool gawk alien fakeroot linux-headers-$(uname -r)
+    - sudo apt-get install --yes -qq zlib1g-dev uuid-dev libattr1-dev libblkid-dev libselinux-dev libudev-dev libssl-dev
+    # packages for tests
+    - sudo apt-get install --yes -qq parted lsscsi ksh attr acl nfs-kernel-server fio
+install:
+    - git clone --depth=1 https://github.com/zfsonlinux/spl
+    - cd spl
+    - git checkout master
+    - sh autogen.sh
+    - ./configure
+    - make --no-print-directory -s pkg-utils pkg-kmod
+    - sudo dpkg -i *.deb
+    - cd ..
+    - sh autogen.sh
+    - ./configure
+    - make --no-print-directory -s pkg-utils pkg-kmod
+    - sudo dpkg -i *.deb
+script:
+    - travis_wait 50 /usr/share/zfs/zfs-tests.sh -v -T $ZFS_TEST_TAGS
+after_failure:
+    - find /var/tmp/test_results/current/log -type f -name '*' -printf "%f\n" -exec cut -c -$ZFS_TEST_TRAVIS_LOG_MAX_LENGTH {} \;
+after_success:
+    - find /var/tmp/test_results/current/log -type f -name '*' -printf "%f\n" -exec cut -c -$ZFS_TEST_TRAVIS_LOG_MAX_LENGTH {} \;