X-Git-Url: https://git.mxchange.org/?p=core.git;a=blobdiff_plain;f=setup-repos.sh;h=60d1fb6b81f57e1a92135275e0208f8874cd24b1;hp=68f6a832f64d9d1ff985ad4538690a2126f8c07c;hb=22a34e30a2b24b1b1e47510f8a4659b27d4aa09c;hpb=3db3f581838be722f23a5de3525579aa4801e3b7 diff --git a/setup-repos.sh b/setup-repos.sh index 68f6a832..60d1fb6b 100755 --- a/setup-repos.sh +++ b/setup-repos.sh @@ -1,14 +1,55 @@ #!/bin/sh -# A little helper script of mine to setup a new development check-out directory +# A little helper script of mine to setup a new development check-out directory. +# This script should be called where you want to create the repository and 'core' +# must be in the same directory. This script is public domain, if it blows up +# your washing maschine or your refrigerator stops working, this script is maybe +# not responsible for this, ask your trusted electrican. Use it on your own risk. -if test "$1" == ""; then - echo "Usage: $0 Setup given repository locally." +if test "${1}" == ""; then + echo "Usage: ${0} Setup given repository locally." + exit +elif test -e "${1}/.svn/"; then + echo "${0}: Repository ${1} is possibly setup! Aborting..." exit fi -svn co svn+ssh://www.mxchange.org/var/www/svn-repos/$1/ -cd $1 -svn mkdir branches tags trunk -svn propset -F ../core/trunk/svn-externals.txt trunk -svn commit -m "Initial import with linked core" -cd +echo "${0}: Checking out ${1} ..." +svn co "svn+ssh://www.mxchange.org/var/www/svn-repos/${1}/" || exit 255 +cd "${1}" +echo "${0}: Creating base directories ..." +svn mkdir branches tags trunk || exit 255 +cd trunk +echo "${0}: Updating skeleton ..." +svn up ../../skel/ || exit 255 +echo "${0}: Importing skeleton repository ..." +svn export --force ../../skel/trunk/ . || exit 255 +svn add * || exit 255 +if test "${1}" != "admin"; then + echo "${0}: Adding directory application/${1} ..." + svn mkdir application/${1} || exit 255 +else + echo "${0}: --- Not creating directory application/${1}. ---" +fi +echo "${0}: Linking to external 'core' repository ..." +svn propset svn:externals -F ../../core/trunk/svn-externals.txt . || exit 255 +if (test "${1}" != "admin" && test "${1}" != "install"); then + cd application/ + if test "${1}" != "qa"; then + svn propset svn:externals -F ../../../core/trunk/application-external.txt . || exit 255 + else + svn propset svn:externals "admin http://www.ship-simu.org/repos/admin/trunk/application/admin/ +install http://www.ship-simu.org/repos/install/trunk/application/install/" . || exit 255 + fi + cd .. # trunk +else + echo "${0}: --- Not setting admin/install external source. ---" +fi +cd .. # root +echo "${0}: Running commit ..." +svn commit -m "Initial import with linked core from skeleton" || exit 255 +echo "${0}: Updating ..." +svn up +echo "${0}: Exporting repositiory ..." +svn export --force trunk/ /var/www/htdocs/${1} +cd .. # start +echo "${0}: All done."