#!/bin/bash
#
# This file is part of GetTor, a Tor Browser distribution system.
#
# :authors: hiro <hiro@torproject.org>
#           see also AUTHORS file
#
# :copyright:   (c) 2008-2019, The Tor Project, Inc.
#
# :license: This is Free Software. See LICENSE for license information.

cd ~/releases
git checkout master
git branch -D releases
git push origin --delete releases
git branch -D torbrowser-releases
git push github --delete torbrowser-releases

git fetch --all --prune

git add .

git checkout -b torbrowser-releases
git push -f --follow-tags github torbrowser-releases
git checkout git checkout -b releases
git push -f --follow-tags origin releases

for row in $(
    curl -s 'https://aus1.torproject.org/torbrowser/update_3/release/downloads.json' |
    jq -r '.downloads'
  ); do
    r=$(
      echo ${row} |
      egrep -o 'https?://[^ ]+' |
      tr -d '",'
    );
    if [[ $r = *[!\ ]* ]]; then
      wget $r
      git fetch --all
      git checkout -b releases
      git add .
      git commit -m '[dist ci] commit from CI runner - update with new torbrowser downloads'
      diffs=$(git diff origin releases)
      if [ -z "$diffs" ]; then
          echo "No new releases"
      else
          git push -f --follow-tags origin releases
      fi
      git checkout -b torbrowser-releases
      diffs=$(git diff github torbrowser-releases)
      if [ -z "$diffs" ]; then
          echo "No new releases"
      else
          git push -f --follow-tags github torbrowser-releases
      fi
    fi;
done

rclone delete gdrive:releases

for f in $(ls); do
  # Update Google Drive
  rclone copy $f gdrive:releases
  # Update Internet Archive
  ia upload <identifier> - --remote-name=$f --metadata="title:New Tor Browser release ${f}."
done
