Gitlab CI 运行器无法在 docker 执行器上共享构建源

Gitlab CI runner unabled to shared build sources on docker executor

我尝试在 docker 上共享构建源(并在其上使用 git 获取),但他总是 运行 每个 git 克隆 运行(是的,我已将其配置为在 CI/CD 管道设置上使用 git 提取)。

我只想 运行 一个带有 composer 更新脚本的构建阶段,以及一个带有 phing (phpunit, ...) 的测试阶段。在构建阶段一切正常(git 克隆除外),在测试阶段,他没有使用之前的相同源并再次克隆源...

我知道我需要与 docker 容器共享我的卷,但我不知道如何使用 gitlab CI !?

我的会议:.gitlab-ci.yml

image: webdevops/php:centos-7-php7

stages:
  - build
  - test

build:
  script:
    - composer --working-dir=/builds/MyGroup/MyProject update

test:
  script:
    - php /builds/MyGroup/MyProject/vendor/bin/phing

编辑:经过一天的搜索,我终于找到了这个文档:https://docs.gitlab.com/runner/executors/docker.html#the-persistent-storage 现在可以正常使用了。

谢谢大家,

除了您找到的解决方案之外,我还针对此场景使用了 Artifacts(在 Gitlab.com 中使用共享运行器)。构建 src,将其推送到 Gitlab 并在接下来的构建步骤中下载文件。

build:
  environment: production
  stage: build
  image: image_used_for_builds
  script:
    - # steps to build
  artifacts:
     name: "myapplication-${CI_BUILD_REF_NAME}-${CI_BUILD_ID}-production"
     paths:
      - vendor/src
      - run.whatever
     when: on_success


# this step will download the preivous created files to deploy them
  deploy:
   stage: deploy
   environment: production
   script:
     - run-deploy.sh
   dependencies:
     - build # this will download the artifacts

也许有人觉得这个示例很有用!