相关疑难解决方法(0)

在 GitLab CI 中使用合并请求作业中的工件

在我的项目中,我使用合并请求来测试构建,并在提交合并到主版本后进行部署。目前我的.gitlab-ci.yml样子:

build:
  stage: build
  script:
    - yarn build
  artifacts:
    paths:
      - public

deploy:
  stage: deploy
  script: yarn deploy
  rules:
    - if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH
Run Code Online (Sandbox Code Playgroud)

这种方式仅提交成功构建的内容并合并到 master 并部署。然而,构建阶段运行两次,一次在合并请求分支中,一次在主分支中。我想要这样的东西:

build:
  stage: build
  script:
    - yarn build
  artifacts:
    paths:
      - public
  rules:
    - if: $CI_PIPELINE_SOURCE == "merge_request_event"

deploy:
  stage: deploy
  script: yarn deploy
  rules:
    - if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH
Run Code Online (Sandbox Code Playgroud)

但是部署作业应该有一种方法来提取build合并请求分支中作业生成的工件。是否可以?

gitlab gitlab-ci

8
推荐指数
1
解决办法
3700
查看次数

标签 统计

gitlab ×1

gitlab-ci ×1