Mitesh Shah
11 years ago
1 changed files with 126 additions and 0 deletions
@ -0,0 +1,126 @@ |
|||
#!/bin/bash |
|||
|
|||
|
|||
|
|||
# Make Variables Available For Later Use |
|||
INSTALLLOG=/var/log/easyengine/install.log |
|||
|
|||
# Capture Errors |
|||
OwnError() |
|||
{ |
|||
echo -e "[ `date` ] \033[31m$@\e[0m" | tee -ai $INSTALLLOG |
|||
exit 101 |
|||
} |
|||
|
|||
EEUPDATE() |
|||
{ |
|||
# Clone EasyEngine (ee) Stable Repository |
|||
git clone -b stable git://github.com/rtCamp/easyengine.git /tmp/easyengine &>> $INSTALLLOG || OwnError "Unable To Clone Easy Engine" |
|||
|
|||
# EasyEngine (ee) /etc Files |
|||
cp -a /tmp/easyengine/etc/bash_completion.d/ee /etc/bash_completion.d/ &>> $INSTALLLOG || OwnError "Unable To Copy EE Auto Complete File" |
|||
cp -a /tmp/easyengine/etc/easyengine/ee.conf /etc/easyengine/ &>> $INSTALLLOG || OwnError "Unable To Copy ee.conf File" |
|||
|
|||
# EE /usr/share/easyengine Files |
|||
cp -a /tmp/easyengine/etc/nginx/* /usr/share/easyengine/nginx/ &>> $INSTALLLOG || OwnError "Unable To Copy Configuration Files " |
|||
cp -a /tmp/easyengine/usr/share/easyengine/* /usr/share/easyengine/ &>> $INSTALLLOG || OwnError "Unable To Copy Configuration Files " |
|||
|
|||
# EE Command |
|||
cp -a /tmp/easyengine/usr/local/sbin/* /usr/local/sbin/ &>> $INSTALLLOG || OwnError "Unable To Copy EasyEngine Command" |
|||
|
|||
# EE Man Pages |
|||
cp -a /tmp/easyengine/man/ee.8 /usr/share/man/man8/ &>> $INSTALLLOG || OwnError "Unable To Copy EasyEngine Man Pages" |
|||
|
|||
# Change Permission For EE |
|||
chmod 750 /usr/local/sbin/easyengine /usr/local/sbin/eeupdate || OwnError "Unable To Change EasyEngine Command Permission" |
|||
|
|||
# Create Symbolic Link If Not Exist |
|||
if [ ! -L /usr/local/sbin/ee ] |
|||
then |
|||
ln -s /usr/local/sbin/easyengine /usr/local/sbin/ee |
|||
fi |
|||
|
|||
# Adjust FastCGI Cache Size 20% Of /var/run |
|||
VARRUNSIZE=$(df --block-size=M /var/run | awk '{print $4}' | tail -n1 |cut -d'M' -f1) |
|||
FCSIZE=$(expr $VARRUNSIZE \* 25 / 100) |
|||
|
|||
# Change Size |
|||
sed -i "s/500m/$FCSIZE\m/" /usr/share/easyengine/nginx/conf.d/fastcgi.conf || OwnError "Unable To Change Fastcgi Cache Size" |
|||
|
|||
# Git Config Settings |
|||
EEGITNAME=$(git config user.name) |
|||
EEGITEMAIL=$(git config user.email) |
|||
|
|||
if [ -z "$EEGITNAME" ] || [ -z "$EEGITEMAIL" ] |
|||
then |
|||
echo |
|||
echo -e "\033[34mEasyEngine (ee) Required Your Name & Email Address To Track Changes You Made Under The Git\e[0m" | tee -ai $INSTALLLOG |
|||
echo -e "\033[34mEasyEngine (ee) Will Be Able To Send You Daily Reports & Alerts In Upcoming Version\e[0m" | tee -ai $INSTALLLOG |
|||
echo -e "\033[34mEasyEngine (ee) Will NEVER Send Your Information Across\e[0m" | tee -ai $INSTALLLOG |
|||
fi |
|||
# Check Git User Is Empty Or Not |
|||
if [ -z "$EEGITNAME" ] |
|||
then |
|||
read -p "Enter Your Name [$(whoami)]: " EEGITNAME |
|||
# If Enter Is Pressed |
|||
if [[ $EEGITNAME = "" ]] |
|||
then |
|||
EEGITNAME=$(whoami) |
|||
fi |
|||
git config --global user.name "$EEGITNAME" &>> $INSTALLLOG |
|||
fi |
|||
|
|||
# Check Git User Is Empty Or Not |
|||
if [ -z "$EEGITEMAIL" ] |
|||
then |
|||
read -p "Enter Your Email [$(whoami)@$(hostname -f)]: " EEGITEMAIL |
|||
# If Enter Is Pressed |
|||
if [[ $EEGITEMAIL = "" ]] |
|||
then |
|||
EEGITEMAIL=$(whoami)@$(hostname -f) |
|||
fi |
|||
git config --global user.email $EEGITEMAIL &>> $INSTALLLOG |
|||
fi |
|||
} |
|||
|
|||
|
|||
EE101() |
|||
{ |
|||
# Let Copy Some Missing Files |
|||
(sed "/allow/,+2d" /usr/share/easyengine/nginx/common/acl.conf; grep -v ^# /etc/nginx/common/allowed_ip.conf ) > /etc/nginx/common/acl.conf |
|||
cp -v /usr/share/easyengine/nginx/common/locations.conf /etc/nginx/common |
|||
|
|||
} |
|||
|
|||
|
|||
|
|||
# Update EasyEngine (ee) |
|||
EECURRENTVERSION=$(ee version | awk '{print($3)}') |
|||
EELATESTVERSION=$(curl -sL https://api.github.com/repos/rtCamp/easyengine/releases | grep tag_name | awk '{print($2)}' | cut -d'"' -f2 | cut -c2-) |
|||
echo EECURRENTVERSION = $EECURRENTVERSION EELATESTVERSION = $EELATESTVERSION &>> $INSTALLLOG |
|||
|
|||
if [[ $EECURRENTVERSION < $EELATESTVERSION ]] |
|||
then |
|||
stty echo |
|||
read -p "Would You Like To Update EasyEngine To $EELATESTVERSION (y/n): " EEUPDATE |
|||
|
|||
# Check User Choice |
|||
if [ "$EEUPDATE" = "y" ] || [ "$EEUPDATE" = "Y" ] |
|||
then |
|||
# Lets Start Update |
|||
echo &>> $INSTALLLOG |
|||
echo &>> $INSTALLLOG |
|||
echo -e "\033[34mEasyEngine (ee) Update Started [$(date)]\e[0m" | tee -ai $INSTALLLOG |
|||
|
|||
# Update EasyEngine (ee) |
|||
EEUPDATE |
|||
|
|||
if [[ $EECURRENTVERSION = 1.0.1 ]] |
|||
then |
|||
EE101 |
|||
fi |
|||
fi |
|||
|
|||
else |
|||
echo "EasyEngine Already Updated To The Latest Version" |
|||
fi |
Loading…
Reference in new issue