diff --git a/script/rebund b/script/rebund deleted file mode 100755 index d2ff7901..00000000 --- a/script/rebund +++ /dev/null @@ -1,140 +0,0 @@ -#!/usr/bin/env bash -# -# rebund(1) -# -# Author: Julien Letessier -# Homepage: https://github.com/mezis/rebund -# License: -# -# Copyright (c) 2014 HouseTrip Ltd -# -# MIT License -# -# Permission is hereby granted, free of charge, to any person obtaining -# a copy of this software and associated documentation files (the -# "Software"), to deal in the Software without restriction, including -# without limitation the rights to use, copy, modify, merge, publish, -# distribute, sublicense, and/or sell copies of the Software, and to -# permit persons to whom the Software is furnished to do so, subject to -# the following conditions: -# -# The above copyright notice and this permission notice shall be -# included in all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -# NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE -# LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -# OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION -# WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - - -# Configuration -: ${REBUND_CREDENTIALS:=user:secret} -: ${REBUND_ENDPOINT=http://keyfile-production.herokuapp.com} -: ${REBUND_TARBALL:=bundle.tbz} -: ${REBUND_BUNDLE_DIR:=vendor/bundle} - - - -log() { - echo "rebund: $*" > /dev/stderr -} - -die() { - echo "fatal: $*" > /dev/stderr - exit 1 -} - -success() { - log "$*" - exit 0 -} - -on_error() { - die 'unknown error.' -} - -get_ruby_version() { - bundle exec ruby --version -} - -get_gemfile() { - bundle exec sh -c 'echo $BUNDLE_GEMFILE' -} - -calculate_hash() { - (get_ruby_version ; cat $(get_gemfile)) | openssl sha256 | sed -e 's/.* //' -} - -build_tarball() { - test -e $REBUND_BUNDLE_DIR || die "cannot find bundle directory in ${REBUND_BUNDLE_DIR}" - test -e $REBUND_TARBALL && success 'bundle already uploaded' - tar jcf $REBUND_TARBALL $REBUND_BUNDLE_DIR -} - -upload_tarball() { - curl --fail \ - -F filedata=@${REBUND_TARBALL} \ - --digest --user $REBUND_CREDENTIALS \ - ${REBUND_ENDPOINT}/$(calculate_hash) \ - || success "could not upload bundle" -} - -expand_tarball() { - test -e $REBUND_TARBALL || success "no tarball" - tar jxf $REBUND_TARBALL -} - -download_tarball() { - curl --fail \ - --location \ - -o ${REBUND_TARBALL} \ - --digest --user $REBUND_CREDENTIALS \ - ${REBUND_ENDPOINT}/$(calculate_hash) \ - || success "could not download bundle" -} - -rebund_upload() { - build_tarball - upload_tarball -} - -rebund_download() { - download_tarball - expand_tarball -} - -rebund_usage() { - success "usage: $0 [-v] [upload|download]" -} - -# cath errors -trap on_error ERR - -# inherit the ERR trap in subprocesses -set -E - -while test $# -gt 0 ; do - case $1 in - -v) - set -x - ;; - upload) - rebund_upload - exit 0 - ;; - download) - rebund_download - exit 0 - ;; - *) - rebund_usage - exit 1 - ;; - esac - shift -done - -rebund_usage