gitlab-ci - 在 gitlab 页面上使用 mic 自动部署 mkdocs 并进行版本控制

标签 gitlab-ci doc mkdocs gitlab-pages

每次我在 gitlab 上提交标签时,我都愿意部署新版本的文档。 我使用 mike 进行 mkdocs 版本控制。

我希望直接在远程存储库上而不是在本地处理版本控制。

在本地,我执行更改,但每次发送新标签时,我希望在我的 gitlab 页面上获取新添加的文档版本

最佳答案

终于找到解决方案here .

这是我的改编:

pages:
  stage: deploy
  variables:
    PIP_CACHE_DIR: "$CI_PROJECT_DIR/.cache/pip"
    PAGES_BRANCH: gl-pages
    HTTPS_REMOTE: https://gitlab-ci-token:${ACCESS_TOKEN}@${CI_SERVER_HOST}/${CI_PROJECT_PATH}.git
  before_script:
    - pip install mkdocs mike
    - git config user.name $GITLAB_USER_NAME
    - git config user.email $GITLAB_USER_EMAIL
    - git fetch origin $PAGES_BRANCH && git checkout -b $PAGES_BRANCH origin/$PAGES_BRANCH || echo "Pages branch not deployed yet."
    - git checkout $CI_COMMIT_SHA
  script:
   - mike deploy --rebase --prefix public -r $HTTPS_REMOTE -p -b $PAGES_BRANCH -u $CI_COMMIT_TAG latest
   - mike set-default --rebase --prefix public -r $HTTPS_REMOTE -p -b $PAGES_BRANCH latest
   - git checkout $PAGES_BRANCH -- public/
  artifacts:
    paths:
     - public/
  only:
    - tags

关于gitlab-ci - 在 gitlab 页面上使用 mic 自动部署 mkdocs 并进行版本控制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/72467521/

相关文章:

git - 你如何使用 gitlab-ci 作业推送到 gitlab 仓库?

python - 查找屏蔽的 CI/CD 变量的值

xml - 以 word (.docx) 形式将复选框标记为已选中

php - 从 ckeditor 中输入的 html 代码创建 docx 文件

magento - ReadTheDocs 系统的代码格式

python - mkdocs-pandoc 类型错误 : _split_row() takes exactly 2 arguments (3 given)

powershell - 如果 robocopy 使用 powershell 成功,则重置 lastexitcode

kubernetes - GitLab Runner 无法克隆,无法获取颁发者证书

PHPWord 将一行中的某些单词加粗

python - 在 Django 项目中的 URL 中托管使用​​ mkdocs 生成的 API 文档