这个问题是关于如何在GitLab页面上部署多个来自一个存储库的Reveal.js演示文稿。
我是一个非常新的揭示.js的人,正在尝试与GitLab集成,将演示文稿部署到GitLab页面。在我的仓库中,我将主持我的主题和演示文稿(全部在一个仓库中)。我可以从一个分支机构部署一个演示文稿。下一个目标是使用GitLab页面同时托管所有/多个(公共)演示。
/2020/pres1
和中/2020/pres2
。(设置改编自Elmiko)。在第一个演示文稿分支中,有一个.gitlab-ci.yml
文件正在存放,该文件正在将第一个演示文稿部署到username.gitlab.io/repo-name/
。
.gitlab-ci.yml
:
pages:
stage: deploy
script:
- mkdir .public
- cp -r * .public
- mv .public public
artifacts:
paths:
- public
only:
- 2020/pres1
pres2
该2020/pres2
分支适用于该文件),分支将“覆盖”已部署的第一页。为了达到以下结果,必须对yml文件进行哪些更改?
username.gitlab.io/repo-name/year/branch
。username.gitlab.io/repo-name/2020/pres1
和username.gitlab.io/repo-name/2020/pres2
预先感谢您的建议。
经过一番摸索,我提出了以下解决方案:
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
语句是否被删除是一个问题。