123456789101112131415161718192021222324252627282930313233343536373839404142434445464748 |
- #!/usr/bin/env bash
- set -e
- compute_md5() {
- local output="$(openssl md5)"
- echo "${output##* }"
- }
- download() {
- curl --tcp-nodelay -qsfL "$1" -o "$2"
- }
- bundle_path="vendor/bundle"
- gemfile_hash="$(compute_md5 <"${BUNDLE_GEMFILE:-Gemfile}.lock")"
- cache_name="${TRAVIS_RUBY_VERSION}.tgz"
- fetch_url="http://${AMAZON_S3_BUCKET}.s3.amazonaws.com/${cache_name}"
- if download "$fetch_url" "$cache_name"; then
- echo "Reusing cached bundle ${cache_name}"
- tar xzf "$cache_name"
- fi
- bundle "$@"
- if [ ! -f "$cache_name" ]; then
- echo "Caching \`${bundle_path}' to S3"
- tar czf "$cache_name" "$bundle_path"
- script/s3-put "$cache_name" "${AMAZON_S3_BUCKET}:${cache_name}"
- fi
|