我想要做的是在Google上实现从GitLab到我的计算引擎的连续传递。我让Ubuntu 16.04 TSL跑到那边去了。我确实安装了运行我的项目所需的所有组件,比如: Swift,like,nginx。我已经成功地安装了Gitlab运行程序,并创建了一个运行程序whcihc可以从我的gitlab回购访问。每次我推着主人跑的时候都会触发。所发生的是由于以下原因造成的失败:
could not create leading directories of '/home/gitlab-runner/builds/2bbbbbd/0/Server/Packages/vapor.git': Permission denied
如果我将权限更改为chmod -R 777,它将在running上的gitlab管道上显示build阶段。
我做了类似的事情:sudo chown -R gitlab-runner:gitlab-runner /home/gitlab-runner/builds sudo chown -R gitlab-runner:gitlab-runner /home/gitlab-runner/cache,但是这没有帮助,错误是相同的Permission denied
下面是我的.gitlab-ci.yml
before_script:
- swift --version
stages:
- build
- deploy
job_build:
stage: build
before_script:
- vapor clean
script:
- vapor build --release
only:
- master
job_run_app:
stage: deploy
script:
- echo "Deploy a API"
- vapor run --name=App --env=production
environment:
name: production
job_run_frontend:
stage: deploy
script:
- echo "Deploy a Frontend"
- vapor run --name=Frontend --env=production
environment:
name: production但这还没有到下一阶段。部署。我已经等了超过14小时,但没有结果。还有..。我还有几个问题:
/home/gitlab-runner/builds/下创建构建,每个新作业都有自己的文件夹。就像。/home/gitlab-runner/builds/2bbbbbd/是我的项目,命令被执行。那么,当第一个运行并且我确实部署了新版本时会发生什么呢?端口被第一个实例所阻塞,等等?supervisor,那么在每次部署文件夹不同的时候,我该如何使用它呢?发布于 2017-03-16 03:02:08
How to start a service using GitLab runner
经过长时间的深入搜索,我终于找到了答案!整篇文章可以在上面找到。
简单地说,GitLab CI文档建议使用dpl进行部署。Gitlab运行程序运行测试和进程应该结束。运行程序的设计是为了在完成每个构建之后杀死所有创建的进程。GitLab运行程序无法在目录之外执行操作。
https://stackoverflow.com/questions/42775676
复制相似问题