1.3.1 • Published 9 years ago
gitbook-pub v1.3.1
Gitbook Pub
This project is JKR3-Team used to automatically publish documents from gitlab.
Deployment
form your develop computer
$ npm run deployor at server
npm run pm2Usage
build book manually
exec/build.sh <bookRepoName>Add webhook to gitlab
- create new book repos and push it to gitlab.
- go to
http://git.jkr3.com/<userid>/<your.book>/hooks. - copy and paste
http://book.jkr3.com/webhookinURL. - make sure
Trigger>Push eventsis checked - and then press
Add Webhookbutton - Done.
so, each time your push new commite to gitlab, it will automatic rebuild it. you can press the
Test Hookbutton to rebuilding your books immediately.
Reading books
Once the new version of the document push to gitlab, you will immediately see the latest version of the document in http://book.jkr3.com/books
Auth with GitLab
Setup auth config:
Edit or create config file config/config[.NODE_ENV].json
{
"authGitlab": {
"clientID": "GITLAB_CLIENT_ID",
"clientSecret": "GITLAB_CLIENT_SECRET",
"callbackBaseURL": "http://your-app.com/",
"baseURL": "https://gitlab.your-company.com/",
"rejectUnauthorized":true
}
}If your GitLab site use self-signed certificate, you may got InternalOAuthError: Failed to obtain access token error, just set rejectUnauthorized to false.
SSL
Create self-signed certificate:
# Create a 2048 bit private key
sudo openssl genrsa -out "./ssl/gitbook-pub.key" 2048
# This command generates the certificate signing request
sudo openssl req -new -key "./ssl/gitbook-pub.key" -out "./ssl/gitbook-pub.csr"
# Create the signed certificate:
sudo openssl x509 -req -days 365 -in "./ssl/gitbook-pub.csr" -signkey "./ssl/gitbook-pub.key" -out "./ssl/gitbook-pub.crt"