#!/bin/bash
set -e
set -o pipefail
LOG="$PWD/my.log"
cleanup() {
network_up
}
network_up() {
sudo ifup eth0
}
network_down() {
sudo ifdown eth0
}
msg() { echo "$@" >> "$LOG"; echo "$@" 1>&2; }
run() {
local envcmd="" n=$SECONDS
msg "[start]" "${@}"
"$@"
r=$?
msg "[finished ret=$r took=$(($SECONDS-n))]" "$@"
return $r
}
trap cleanup EXIT
npm_install=( npm --cache-min=Infinity install azure-cli )
# do it as would be in the pull section
network_up
rm -Rf pull
mkdir pull
msg pull network-up
( cd pull && run "${npm_install[@]}" ) 2>&1 | tee pull.log
msg build network-down
network_down
rm -Rf build
mkdir build
( cd build && run "${npm_install[@]}" ) 2>&1 | tee build.log