加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 创业 > C语言 > 正文

coding上部署webhooks

发布时间:2020-12-15 00:03:28 所属栏目:C语言 来源:网络整理
导读:笔记反复测试并未成功,请慎重操作 服务器端部署免密公钥 生成公钥 ssh-keygen -t rsa -b 4096 -C "gorgle@gorgle.online" coding项目中部署公钥 复制~/.ssh/id_rsa.pub下的内容,到coding对应的项目中部署公钥 测试部署是否成功 ssh -T git@git.coding.net

笔记反复测试并未成功,请慎重操作

服务器端部署免密公钥

生成公钥

ssh-keygen -t rsa -b 4096 -C "gorgle@gorgle.online"

coding项目中部署公钥

复制~/.ssh/id_rsa.pub下的内容,到coding对应的项目中部署公钥

测试部署是否成功

ssh -T git@git.coding.net

服务器端脚本及日志编写

安装使用inotify-tools时时监控文件改变

sudo apt-get install inotify-tools

新建脚本存放目录

cd /home/gorgle

mkdir scripts

mkdir scripts/logs

编写看门狗脚本

进入 /home/gorgle/scripts,新建文件 vim watchdog.sh 写入下面命令

#!/bin/bash

WAIT_DIR=${1-/tmp/git-watchdog/}

inotifywait -qme attrib,modify,move,create,delete $WAITDIR --format '"%w" "%f" "%e" "%T"' --timefmt='%F%T'
| while read DIR FILE EVENT TIME ;do
echo $DIR $FILE $EVENT $TIME
eval "str=${FILE}"
dir="/home/www/${str}/"
cd $dir
git pull
done

编写启动文件

进入 /home/gorgle/scripts,新建文件 vim startup.sh 写入下面命令

#!/bin/bash

mkdir /tmp/git-watchdog

echo '' > /tmp/git-watchdog/wechat

chmod 666 /tmp/git-watchdog/wechat

su - gorgle -c "nohup /home/gorgle/scripts/watchdog.sh > /home/gorgle/scripts/logs/git.log 2>&1 &"

因为使用 google 用户做的ssh部署,故使用su - google -c "" 执行watchdog.sh

加预启动文件到开机启动文件

将预启动文件放入开机自启动文件/etc/rc.local的exit 0上方

sh /home/gorgle/scripts/startup.sh

建webhooks访问的站点

新建一个站点gorgle.online,用于coding.net的webhook访问。因https会报400错误,所以该站点需使用http方式。在站点对应的入口目录新建 project.php ,编写如下代码

touch('/tmp/git-watchdog/wechat');

echo 'ok';

coding设置webhook

coding.net上设置webhook访问URL:

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读