diff --git a/build_spk.sh b/build_spk.sh index 685de05..9b35e8d 100644 --- a/build_spk.sh +++ b/build_spk.sh @@ -1,9 +1,4 @@ #!/bin/bash - -# ToDo: -# - das Clonen sollte problemlos funktionieren, allerdings funktioniert das Pullen noch nicht -# korrekt, sofern zwischenzeitlich lokale Änderungen vorgenommen wurden - #---------------------------------------------------------------------------------------- # Scriptaufruf: #---------------------------------------------------------------------------------------- @@ -22,19 +17,12 @@ project="synOTR" - skriptuser=`whoami` if [ ${skriptuser} != "root" ]; then echo "Dieses Skript muss von Root ausgeführt werden!" exit 1 fi -gitpath=`which git` -if [ -z ${gitpath} ]; then - echo "Das Programm git konnte nicht gefunden werden." - exit 1 -fi - # Arbeitsverzeichnis auslesen und hineinwechseln: # --------------------------------------------------------------------- APPDIR=$(cd $(dirname $0);pwd) @@ -42,6 +30,27 @@ cd ${APPDIR} build_tmp="${APPDIR}/build_tmp" dir=${APPDIR} +buildversion=$1 + + + + + +if [ -d "./${project}" ] ; then + rm -rf "./${project}" +fi + + + + +gitpull() +{ + +gitpath=`which git` +if [ -z ${gitpath} ]; then + echo "Das Programm git konnte nicht gefunden werden." + exit 1 +fi # Ausführung: Erstellen des SPK echo "" @@ -53,43 +62,47 @@ if [ -d "./${project}" ] ; then cd ${project} git pull versions=`git tag` - branches=`git branch -a` cd ${APPDIR} else git clone https://geimist.eu:30443/geimist/${project}.git cd ${project} + git pull versions=`git tag` - branches=`git branch -a` cd ${APPDIR} fi + +#build_version=`cat "${APPDIR}/${project}/Pack/INFO" | grep version | awk -F '"' '{print $2}'` + # welche Version soll gebaut werden: -if [ -z $1 ]; then # wurde keine gewünschte Version angegeben: - echo "git checkout zu master-branch" +if [ -z $buildversion ]; then + echo "git checkout zu master-branch" cd ${project} git checkout master cd ${APPDIR} - # build_version=`cat "${APPDIR}/${project}/Pack/INFO" | grep version | awk -F '"' '{print $2}'` - build_version=`get_key_value "${APPDIR}/${project}/Pack/INFO" version` set_spk_version="latest_(`date +%Y`-`date +%m`-`date +%d`_`date +%H`-`date +%M`)" else - if echo "$versions" | egrep -q "$1" || echo "$branches" | egrep -q "$1"; then # wurde eine gewünschte Version angegeben: - echo "git checkout zu $1" + if echo "$versions" | egrep -q "$buildversion"; then + echo "git checkout zu $buildversion" cd ${project} - git checkout "$1" - set_spk_version="v${1}" + git checkout "$buildversion" + set_spk_version="$buildversion" cd ${APPDIR} - build_version=`get_key_value "${APPDIR}/${project}/Pack/INFO" version` - else # ist die gewünschte Version nicht vorhanden: + else echo "ACHTUNG: Die gewünschte Version wurde im Repository nicht gefunden!" echo "Der master-branch wird verwendet!" cd ${project} git checkout master cd ${APPDIR} - build_version=`get_key_value "${APPDIR}/${project}/Pack/INFO" version` - set_spk_version="latest_v${build_version}_(`date +%Y`-`date +%m`-`date +%d`_`date +%H`-`date +%M`)" + set_spk_version="latest_(`date +%Y`-`date +%m`-`date +%d`_`date +%H`-`date +%M`)" fi fi +} + +gitpull + + build_version=`cat "${APPDIR}/${project}/Pack/INFO" | grep version | awk -F '"' '{print $2}'` +# set_spk_version=$build_version echo " - INFO: Es wird foldende Version geladen und gebaut: $set_spk_version - BUILD-Version (INFO-File): $build_version" @@ -119,12 +132,14 @@ cp -r "${APPDIR}/${project}"/* "${build_tmp}/" echo " - INFO: Dateirechte anpassen ..." for i in $(find "${build_tmp}/Pack/" -type f) do + # echo "ändere Pack: $i" chmod 755 "$i" chown root:root "$i" done for i in $(find "${build_tmp}/Build/" -type f) do + # echo "ändere Build: $i" chmod 755 "$i" chown root:root "$i" done