#!/bin/bash
# ===========================================================================

# Copyright (c) 2015 Eclipse Foundation and others.
# All rights reserved. This program and the accompanying materials
# are made available under the terms of the Eclipse Public License v1.0
# which accompanies this distribution, and is available at
# http://www.eclipse.org/legal/epl-v10.html
#
# Contributors:
#    Christopher Guindon (Eclipse Foundation)
# ===========================================================================

LOCKFILE=/tmp/update-database-update
if [ ! -f $LOCKFILE ]; then
  touch $LOCKFILE;
  if [ $# -ne 0 ]; then

    # Default values
    DATABASE="default"
    TARGET="slave"

    # api.eclipse.org
    if [ $1 = "api" ]; then
      DATABASE="eclipse_api"
      RESULT_FILE="api.eclipse.org"
      REMOTE_HOSTNAME="api-vm1"
      REMOTE_SETTINGS_PATH="/localsite/api.eclipse.org/sites/default/"
    fi

    # accounts.eclipse.org
    if [ $1 = "accounts" ]; then
      DATABASE="eclipse_accounts"
      RESULT_FILE="accounts.eclipse.org"
      REMOTE_HOSTNAME="api-vm1"
      REMOTE_SETTINGS_PATH="/localsite/api.eclipse.org/sites/accounts.eclipse.org/"
    fi

    if [ $1 = "eclipse_accounts_shared" ]; then
      DATABASE="eclipse_accounts_shared"
      RESULT_FILE="eclipse_accounts_shared"
      REMOTE_HOSTNAME="api-vm1"
      REMOTE_SETTINGS_PATH="/localsite/api.eclipse.org/sites/default/"
    fi

    # Make sure the user specified a valid web site to build.
    if [ -z ${REMOTE_HOSTNAME+x} ]; then
      echo "You must enter a valid site name in order for this command to work.  Try viewing the contents of this file with an editor"
      exit
    fi

    echo "Running SQL Dump from $REMOTE_HOSTNAME server..."
    COMMAND="cd $REMOTE_SETTINGS_PATH && drush sql-dump --result-file=~/webdev/sql/$RESULT_FILE.sql --database=$DATABASE --target=$TARGET --gzip"
    ssh $REMOTE_HOSTNAME $COMMAND
    echo "Done"

    rm $LOCKFILE

  else
    echo "USAGE: ./sync_database.sh SITENAME"
  fi
else
  echo "Another job is running.  Check the existence of $LOCKFILE"
  exit
fi




