#! /usr/bin/env bash clone_work_dir="/home/jonnybravo/workdir" script_folder="$(pwd)" logfile=/home/jonnybravo/sysint-migration-submodule.log source "func.sh" #create_clone_Folder if [ ! -d $clone_work_dir ] then mkdir -p $clone_work_dir if [ $? -eq 0 ]; then echo " $(date '+%Y-%m-%d %H:%M:%S') - $clone_work_dir wurde angelegt!" >> $logfile else echo "ERROR - $(date '+%Y-%m-%d %H:%M:%S') - $clone_work_dir konnte NICHT angelgt werden ERROR "; fi fi while IFS="," read -r git_url new_sub_url new_sub_path do pro_be_cut=${git_url##*/} project_name=${pro_be_cut::-4} clone_folder="$clone_work_dir/$project_name" if [ -d $clone_folder ] then echo "Verzechnis $clone_folder existiert bereits" else git clone $git_url $clone_folder if [ $? -eq 0 ]; then echo "INFO - $(date '+%Y-%m-%d %H:%M:%S') - $git_url wurde geclont !" >> $logfile else echo "ERROR - $(date '+%Y-%m-%d %H:%M:%S') - $git_url konnte NICHT geclont werden ERROR "; fi fi cd $clone_folder for branch in $(git for-each-ref --format='%(refname)' refs/heads/) do git_pro_branch="${branch/'refs/heads/'/''}" #echo "$project_name as $git_pro_branch" sub_akt $git_pro_branch $new_sub_url $new_sub_path if [ $? -eq 0 ]; then echo "INFO - $(date '+%Y-%m-%d %H:%M:%S') - konnte $new_sub_url auf $git_pro_branch aktualisieren" >> $logfile else echo "ERROR - $(date '+%Y-%m-%d %H:%M:%S') - konnte NICHT $new_sub_url auf $git_pro_branch aktualisieren "; fi done cd $script_folder rm -rf "$clone_folder" if [ $? -eq 0 ]; then echo "INFO - $(date '+%Y-%m-%d %H:%M:%S') - $clone_folder wurde gelöscht !" >> $logfile else echo "ERROR - $(date '+%Y-%m-%d %H:%M:%S') - $colne_folder konnte NICHT gelöscht werden ERROR "; fi done < <(tail -n +2 project.csv)