GitLab每个分支一页

时间:2018-10-30 17:38:50

标签: gitlab

我有一个包含多个Git分支的库,我想在其中为每个分支生成HTML文档。 不幸的是,即使将子目录命名为它们的分支,每个分支的管道似乎也替换了整个公共目录,而不是添加附加文件夹。

是否有一种方法可以使每个分支为页面贡献而不擦除其他分支贡献的内容?谢谢

编辑,页面生成阶段:

pages:
 image: norionomura/jazzy
 tags:
  - ruby
 script:
  - swift build
  - sourcekitten doc --spm-module Lilas > lilas.json
  - jazzy --clean --min-acl internal --sourcekitten-sourcefile lilas.json --output public
 artifacts:
  paths:
  - public
 only:
  - develop

1 个答案:

答案 0 :(得分:1)

尝试在您的.gitlab-ci.yml之前添加以下内容:

cache:
  key: "$CI_JOB_NAME"
  paths:
    - public

添加一个cache步骤将告诉GitLab在整个版本中保留指定的paths-每个新版本都会看到以前的版本。 key元素使GitLab保持跨分支的缓存,而不是为每个缓存保留一个单独的分支。

当然,这具有副作用,您的管道将不再从新的public目录开始,而是包含其中最后一个管道的内容。您在public中放置的所有管道的所有内容都将保留在那里,直到被明确删除或覆盖为止-如果在构建之间更改工件集,则需要以某种方式进行处理。

(我自己还没有尝试过,但这是我的理解。)