整个GitBook构建过程分为以下几个部分: 安装node,npm部署gitbook gitlab版本8以上支持pipelines,服务器上安装,配置gitlab runner。
1.安装node
curl -sL https://rpm.nodesource.com/setup_6.x | bash - (6.9.5)
yum install -y nodejs
2.安装gitbook
npm install -g gitbook-cli
3.gitlab-ci实现 gitlab的CI主要通过新版本的pipelines功能。 实现原理: 在部署服务器上运行一个gitlab的runner,并且在gitlab项目的根目录下创建.gitlab-ci.yml文件,里面主要保存一些运行 脚本,当有新数据被push时,就会执行其中的代码,实现持续集成。 实现步骤: 1.在项目根目录下新建.gitlab-ci.yml文件,内容如下
rspec:
script:
- gitbook init
- gitbook build
- sh start.sh
当项目内容更新时,更新的内容就会pull到部署服务器,然后依次执行上面代码,完成gitbook的更新。 2.安装runner到服务器上
#增加gitlab的yum源仓库
curl -L https://packages.gitlab.com/install/repositories/runner/gitlab-ci-multi-runner/script.rpm.sh | sudo bash
#yum安装runner
yum install gitlab-ci-multi-runner
为了把runner添加到gitlab项目中,需要项目的token和gitlab的url,在服务器上运行如下代码:
gitlab-ci-multi-runner register
Please enter the gitlab-ci coordinator URL (e.g. https://gitlab.com/):
your url
Please enter the gitlab-ci token for this runner:
your token
Please enter the gitlab-ci description for this runner:
[opstest]:
Please enter the gitlab-ci tags for this runner (comma separated):
opsdoc
Whether to run untagged builds [true/false]:
[false]:true #此处我选择的是true,不然每次push还得弄tag
Whether to lock Runner to current project [true/false]:
[false]:
Registering runner... succeeded
然后根据提示信息输入,具体的token和url在项目的Settings-->CI/CD Pipelines下。 然后你就会在面看到你增加的runner了。记得要Whether to run untagged builds [true/false]:选择true,不然触发时会卡住~ 理论上建立完毕之后就会部署一次,可在项目路径下Pipelines--->Pipelines里面查看部署过程。