tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

tools.sh (1310B)


      1 #!/usr/bin/env bash
      2 
      3 set -v -e -x
      4 
      5 # Assert that we're not running as root.
      6 if [[ $(id -u) -eq 0 ]]; then
      7    # This exec is still needed until aarch64 images are updated (Bug 1488325).
      8    # Remove when images are updated.  Until then, assert that things are good.
      9    [[ $(uname -m) == aarch64 ]]
     10    exec su worker -c "$0 $*"
     11 fi
     12 
     13 export PATH="${PATH}:/home/worker/.cargo/bin/:/usr/lib/go-1.6/bin"
     14 
     15 # Usage: hg_clone repo dir [revision=@]
     16 hg_clone() {
     17    repo=$1
     18    dir=$2
     19    rev=${3:-@}
     20    if [ -d "$dir" ]; then
     21        hg pull -R "$dir" -ur "$rev" "$repo" && return
     22        rm -rf "$dir"
     23    fi
     24    for i in 0 2 5; do
     25        sleep $i
     26        hg clone -r "$rev" "$repo" "$dir" && return
     27        rm -rf "$dir"
     28    done
     29    exit 1
     30 }
     31 
     32 fetch_dist() {
     33    if [ "$TASKCLUSTER_ROOT_URL" = "https://taskcluster.net" ] || [ -z "$TASKCLUSTER_ROOT_URL" ]; then
     34        url=https://queue.taskcluster.net/v1/task/$TC_PARENT_TASK_ID/artifacts/public/dist.tar.bz2
     35    else
     36        url=$TASKCLUSTER_ROOT_URL/api/queue/v1/task/$TC_PARENT_TASK_ID/artifacts/public/dist.tar.bz2
     37    fi
     38    if [ ! -d "dist" ]; then
     39        for i in 0 2 5; do
     40            sleep $i
     41            curl --retry 3 -Lo dist.tar.bz2 $url && tar xvjf dist.tar.bz2 && return
     42            rm -fr dist.tar.bz2 dist
     43        done
     44        exit 1
     45    fi
     46 }