【问题标题】:Node execfunc and deploy script permission error节点execfunc和部署脚本权限错误
【发布时间】:2017-03-02 21:41:18
【问题描述】:

我正在为 Git 部署做一个接收后挂钩,以完全删除目录 git pull 并替换 Git 存储库。我有一个节点服务器正在运行以监听 webhook。在听到 webhook 后,它将执行以下脚本。

#!/bin/bash

REPO="git@bitbucket.org:git_repo/my_project.git";
RELEASE_DIR="/var/www/my_project";

echo "deleting " $RELEASE_DIR;
rm -rf $RELEASE_DIR;

echo "making new replease dir"
mkdir $RELEASE_DIR;

echo "changing path into release dir"

cd $RELEASE_DIR;
git clone -b master $REPO $RELEASE_DIR;

chgrp -h www-data $RELEASE_DIR;

我可以独立于服务执行这个 bash 脚本并且它运行良好,但是我不能让它在服务器上实时运行。有人可以帮忙吗?

我可以让服务器启动并运行,并在脚本运行之前回显消息。我正在使用带有 Chrome 的 Advanced Rest Client 扩展来发布消息。但是当我用 bitbucket 运行它时,我无法让它运行脚本。

【问题讨论】:

  • 当您尝试在服务器上运行它时会发生什么?你有错误吗?请edit在您的帖子中添加任何其他详细信息。
  • 斯科特!谢谢你的帮助,我回去重新检查了bitbucket上的帖子地址,它是不正确的。我正在使用 Advanced Rest Client 测试拉取,并在 bitbucket 上保留了错误的 URL!

标签: node.js git bash deployment continuous


【解决方案1】:

Bitbucket webhook url 设置错误!我最初设置了错误的消息 URL,使用 ARC 调试并且从未更新 URL

如果有人有兴趣,我原来的网址是

http://example.com:1234/git_message

然后对其进行了调试,代理服务器被设置为接受CNAME url,而不是端口 80,并在内部重新路由到http://localhost:1234。这也是节点服务器监听的地址。

【讨论】:

    猜你喜欢
    • 2016-01-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-08-28
    • 2013-12-25
    • 2023-03-27
    • 2021-06-01
    • 2014-11-27
    相关资源
    最近更新 更多