Newer
Older
Tomáš Plesník
committed
#!/bin/bash
#
# build-server.sh
#
Tomáš Plesník
committed
#
Tomáš Plesník
committed
# Use of this source is governed by a BSD-style license, see LICENSE file.
Tomáš Plesník
committed
VERSION="2.2"
Tomáš Plesník
committed
err()
{
echo "FAILED!"
echo -n "Error: " && cat "$err"
rm -f "$err" "$tar" "$sig"
rm -rf "$package"
Tomáš Plesník
committed
echo
echo "Build of $package package FAILED!!!"
exit 1
}
#-------------------------------------------------------------------------------
# MAIN
#-------------------------------------------------------------------------------
if [ -z "$1" ]; then
Tomáš Plesník
committed
echo "Usage: ${0##*/} <package_version_number>"
echo
echo "Example: ${0##*/} \"2.2\""
exit 1
fi
Tomáš Plesník
committed
package_name="warden-server"
Tomáš Plesník
committed
package="${package_name}-$1"
Tomáš Plesník
committed
bin="${package}/bin"
doc="${package}/doc"
etc="${package}/etc"
lib="${package}/lib"
sh="${package}/sh"
Tomáš Plesník
committed
tar="${package}.tar.gz"
sig="${tar}.sig"
err="/tmp/${package}-err"
Tomáš Plesník
committed
# make directory structure
echo "Building $package package..."
Tomáš Plesník
committed
echo
echo -n "Building 'base' directory ... "
Tomáš Plesník
committed
mkdir -p "$package" 2> "$err" || err
cp "../src/${package_name}/sh/install.sh" "$package" 2> "$err" || err
cp "../src/${package_name}/sh/update.sh" "$package" 2> "$err" || err
cp "../src/${package_name}/sh/updateCommon.pm" "$package" 2> "$err" || err
Tomáš Plesník
committed
cp "../src/${package_name}/doc/INSTALL" "$package" 2> "$err" || err
cp "../src/${package_name}/doc/README" "$package" 2> "$err" || err
cp "../src/${package_name}/doc/UPDATE" "$package" 2> "$err" || err
Tomáš Plesník
committed
echo "OK"
Tomáš Plesník
committed
echo -n "Building '${bin}' directory ... "
Tomáš Plesník
committed
mkdir -p "$bin" 2> "$err" || err
cp -R "../src/${package_name}/bin/"* "$bin" 2> "$err" || err
Tomáš Plesník
committed
Tomáš Plesník
committed
echo -n "Building '${doc}' directory ... "
Tomáš Plesník
committed
mkdir -p "$doc" 2> "$err" || err
cp -R "../src/${package_name}/doc/"* "$doc" 2> "$err" || err
Tomáš Plesník
committed
echo "OK"
Tomáš Plesník
committed
echo -n "Building '${etc}' directory ... "
Tomáš Plesník
committed
mkdir -p "$etc" 2> "$err" || err
cp "../src/${package_name}/etc/"* "$etc" 2> "$err" || err
rm -f "${etc}/"*.conf 2> "$err" || err
Tomáš Plesník
committed
Tomáš Plesník
committed
echo -n "Building '${lib}' directory ... "
Tomáš Plesník
committed
mkdir -p "$lib" 2> "$err" || err
cp -R "../src/${package_name}/lib/"* "$lib" 2> "$err" || err
rm -f "${lib}/"*.t 2> "$err" || err
Tomáš Plesník
committed
echo "OK"
Tomáš Plesník
committed
echo -n "Building '${sh}' directory ... "
mkdir -p "$sh" 2> "$err" || err
cp "../src/${package_name}/sh/uninstall.sh" "$sh" 2> "$err" || err
echo "OK"
Tomáš Plesník
committed
echo -n "Creating MANIFEST file ... "
Tomáš Plesník
committed
cd "$package" && find . -mindepth 2 -type f | grep -v tmpl | sed 's/.\///' | uniq > "doc/MANIFEST" && cd $OLDPWD || err
Tomáš Plesník
committed
echo "OK"
Tomáš Plesník
committed
# create tarball
echo -n "Creating $tar tarball ... "
Tomáš Plesník
committed
tar czf "$tar" "$package" 2> "$err" || err
Tomáš Plesník
committed
echo "OK"
# create sign of tarball
echo -n "Creating $sig file ... "
Tomáš Plesník
committed
sha1sum "$tar" > "$sig" 2> "$err" || err
Tomáš Plesník
committed
echo "OK"
echo
echo "Building of $package package was SUCCESSFULL!!!"
Tomáš Plesník
committed
# cleanup section
Tomáš Plesník
committed
rm -rf "$package" "$err"