-
Notifications
You must be signed in to change notification settings - Fork 153
Yona 업그레이드용 쉘 스크립트
minishanell edited this page May 4, 2017
·
12 revisions
리눅스용으로 만들었습니다. (이 코드는 h2버전이 아닌 일반 버전용)
#!/bin/bash
# Script Version 20170504 by Minishanell
# Setting for YONA_DATA
YONA_DATA=/home/pi/yona_data
# Check of Yona_Version
echo ""
YONANOW=`ls -al | awk '/^d/{print $NF}' |grep yona-`
YONAINSTALLED="1"
if [ $YONANOW ]; then
echo -e "\033[33m Currunt Yona's Version : "$YONANOW;
echo -e "\033[0m";
YONAINSTALLED="1";
else
echo -e "\033[31m Yona is Not Installed.";
echo -e "\033[0m";
YONAINSTALLED="0";
fi
# Choice for Upgrade by Keyboard Input
read -n 1 -p "Do you want to Yona Upgrade(y/N)?"
echo "";echo ""
if [[ $REPLY = [yY] ]]; then
echo -e "\033[33m Now, Yona will be Upgrade.";
echo -e "\033[0m";
if [ $YONAINSTALL ]
then
# # Sync & Shutdown Yona
sudo sync;
sudo sleep 1;
sudo pid=`ps -ef | grep java | grep com.typesafe.play | awk '{print $2}'`;
sudo kill $pid;
sudo sync;
sudo sleep 1;
echo -e "\033[32m Yona is Shutdowned.";
echo -e "\033[0m";
fi
# Paser for Latest Version Yona Address Link
wget https://github.com/yona-projects/yona/releases/latest
cat ./latest | grep '\<href="/yona.*.bin.zip\>' | grep -v 'h2' | cut -f 2 -d "\"" > downlink.yona
rm ./latest
INPUT=`cat ./downlink.yona`
echo "https://github.com"$INPUT > downlink.yona
INPUT=`cat ./downlink.yona`
# Print Link Address
echo "Link Address :" $INPUT
echo ""
# Download & Unzip Latest Version Yona
wget $INPUT
unzip ./yona*.zip
rm ./yona*.zip
else
echo -e "\033[31m Yona Upgrade is cancel.";
echo -e "\033[0m";
fi
# Make a NewFolder Name
INPUT=`cat downlink.yona | cut -f 8 -d "/" | sed 's/v/-/g'`
echo "yona"$INPUT > version.yona
# Run Yona
#INPUT=`cat version.yona`
#cd ./$INPUT
#export YONA_DATA
#sudo ./bin/yona&
아직 버그(마지막 요나 실행이 정상적으로 안되네요. 그래서 주석처리)가 있지만.. 저처럼 단순 작업도 귀찮아하시는 분 있으실까봐... @_@ 일단 올려봅니다. 이 스크립트는 버전 상관없이.. 현재 릴리즈 버전을 받아서 압축을 풀어주는 기능만 있습니다.
현재 설치된 요나 폴더 보다 한 계층 위에 텍스트 툴로 파일 만드셔서 붙이시고 저장하신 다음, 실행권한 주고 실행하시면, 스크립트가 자동으로 최신 배포판을 받아서 압축을 풀어줍니다.
부가 파일로는 downlink.yona(최신 배포판 주소 파싱한 것)과 version.yona(최신 배포판 폴더 이름)이 생성됩니다.
아쉽지만.. 실행은 아직은 수동으로.. ^^;;; 그리고.. 이전 요나도 자동삭제가 안되니 실행 후 이상 없으시면 지우는 것도 수동으로 하시면 되겠습니다. 요나는 버전별로 별도 폴더로 압축이 풀리는데 유지관리면에서는 그것을 그대로 사용하는 것이 좋더라구요.