2014-03-21 22:54:34 +01:00
|
|
|
#!/bin/bash
|
|
|
|
|
2014-03-22 00:04:03 +01:00
|
|
|
projectName=strolch_bundle
|
2014-09-17 10:09:31 +02:00
|
|
|
projectVersion=1.0.0-SNAPSHOT
|
2014-03-21 22:54:34 +01:00
|
|
|
DIST_STROLCH="/var/www/eitch/www.strolch.li/dist/snapshot"
|
2014-09-19 18:31:55 +02:00
|
|
|
DEPLOY_SERVER="appsrv.gsi.local"
|
2014-09-19 19:47:07 +02:00
|
|
|
ROOT="${PWD}"
|
|
|
|
workDir="${ROOT}/target/strolch_bundle"
|
|
|
|
projectsFile="${ROOT}/projects_all.lst"
|
2014-03-21 22:54:34 +01:00
|
|
|
|
2014-09-19 18:31:55 +02:00
|
|
|
echo "INFO Bootstrapping..."
|
|
|
|
if ! ./bootstrap_https.sh ; then
|
|
|
|
echo "ERROR: Failed to boostrap!"
|
|
|
|
exit 1
|
|
|
|
fi
|
|
|
|
|
|
|
|
echo "INFO Pulling..."
|
|
|
|
if ! ./pull.sh ; then
|
|
|
|
echo "ERROR: Failed to pull from upstream!"
|
|
|
|
exit 1
|
|
|
|
fi
|
|
|
|
|
|
|
|
# first we create all needed packages
|
2014-09-19 19:06:11 +02:00
|
|
|
cd ..
|
2014-09-19 18:31:55 +02:00
|
|
|
if ! mvn -DskipTests clean package ; then
|
|
|
|
echo "ERROR: Failed to build packages!"
|
|
|
|
exit 1
|
|
|
|
fi
|
2014-03-21 22:54:34 +01:00
|
|
|
|
|
|
|
# Make sure the work directory exists
|
2014-09-19 18:00:46 +02:00
|
|
|
if [ -d "${workDir}" ] ; then
|
|
|
|
if ! rm -rf "${workDir}" ; then
|
|
|
|
echo "ERROR: Failed to clean work dir ${workDir}."
|
2014-03-21 22:54:34 +01:00
|
|
|
exit 1
|
|
|
|
fi
|
|
|
|
fi
|
2014-09-19 18:00:46 +02:00
|
|
|
if ! mkdir -p "${workDir}" ; then
|
|
|
|
echo "ERROR: Failed to create work dir ${workDir}."
|
|
|
|
exit 1
|
|
|
|
fi
|
2014-03-21 22:54:34 +01:00
|
|
|
|
|
|
|
echo "INFO: Bundling projects..."
|
|
|
|
|
|
|
|
# Now copy those packages to our work dir
|
|
|
|
while read project; do
|
|
|
|
if [ "${project}" == "" ] ; then
|
|
|
|
continue;
|
|
|
|
fi
|
2014-08-24 18:06:09 +02:00
|
|
|
|
|
|
|
array=(${project//:/ })
|
|
|
|
name="${array[0]}"
|
|
|
|
tag="${array[1]}"
|
|
|
|
|
|
|
|
if [ "${name}" == "" ] || [ "${tag}" == "" ] ; then
|
|
|
|
echo -e "ERROR: Invalid project: ${project}! Must have form <git_name:tag>"
|
|
|
|
exit 1
|
|
|
|
fi
|
|
|
|
|
2014-09-19 18:00:46 +02:00
|
|
|
if [ "${name}" == "li.strolch.dev" ] ; then
|
|
|
|
continue;
|
|
|
|
fi
|
|
|
|
|
2014-09-19 19:47:07 +02:00
|
|
|
if ! cd "${ROOT}/../${name}" ; then
|
2014-08-24 18:06:09 +02:00
|
|
|
echo "ERROR: Could not switch to directory ${name}"
|
2014-03-21 22:54:34 +01:00
|
|
|
exit 1
|
|
|
|
fi
|
|
|
|
|
2014-08-24 18:06:09 +02:00
|
|
|
echo "INFO: Copying ${name} packages..."
|
2014-03-22 00:15:05 +01:00
|
|
|
if ls target/*.jar 2>/dev/null ; then
|
|
|
|
if ! cp target/*.jar "${workDir}" ; then
|
2014-08-24 18:06:09 +02:00
|
|
|
echo "ERROR: Failed to copy package for project ${name}."
|
2014-03-22 00:15:05 +01:00
|
|
|
exit 1
|
|
|
|
fi
|
2014-09-19 18:00:46 +02:00
|
|
|
fi
|
|
|
|
if ls target/*.war 2>/dev/null ; then
|
2014-03-22 00:15:05 +01:00
|
|
|
if ! cp target/*.war "${workDir}" ; then
|
2014-08-24 18:06:09 +02:00
|
|
|
echo "ERROR: Failed to copy wars for project ${name}."
|
2014-03-22 00:15:05 +01:00
|
|
|
exit 1
|
|
|
|
fi
|
2014-09-19 18:00:46 +02:00
|
|
|
fi
|
|
|
|
if ls target/*.tar.gz 2>/dev/null ; then
|
|
|
|
if ! cp target/*.tar.gz "${workDir}" ; then
|
|
|
|
echo "ERROR: Failed to copy tarballs for project ${name}."
|
2014-03-22 00:44:21 +01:00
|
|
|
exit 1
|
|
|
|
fi
|
2014-03-21 23:57:42 +01:00
|
|
|
fi
|
|
|
|
|
2014-03-21 22:54:34 +01:00
|
|
|
done < ${projectsFile}
|
|
|
|
|
|
|
|
cd ${workDir}/..
|
2014-03-22 00:04:03 +01:00
|
|
|
if ! tar -cvzf ${projectName}-${projectVersion}.tar.gz ${projectName} ; then
|
2014-03-21 22:54:34 +01:00
|
|
|
echo "ERROR: Failed to make bundle."
|
|
|
|
exit 1
|
|
|
|
fi
|
|
|
|
|
2014-09-19 18:31:55 +02:00
|
|
|
if [ "$(hostname -f)" == "${DEPLOY_SERVER}" ] ; then
|
|
|
|
if ! cp "${workDir}" "${DIST_STROLCH}" ; then
|
|
|
|
echo "ERROR: Failed to publish package for project ${name}."
|
|
|
|
exit 1
|
|
|
|
fi
|
|
|
|
|
|
|
|
if ! mv ${projectName}-${projectVersion}.tar.gz "${DIST_STROLCH}" ; then
|
|
|
|
echo "ERROR: Failed to publish bundle."
|
|
|
|
exit 1
|
|
|
|
fi
|
|
|
|
fi
|
2014-03-21 22:54:34 +01:00
|
|
|
|
|
|
|
echo "Done."
|
2014-08-24 18:06:09 +02:00
|
|
|
exit 0
|