GitLab CI:从一个存储库部署多个 reveal.js 演示文稿

GitLab CI: deploy multiple reveal.js presentations from one repository

这个问题是关于如何在 GitLab 页面上部署来自一个存储库的多个 reveal.js 演示文稿。

总结

我对 reveal.js 很陌生,正在尝试与 GitLab 集成,将演示文稿部署到 GitLab 页面。在我的回购中,我正在托管我的主题和演示文稿(全部在一个回购中)。我可以从一个分支部署一个演示文稿。下一个目标是与 GitLab 页面同时托管 all/multiple (public) 个演示文稿。

设置

pages:
  stage: deploy
  script:
  - mkdir .public
  - cp -r * .public
  - mv .public public
  artifacts:
    paths:
    - public
  only:
  - 2020/pres1

问题

必须对 yml 文件进行哪些更改才能实现以下结果?

提前感谢您的建议。

经过一些尝试和错误,我想出了以下解决方案:

cache:
  paths:
    - public

pages:
  stage: deploy

  script:
  - mkdir .build
  - cp -r * .build/
  - mkdir -p public/$CI_COMMIT_BRANCH/
  - rm -r public/$CI_COMMIT_BRANCH/* # do delete possible stuff from old build
  - mv .build/* public/$CI_COMMIT_BRANCH/
  artifacts:
    name: "$CI_COMMIT_BRANCH"
    paths:
    - public

帮助开发了所示的解决方案。 对此解决方案可能存在的缺陷提出意见表示赞赏。不确定删除 only 语句是否有问题。