#!/usr/bin/env bash

set -o errexit          # Exit on most errors (see the manual)
set -o errtrace         # Make sure any error trap is inherited
set -o nounset          # Disallow expansion of unset variables
set -o pipefail         # Use last non-zero exit code in a pipeline
# set -o xtrace          # Trace the execution of the script (debug)

JENKINS_HOME="/var/lib/jenkins"

for i in "${JENKINS_HOME}"/jobs/Apollo/jobs/pipelines/jobs/*;
do
  project="$(basename "${i}")"
  if [[ -d "${JENKINS_HOME}/jobs/Apollo/jobs/Projects/jobs/${project}" ]];
  then
    echo "Found: ${JENKINS_HOME}/jobs/Apollo/jobs/Projects/jobs/${project}"
    rsync -avz "${JENKINS_HOME}/jobs/Apollo/jobs/Projects/jobs/${project}/branches" "${JENKINS_HOME}/jobs/Apollo/jobs/pipelines/jobs/${project}/" > /dev/null 2>&1
    rsync -avz "${JENKINS_HOME}/jobs/Apollo/jobs/Projects/jobs/${project}/indexing" "${JENKINS_HOME}/jobs/Apollo/jobs/pipelines/jobs/${project}/" > /dev/null 2>&1
  elif [[ -d "${JENKINS_HOME}/jobs/Apollo/jobs/Projects-master/jobs/${project}" ]];
  then
    echo "Found: ${JENKINS_HOME}/jobs/Apollo/jobs/Projects-master/jobs/${project}"
    rsync -avz "${JENKINS_HOME}/jobs/Apollo/jobs/Projects-master/jobs/${project}/branches" "${JENKINS_HOME}/jobs/Apollo/jobs/pipelines/jobs/${project}/" > /dev/null 2>&1
    rsync -avz "${JENKINS_HOME}/jobs/Apollo/jobs/Projects-master/jobs/${project}/indexing" "${JENKINS_HOME}/jobs/Apollo/jobs/pipelines/jobs/${project}/" > /dev/null 2>&1
  else
    echo "${project} is not found."
  fi
done
