Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
D
Devops CW Fork
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Wiki
Requirements
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Locked files
Build
Pipelines
Jobs
Pipeline schedules
Test cases
Artifacts
Deploy
Releases
Package registry
Container registry
Model registry
Operate
Environments
Terraform modules
Monitor
Incidents
Analyze
Value stream analytics
Contributor analytics
CI/CD analytics
Repository analytics
Code review analytics
Issue analytics
Insights
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
Byron Biggs
Devops CW Fork
Commits
f977a1c5
Commit
f977a1c5
authored
4 months ago
by
Byron Biggs
Browse files
Options
Downloads
Patches
Plain Diff
Amended Server Script
parent
6ae9508a
No related branches found
No related tags found
No related merge requests found
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
Terraform/server1.sh
+120
-59
120 additions, 59 deletions
Terraform/server1.sh
with
120 additions
and
59 deletions
Terraform/server1.sh
+
120
−
59
View file @
f977a1c5
#!/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
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment