git ci编译打包java,Gitlab CI如何将最新部署到特定目录

我在Gitlab中有两个项目,其中一个是另一个的子模块(让我们称之为repo“frontend-templates”)(让我们称之为repo“main”) . 我已经为“frontend-templates”回购设置了一个Gitlab CI构建 . 问题是我不需要测试或构建 . 我只需要在所需目录中部署此CI . 所以,我为“frontend-templates”项目注册了一个跑步者,并将.gitlab-ci.yml添加到了根目录:

job_main:

type: deploy

script: echo "Do nothing"

当我推送到我的存储库时,运行器将最新的提交提取到以下目录:

/home/gitlab-runner/builds/6231b425/0/Gasimzada/frontend-templates

然后运行 echo "Do nothing" .

现在,我希望运行器将“已测试”提交部署到开发服务器,该服务器位于:

/var/www/myapp/submodules/frontend-templates

编辑:我将脚本更改为

script: cd /var/www/myapp/submodules/frontend-templates && git pull

但我得到一个错误说:

无法打开/var/www/myapp/.git/modules/submodules/frontend-templates/FETCH_HEAD:权限被拒绝

这是有道理的,因为gitlab-runner用户无法访问/ var / www / myapp中的任何目录,但这对我来说是个问题,因为我想在部署后运行 gulp ,因此它在从远程存储库中提取后编译必要的脚本 .

我是否应该授予dev环境的根目录权限?或者还有另一种方法吗?

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值