我如何在Travis CI中自动部署我的Mkdocs文档?
答案 0 :(得分:7)
以下是如何自动部署mkdocs文档的方法。只需按照以下3个步骤操作即可。
只需将以下代码段插入.travis.yml
配置文件中各自的位置:
language: python # Set the build language to Python
python: 3.6 # Set the version of Python to use
branches: master # Set the branch to build from
install:
- pip install mkdocs # Install the required dependencies
script: true # Skip script (Don't use this if one already exists)
before_deploy:
- mkdocs build --verbose --clean --strict # Build a local version of the docs
deploy: # Deploy documentation to Github in the gh_pages branch
provider: pages
skip_cleanup: true
github_token: $github_token
local_dir: site
on:
branch: master
如果您使用的是非mkdocs
或readthedocs
的mkdocs主题,请按照以下步骤进行安装:
场景1:主题可通过点播安装(例如mkdocs-material)
pip install mkdocs
附加到您需要安装的其他软件包,例如mkdocs-material
pip install mkdocs mkdocs-material pymdown-extensions pygments
场景2:主题不可通过点播安装(例如docskimmer)
从--strict
移除mkdocs build --verbose --clean --strict
参数,以禁止使用不能通过pip安装主题的错误。
在before_deploy
mkdocs build --verbose --clean
部分添加设置主题所需的代码
醇>
before_deploy
部分中的代码对于docskimmer看起来像这样:
before_deploy:
- git clone https://github.com/hfagerlund/mkdocs-docskimmer.git # Clone the repo hosting the code
- cp -r $PWD/mkdocs-docskimmer/mkdocs_docskimmer . # Copy the required code to the repo root
- cp -r $PWD/mkdocs-docskimmer/mkdocs_docskimmer/. ./docs # Copy the required code to the docs folder
- mkdocs build --verbose --clean # Build a local version of the docs
通过pip无法安装的主题可能会有所不同。
最终步骤是告诉Travis CI登录GitHub帐户以推送更改所需的凭据:
public_repo
范围的个人访问令牌,请跳至步骤11 Token description
下,选择令牌的名称 - 它可以是任何内容;我将其命名为Travis CI
,因为您可以根据需要重复使用令牌。public_repo
范围/权限Generate token
github_token
<THE TOKEN YOU JUST GENERATED>
No
add
你完成了!请随时在评论中向我提问。
此外,如果该方法停止工作或无法正常工作,请在评论中告诉我,我会尽快解决。
答案 1 :(得分:0)
使用Travis部署MkDocs网站非常简单 (考虑到您正在使用物质主题)
第1步:使用3个空白分支(分别称为master,dev和gh-pages)为您的项目创建存储库。
第2步:克隆存储库和本地,并检出到dev分支。 将您的MkDocs网站添加到本地的dev分支中。 将'/ site'目录添加到git-ignore。(即,不要推送.html) 在仓库中添加下面给出的.travis.yml。 将您的网站推送到开发分支。
第3步:从dev分支提出对master的拉取请求 第4步:登录Travis并在此处连接您的存储库, 在travis中添加env变量'git_token'(用于.travis.yml),可以得到它的值 来自github.com->设置->开发设置->个人访问令牌。 第5步:完成/合并请求到master。它将触发web挂钩,Travis将开始构建。构建后,您生成的html文件将被推送到gh-pages分支。 第6步:转到存储库设置并设置git-hub pages网站以从gh-pages分支加载。
完成
.travis.yml `language:python#将构建语言设置为Python
python:3.6#设置要使用的Python版本
分支机构:master#设置要从中构建的分支
安装: -pip install mkdocs mkdocs-material pymdown-extensions pygments#安装所需的依赖项
script:true#跳过脚本(如果已经存在,请勿使用此脚本)
before_deploy: -mkdocs build --verbose --clean --strict#构建文档的本地版本
部署:#将文档部署到gh_pages分支的Github中 提供者:页面 skip_cleanup:是 github_token:$ github_token local_dir:站点 上: 分行:硕士 `