coding上部署webhooks

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

服务器端部署免密公钥

生成公钥

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 ,编写如下代码

PHP

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

echo 'ok';

coding设置webhook

coding.net上设置webhook访问URL:PHP">http://gorgle.online/project.PHP

相关文章

显卡天梯图2024最新版,显卡是电脑进行图形处理的重要设备,...
初始化电脑时出现问题怎么办,可以使用win系统的安装介质,连...
todesk远程开机怎么设置,两台电脑要在同一局域网内,然后需...
油猴谷歌插件怎么安装,可以通过谷歌应用商店进行安装,需要...
虚拟内存这个名词想必很多人都听说过,我们在使用电脑的时候...