2021-06-22 04:58:07 +02:00
cd " ${ 0 %/* } " || ( echo "Could not chdir to this script's dir!" && exit ) # Change the working directory to the script's directory, when running from other location.
2021-09-09 15:28:58 +02:00
justInstall = 0
2021-06-22 04:58:07 +02:00
2021-09-09 15:28:58 +02:00
if [ [ $# -eq 1 ] ] ; then
justInstall = $1
elif [ [ $# -gt 1 ] ] ; then
echo -e " Wrong number of arguments given: ${# } \nPlease execute it like: script.sh <justInstall: 0 | 1> " ; exit 1
fi
2021-06-22 04:58:07 +02:00
2021-09-22 15:36:48 +02:00
# Check of the "inputData.txt" file exist, if not, ask to fill it.
inputDataFile = "inputData.txt"
if [ [ ! -f $inputDataFile ] ] ; then
echo -e " The file \" $inputDataFile \" does not exist. Going to create it..\n "
echo "Give the ID of this worker:"
read -r workerId
echo -e "\nGive the baseUrl of the controller (e.g.: http://IP:PORT/api/):"
read -r controllerBaseUrl
touch $inputDataFile
echo " $workerId , $controllerBaseUrl " >> $inputDataFile
2021-09-22 16:06:30 +02:00
echo -e "\n\n"
2021-09-22 15:36:48 +02:00
fi
2021-09-09 15:28:58 +02:00
gradleVersion = "7.2"
2021-06-22 04:58:07 +02:00
2021-09-09 15:28:58 +02:00
if [ [ justInstall -eq 0 ] ] ; then
2021-06-22 04:58:07 +02:00
2021-09-22 16:06:30 +02:00
if [ ! -d libs ] ; then
mkdir libs || ( echo -e "The directory \"libs\" could not be created! Exiting.." && exit 2)
fi
cd libs || exit 3
2021-09-09 15:28:58 +02:00
git clone https://github.com/LSmyrnaios/PublicationsRetriever.git # We assume there is no previously source-code here, if so, it will be overwritten.
2021-06-22 04:58:07 +02:00
2021-09-09 15:28:58 +02:00
# Do not need to perform a string-replace in "build.gradle", since it automatically gets all ".jar" files.
2021-08-05 14:09:28 +02:00
2021-09-09 15:28:58 +02:00
# Keep a backup of the existing JAR file.
mv ./publications_retriever-1.0-SNAPSHOT.jar ./publications_retriever-1.0-SNAPSHOT_BACKUP.jar
2021-08-05 14:09:28 +02:00
2021-09-09 15:28:58 +02:00
cd PublicationsRetriever && mvn clean install
# Copy the created JAR file to the top libs directory.
cp target/publications_retriever-1.0-SNAPSHOT.jar ../publications_retriever-1.0-SNAPSHOT.jar
# Delete the directory with the source-code.
cd ../ && rm -rf PublicationsRetriever
# Clean and (re)build and run the project.
cd ../
echo -e "\nAsking for sudo, in order to verify the installation of 'gradle'..\n"
wget https://services.gradle.org/distributions/gradle-${ gradleVersion } -bin.zip
sudo mkdir /opt/gradle
2021-09-22 15:36:48 +02:00
sudo apt install -y unzip && sudo unzip -d /opt/gradle gradle-${ gradleVersion } -bin.zip
2021-09-09 15:28:58 +02:00
#ls /opt/gradle/gradle-${gradleVersion} # For debugging installation
2021-08-05 14:09:28 +02:00
2021-09-09 15:28:58 +02:00
export PATH = $PATH :/opt/gradle/gradle-${ gradleVersion } /bin
2021-08-05 14:09:28 +02:00
2021-09-09 15:28:58 +02:00
gradle wrapper --gradle-version= ${ gradleVersion } --distribution-type= bin
2021-08-05 14:09:28 +02:00
2021-09-09 15:28:58 +02:00
#gradle tasks # For debugging installation
#gradle -v # For debugging installation
2021-09-02 17:35:47 +02:00
2021-09-09 15:28:58 +02:00
gradle clean
gradle build
else
export PATH = $PATH :/opt/gradle/gradle-${ gradleVersion } /bin # Make sure the gradle is still accessible (it usually isn't without the "export").
fi
2021-09-02 17:35:47 +02:00
2021-08-05 14:09:28 +02:00
gradle bootRun