Gitlab - Google计算引擎持续交付

问题描述 投票:3回答:1

我想要做的是启用从GitLab到Google Cloude上的计算引擎的持续交付。我在那边运行Ubuntu 16.04 TSL。我确实安装了运行我的项目所需的所有组件:Swift,vapor,nginx。我已经设法安装Gitlab运行器,并创建了一个可以从我的gitlab repo访问的运行器whcihc。每次我都按下主人,跑步者触发。失败的原因是:

could not create leading directories of '/home/gitlab-runner/builds/2bbbbbd/0/Server/Packages/vapor.git': Permission denied

如果我将权限更改为qazxsw poi它将在qazxsw poi上更改为gazlab管道上可见的qazxsw poi阶段。

我做了类似的事情:chmod -R 777 running但这没有帮助,错误是相同的build

下面你有我的sudo chown -R gitlab-runner:gitlab-runner /home/gitlab-runner/builds

sudo chown -R gitlab-runner:gitlab-runner /home/gitlab-runner/cache

但这还没有传递到下一阶段,例如。部署。我已经等了14个多小时才结果出来了。而且......我还有几个问题:

  1. Gitlab runner在此位置的Permission denied位置创建构建,每个新作业都有自己的文件夹。例如。 .gitlab-ci.yml在我的项目中并执行命令。那么当第一个运行并且我部署新版本时会发生什么?端口被第一个实例阻止,依此类推?
  2. 如果我想启用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 ,那么当我每次部署文件夹时,我是如何做到这一点的呢?
  3. 任何人都可以解释或告诉我或指向我如何使用docker进行持续部署?
swift3 gitlab google-compute-engine continuous-deployment vapor
1个回答
1
投票

/home/gitlab-runner/builds/

感谢长时间的深入搜索,我终于找到了答案!完整的文章可以在上面找到。

简而言之,GitLab CI文档建议使用dpl进行部署。 Gitlab跑步者跑步测试和过程应该结束。运行器旨在在完成每个构建后终止所有创建的进程。 GitLab运行器无法在目录外执行操作。

© www.soinside.com 2019 - 2024. All rights reserved.