#!/bin/bash

DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null && pwd )"
cd $DIR
cd ..

VERSION=$1
MINOR_VERSION=$2
REVISION=$3

if [ -z "$VERSION" ] || [ -z "$MINOR_VERSION" ] || [ -z "$REVISION" ]
then
    echo "No valid version specified."
    exit 1
else
    echo "Version $VERSION"
    echo "Minor version $MINOR_VERSION"
    echo "Revision $REVISION"
fi

echo "Entering dir $PWD"

rm -rf build
mkdir -p build
mkdir -p build/opt/scripts/device-rccmd
mkdir -p build/etc/salicru/config/rccmd
mkdir -p build/lib/systemd/system

cp -R devops/resources/DEBIAN build/
cp -R devops/etc/salicru/config/rccmd/* build/etc/salicru/config/rccmd
cp -R devops/lib/systemd/system/device-rccmd.service build/lib/systemd/system/
cp -R devops/opt/scripts/rccmd build/opt/scripts/
cp -R devops/opt/scripts/messages.dat build/opt/scripts/device-rccmd

cp -R bin build/opt/scripts/device-rccmd
cp -R dist build/opt/scripts/device-rccmd
cp -R src build/opt/scripts/device-rccmd
cp -R test build/opt/scripts/device-rccmd
cp -R jest.config.js build/opt/scripts/device-rccmd
cp -R *.json build/opt/scripts/device-rccmd
cp -R *.html build/opt/scripts/device-rccmd

tar -xf devops/resources/node_modules.tar.gz -C "build/opt/scripts/device-rccmd"

sudo chmod -R +r build/opt/scripts/device-rccmd
sudo chmod -R +X build/opt/scripts/device-rccmd
sudo chmod -R +r build/etc/salicru/config/rccmd
sudo chmod -R +X build/etc/salicru/config/rccmd
sudo chmod -R +r build/opt/scripts/rccmd
sudo chmod -R 644 build/lib/systemd/system/*


chmod -R 755 build/DEBIAN

echo "Build folder finish"

if [[ "$OSTYPE" == "darwin"* ]]; then
    sed -i '' "2s/.*/Version: $VERSION.$MINOR_VERSION.$REVISION/" build/DEBIAN/control
else
    sed -i "2s/.*/Version: $VERSION.$MINOR_VERSION.$REVISION/" build/DEBIAN/control
fi

dpkg-deb -Zgzip --build build device-rccmd_$VERSION-$MINOR_VERSION-$REVISION.deb
rm -rf build
