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