btrfs-progs: ci: cache built dependencies
authorDavid Sterba <dsterba@suse.com>
Sat, 24 Feb 2018 00:57:42 +0000 (01:57 +0100)
committerDavid Sterba <dsterba@suse.com>
Tue, 6 Mar 2018 10:28:38 +0000 (11:28 +0100)
For a slight speed up of the build, cache reiserfs and zstd. A quick
cache validity is done, or it can be cleared manually on travis web UI.

Signed-off-by: David Sterba <dsterba@suse.com>
.travis.yml
travis/build-dep-reiserfs
travis/build-dep-zstd

index 5f14a25..8883b3d 100644 (file)
@@ -25,6 +25,9 @@ compiler:
 
 cache:
   ccache: true
+  directories:
+    - tmp-cached-reiser
+    - tmp-cached-zstd
 
 git:
   depth: 1
index b32b805..72308ef 100755 (executable)
@@ -2,14 +2,28 @@
 # download, build and install reiserfs library
 
 version=3.6.27
+dir=tmp-cached-reiser
+stamp="$dir/.last-build-reiser"
+here=`pwd`
 
 set -e
 
-mkdir tmp-reiser
-cd tmp-reiser
+if [ -d "$dir" -a -f "$stamp" ]; then
+       echo "Using valid cache for $dir, built" `cat "$stamp"`
+       cd "$dir"
+       cd reiserfsprogs-${version}
+       sudo make install
+       exit 0
+fi
+
+echo "No or stale cache for $dir, rebuilding"
+rm -rf "$dir"
+mkdir "$dir"
+cd "$dir"
 wget https://www.kernel.org/pub/linux/kernel/people/jeffm/reiserfsprogs/v${version}/reiserfsprogs-${version}.tar.xz
 tar xf reiserfsprogs-${version}.tar.xz
 cd reiserfsprogs-${version}
 ./configure --prefix=/usr
 make all
 sudo make install
+date > "$here/$stamp"
index 22369dd..eae0be6 100755 (executable)
@@ -2,13 +2,27 @@
 # download, build and install the zstd library
 
 version=1.3.3
+dir=tmp-cached-zstd
+stamp="$dir/.last-build-zstd"
+here=`pwd`
 
 set -e
 
-mkdir tmp-zstd
-cd tmp-zstd
+if [ -d "$dir" -a -f "$stamp" ]; then
+       echo "Using valid cache for $dir, built" `cat "$stamp"`
+       cd "$dir"
+       cd zstd-${version}
+       sudo make install PREFIX=/usr
+       exit 0
+fi
+
+echo "No or stale cache for $dir, rebuilding"
+rm -rf "$dir"
+mkdir "$dir"
+cd "$dir"
 wget https://github.com/facebook/zstd/archive/v${version}.tar.gz
 tar xf v${version}.tar.gz
 cd zstd-${version}
 make
 sudo make install PREFIX=/usr
+date > "$here/$stamp"