1
0
mirror of https://github.com/aquatix/dotfiles.git synced 2025-12-06 22:55:10 +01:00

Almost there; some debug and support for empty workspace and groupdir

This commit is contained in:
Michiel Scholten
2014-07-19 18:06:19 +02:00
parent 030dc90c67
commit 3ee8ebb69d

View File

@@ -11,34 +11,50 @@ GRP=""
for LINE in "${LINES[@]}"; do
if [ ${LINE:0:1} = '#' ] || [ -z $LINE ]; then
# Comment or empty line encountered, skip
echo "comment or empty line"
continue
fi
if [ ${LINE:0:1} = 'workspace=' ]; then
# TODO: strip 'workspace=' from LINE
if [ ${LINE:0:10} = 'workspace=' ]; then
length=${#LINE}
#WORKSPACE="$HOME/workspace/projects"
WORKSPACE="$HOME/$LINE"
WORKSPACEDIR=`echo $LINE | cut -d'=' -f 2`
#WORKSPACE="$HOME/${LINE:11:$length}"
if [ -z $WORKSPACEDIR ]; then
WORKSPACE=$HOME
else
WORKSPACE="$HOME/$WORKSPACEDIR"
fi
echo "workspace: $WORKSPACE"
if [ ! -e $WORKSPACE ]; then
mkdir -p $WORKSPACE
#mkdir -p $WORKSPACE
echo "mkdir -p $WORKSPACE"
fi
continue
fi
if [ ${LINE:0:1} = '[' ]; then
echo 'group: $GRP'
# TODO: strip [ and ] from LINE
GRP=$LINE
if [ ${LINE:0:6} = 'group=' ]; then
GRP=`echo $LINE | cut -d'=' -f 2`
echo "group: $GRP"
if [ -z $GRP ]; then
GRPDIR=$WORKSPACE/$GRP
else
GRPDIR=$WORKSPACE
fi
continue
fi
if [ ! -e $WORKSPACE/$GRP ]; then
mkdir $WORKSPACE/$GRP
elif [ -f $WORKSPACE/$GRP ]; then
echo -e "[\e[31mX\e[0m] Group directory already exists as file: $WORKSPACE/$GRP"
if [ ! -e $GRPDIR ]; then
#mkdir $GRPDIR
echo "mkdir $GRPDIR"
elif [ -f $GRPDIR ]; then
echo -e "[\e[31mX\e[0m] Group directory already exists as file: $GRPDIR"
exit 1
fi
cd $WORKSPACE/$GRP
REPODIR=$(basename "$REPO")
REPODIR=$(basename "$LINE")
#extension="${filename##*.}"
REPODIR="${REPODIR%.*}"
if [ -e $REPODIR ]; then
@@ -47,11 +63,11 @@ for LINE in "${LINES[@]}"; do
echo -e "[\e[31mX\e[0m] $GRP/$REPODIR changed - $WORKSPACE/$GRP/$REPODIR"
else
echo -e "[\e[32mU\e[0m] $GRP/$REPODIR"
git pull --quiet
git push --quiet
#git pull --quiet
#git push --quiet
fi
else
echo -e "[\e[33mC\e[0m] $GRP/$REPODIR"
git clone --quiet $REPO
#git clone --quiet $LINE
fi
done