From 03280808025bd473b45dea1f33107d5206a12f2a Mon Sep 17 00:00:00 2001 From: bigeagle Date: Thu, 18 Aug 2016 13:55:54 +0800 Subject: [PATCH] rubygems mirror script --- rubygems.sh | 49 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 49 insertions(+) create mode 100755 rubygems.sh diff --git a/rubygems.sh b/rubygems.sh new file mode 100755 index 0000000..7d98f23 --- /dev/null +++ b/rubygems.sh @@ -0,0 +1,49 @@ +#!/bin/bash +GEM=${GEM:-"gem"} +export HOME="/tmp/rubygems" +CONF="$HOME/.gem/.mirrorrc" + +mkdir -p "$HOME/.gem" + +INIT=${INIT:-"0"} + +if [ ! -d "$TUNASYNC_WORKING_DIR" ]; then + mkdir -p $TUNASYNC_WORKING_DIR + INIT="1" +fi + +echo "Syncing to $TUNASYNC_WORKING_DIR" + +if [[ $INIT == "0" ]]; then + + cat > $CONF << EOF +--- +- from: https://rubygems.org + to: ${TUNASYNC_WORKING_DIR} + parallelism: 10 + retries: 2 + delete: true + skiperror: true +EOF + + /usr/bin/timeout -s INT 7200 $GEM mirror + if [[ $? == 124 ]]; then + echo 'Sync timeout (/_\\)' + exit 1 + fi + +else + + cat > $CONF << EOF +--- +- from: https://rubygems.org + to: ${TUNASYNC_WORKING_DIR} + parallelism: 10 + retries: 2 + delete: true + skiperror: true +EOF + + $GEM mirror + +fi