通过GitHub webhook将本地代码同步到Amazon服务器

smtd7mpg  于 2023-03-16  发布在  Git
关注(0)|答案(1)|浏览(122)

我正在学习关于deploying a Node.js app onto the Amazon service with GitHub's webhook的教程。
在Amazon服务器上,我创建了一个名为hook的存储库,并将其初始化为GitHub存储库

$ mkdir hook 
$ cd hook 
$ git init --bare

然后我创造了一个挂钩

$ cat > hooks/post-receive

GIT_WORK_TREE=/home/ubuntu/myapp git checkout -f
echo "Installing dependencies..."
cd /home/ubuntu/myapp
npm install
echo "Restarting node.js..."

$ chmod +x hooks/post-receive

我认为这是在服务器端完成的,所以我回到GitHub存储库并添加了一个WebHook URL,但我不知道如何填写这个URL,所以我输入

ssh://ubuntu@54.201.12.68/home/ubuntu/hook

我认为这是不对的。
我在Windows平台上提交并推送我的本地存储库,所以不出所料,Amazon服务器端没有收到任何东西。
我认为这可能是由于在GitHub存储库设置中输入了错误的webhook URL,你认为呢?
我是否必须设置一个带有URL的服务器才能接收更新并执行bash?

gmxoilav

gmxoilav1#

当提交被推送到AWS服务器时,服务器的post-receive git钩子将被执行:

# On your development machine
git remote add aws ssh://ubuntu@54.201.12.68/home/ubuntu/
git push aws master

GitHub的web hooks通过向您在GitHub推送新提交时提供的URL发送HTTP POST请求来工作。如果您希望您的站点在您将代码 * 推送到GitHub* 时自动更新,您还需要一个组件:一个运行在你机器上的HTTP服务器,它将接受webhook的有效负载,从GitHub * 拉 * 新代码,然后重新部署。another question有很多可能性你可以尝试。

相关问题