我想在后台进程中使用 pos-receive 自动化我的 angular 构建
I want to automate my angular build using pos-receive in background process
我想使用 pos-receive 自动化我的 angular 构建,我希望它在后台进程中 运行 所以我不会等待完成命令。
我在 post-receive 上尝试了以下代码,但它不起作用。
post-接收
#!/bin/bash
git --work-tree=/var/www/my-sample-app.com --git-dir=/var/repo/my-sample-app.com.git checkout -f master
cd /var/www/my-sample-app.com
ng build --prod >/dev/null 2>&1 &
我也试过在 usr/local/bin 目录上创建一个单独的可执行脚本,就像这样
build-app-script
#!/bin/bash
cd /var/www/my-sample-app.com
mkdir test-dir
ng build --prod
然后在我的 post-receive 上更改代码
ng build --prod >/dev/null 2>&1 &
到
nohup /usr/local/bin/build-app-script &>/dev/null 2>&1 &
该脚本似乎有效,因为它创建了一个测试目录,但
ng-build --prod
命令未执行
知道为什么不起作用吗?或任何建议。谢谢!
我想我解决了我的问题,我在数字海洋上有一个 vps 服务器,有 500mb 内存。因此,当我 运行 ng build --prod 命令进程被终止时。我认为是因为内存不足。然后在谷歌搜索解决方案后,我发现本教程将向您的服务器添加一个额外的 ram,并且它运行良好。
参考:https://www.digitalocean.com/community/tutorials/how-to-add-swap-on-ubuntu-14-04
我想使用 pos-receive 自动化我的 angular 构建,我希望它在后台进程中 运行 所以我不会等待完成命令。
我在 post-receive 上尝试了以下代码,但它不起作用。
post-接收
#!/bin/bash
git --work-tree=/var/www/my-sample-app.com --git-dir=/var/repo/my-sample-app.com.git checkout -f master
cd /var/www/my-sample-app.com
ng build --prod >/dev/null 2>&1 &
我也试过在 usr/local/bin 目录上创建一个单独的可执行脚本,就像这样
build-app-script
#!/bin/bash
cd /var/www/my-sample-app.com
mkdir test-dir
ng build --prod
然后在我的 post-receive 上更改代码
ng build --prod >/dev/null 2>&1 &
到
nohup /usr/local/bin/build-app-script &>/dev/null 2>&1 &
该脚本似乎有效,因为它创建了一个测试目录,但 ng-build --prod 命令未执行
知道为什么不起作用吗?或任何建议。谢谢!
我想我解决了我的问题,我在数字海洋上有一个 vps 服务器,有 500mb 内存。因此,当我 运行 ng build --prod 命令进程被终止时。我认为是因为内存不足。然后在谷歌搜索解决方案后,我发现本教程将向您的服务器添加一个额外的 ram,并且它运行良好。 参考:https://www.digitalocean.com/community/tutorials/how-to-add-swap-on-ubuntu-14-04