Skip to content
Snippets Groups Projects
Commit f977a1c5 authored by Byron Biggs's avatar Byron Biggs
Browse files

Amended Server Script

parent 6ae9508a
No related branches found
No related tags found
No related merge requests found
#!/usr/bin/bash
echo "update logging configuration..."
echo "=== Starting server provisioning ==="
echo "=== Update logging configuration ==="
sudo sh -c "echo '*.info;mail.none;authpriv.none;cron.none /dev/ttyS0' >> /etc/rsyslog.conf"
sudo systemctl restart rsyslog
echo "update logging configuration..."
echo "cd to root directory..."
cd root
echo "=== Move to root directory ==="
cd /root
echo "whoami..."
echo "=== Check current user ==="
whoami
echo "pwd..."
echo "=== Check current directory ==="
pwd
# commented out to speed things up, do not do this in production
# echo "upgrading..."
# sudo yum upgrade -y
# Installing MariaDB
echo "=== Installing MariaDB ==="
sudo dnf install mariadb-server -y
sudo systemctl start mariadb
sudo systemctl enable mariadb
echo "installing gfortran..."
sudo yum install gcc-gfortran -y
# Configure MariaDB securely (non-interactive)
echo "=== Configuring MariaDB securely ==="
cat << EOF > /tmp/mysql_secure_installation.txt
echo "installing git..."
sudo yum install git -y
n
Y
comsc
comsc
Y
Y
Y
Y
Y
EOF
echo "installing gitlab server key..."
touch .ssh/known_hosts
ssh-keyscan git.cardiff.ac.uk >> .ssh/known_hosts
chmod 644 .ssh/known_hosts
sudo mysql_secure_installation < /tmp/mysql_secure_installation.txt
rm /tmp/mysql_secure_installation.txt
echo "installing gitlab deployment key..."
touch matrix_keypair.key
cat << `EOF` >> matrix_keypair.key
# Set up SSH keys
echo "=== Setting up SSH keys ==="
mkdir -p ~/.ssh
touch ~/.ssh/known_hosts
ssh-keyscan git.cardiff.ac.uk >> ~/.ssh/known_hosts
chmod 644 ~/.ssh/known_hosts
# Setup for the project key
cat << EOF > ~/gitlab_project_keypair.key
-----BEGIN OPENSSH PRIVATE KEY-----
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
-----END OPENSSH PRIVATE KEY-----
`EOF`
chmod 400 matrix_keypair.key
EOF
chmod 400 ~/gitlab_project_keypair.key
# Install required packages
echo "=== Installing required packages ==="
sudo dnf install gcc-gfortran -y
sudo dnf install git -y
sudo dnf install wget -y
sudo dnf install unzip -y
sudo dnf update openssh-server openssh-client -y
# Configure firewall
echo "=== Configuring firewall ==="
sudo systemctl stop firewalld.service
# Clone the Polish community group repository
echo "=== Cloning Polish community group repository ==="
ssh-agent bash -c 'ssh-add ~/gitlab_project_keypair.key; git clone git@git.cardiff.ac.uk:c21087458/fork-team-10-polish-community-group.git'
# Set up database schema
echo "=== Setting up database schema ==="
mysql -uroot -pcomsc < fork-team-10-polish-community-group/src/schema.sql
# Install Java
echo "=== Installing Java ==="
sudo dnf install java-17-openjdk-devel -y
echo "cloning repository..."
echo $PWD
ssh-agent bash -c 'ssh-add matrix_keypair.key; git clone git@git.cardiff.ac.uk:scmimc/matrix.git'
# Set JAVA_HOME and update PATH
export JAVA_HOME=$(dirname $(dirname $(readlink -f $(which java))))
echo "export JAVA_HOME=$JAVA_HOME" >> ~/.bashrc
echo "export PATH=$JAVA_HOME/bin:$PATH" >> ~/.bashrc
source ~/.bashrc
echo "changing to repository directory..."
cd matrix
# Verify Java installation
java -version
javac -version
echo "enabling execution..."
chmod a+x *.sh
# Install Gradle
echo "=== Installing Gradle ==="
wget https://services.gradle.org/distributions/gradle-7.6-bin.zip
sudo mkdir -p /opt/gradle
sudo unzip -d /opt/gradle gradle-7.6-bin.zip
echo "export PATH=\$PATH:/opt/gradle/gradle-7.6/bin" >> ~/.bashrc
source ~/.bashrc
echo "compiling matrix..."
./make.sh
# Build and run the Polish community group application
echo "=== Building and running Polish community application ==="
cd ~/fork-team-10-polish-community-group
export PATH=$PATH:/opt/gradle/gradle-7.6/bin
gradle build
nohup gradle bootrun &
echo "running matrix..."
nohup ./run.sh &
echo "=== Provisioning complete ==="
\ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment