自动更新并重启服务

1. 设置Bitbucket的ssh

1.1 生成key

ssh-keygen

猛回车就好了。

1.2 配置脚本

将一下内容保存到~/.bashrc中

SSH_ENV=$HOME/.ssh/environment

# start the ssh-agent
function start_agent {
    echo "Initializing new SSH agent..."
    # spawn ssh-agent
    /usr/bin/ssh-agent | sed 's/^echo/#echo/' > ${SSH_ENV}
    echo succeeded
    chmod 600 ${SSH_ENV}
    . ${SSH_ENV} > /dev/null
    /usr/bin/ssh-add
}

if [ -f "${SSH_ENV}" ]; then
     . ${SSH_ENV} > /dev/null
     ps -ef | grep ${SSH_AGENT_PID} | grep ssh-agent$ > /dev/null || {
        start_agent;
    }
else
    start_agent;
fi

将一下内容保存到~/.ssh/config中:

Host bitbucket.org
IdentityFile ~/.ssh/id_rsa

1.3 验证ssh-key

退出终端,重新登录。

执行一下命令,查看是否添加了key:

2048 ae:04:24:bb:21:e8:df:44:81:32:15:09:cb:42:94:a2 /home/pekall/.ssh/id_rsa (RSA)

1.4 配置Bitbucket

[Manage account]—>[SSH Keys]—>[Add keys],结果如下:

image

将~/.ssh/id_rsa.pub的内容保存到上图Key对应的选项框中,保存即可。

1.5 工程配置与git使用

如果已经使用https下载仓库,通过一下方法可以修改。

获取工程ssh下载方式,并替换./.git/config中的url:

url = https://bitbucket.org/pekallchengdu/adminportal-play

改为

url = git@bitbucket.org:pekallchengdu/adminportal-play.git

git pull

不需要输入密码就可以更新了。

2. 服务器自动配置

2.1 执行脚本

#!/bin/sh -e
# adminportal server management
#
# Pull source from bitbucket and restart the server

#set log
echo `date` >> /home/pekall/run/run.log
# enter work dir
cd /home/pekall/adminportal-play

# pull source
echo "get source code"
git pull

# kill server
echo "try to kill current server"
if [ -f RUNNING_PID ]; then
        echo "to kill current server"
        pid=`head -n 1 RUNNING_PID`
        echo $pid >> /home/pekall/run/run.log
        kill -9 $pid
        rm -rf RUNNING_PID
fi

# start it
echo "start server on 9000"
#play "start 9001"
~/SDK/Web/play-2.1.3/play   "start 9000"

echo "end"
#exit 0

2.2 使用cron配置定时执行

#crontab -e

0 6 * * * /home/pekall/run/autoServer
30 12 * * * /home/pekall/run/autoServer
0 15 * * * /home/pekall/run/autoServer
0 18 * * * /home/pekall/run/autoServer

# sudo /etc/init.d/cron restart

参考:

1. Set up SSH for Git

------------------------------------------------------------------------------------------------------------------------------------------ 需要荷兰版牛栏、荷兰美素、母婴用品的攻城师、设计师朋友,欢迎关顾【七彩母婴店】【http://qicaoyun.taobao.com】。凡是从博客园得知信息的,全店商品,均可优惠,请告知客服哦。你也可以通过淘代码【D5867219】,在淘宝搜索到我们。收藏有礼哦!
原文地址:https://www.cnblogs.com/javawer/p/3326508.html