gh-pages publishing plugin for semantic-release
Step | Description |
---|---|
verifyConditions |
Verify the presence of the GH_TOKEN set via environment variables. |
publish |
Pushes commit to the documentation branch |
# yarn
yarn add @qiwi/semantic-release-gh-pages-plugin --dev
# npm
npm i @qiwi/semantic-release-gh-pages-plugin -D
Describe plugin configuration in package.json / .releaserc.js
{
"release": {
"branch": "master",
"verifyConditions": [
"@semantic-release/changelog",
"@semantic-release/npm",
"@semantic-release/git",
"@qiwi/semantic-release-gh-pages-plugin"
],
"publish": [
"@semantic-release/npm",
"@semantic-release/github",
[
"@qiwi/semantic-release-gh-pages-plugin",
{
"msg": "updated",
"branch": "docs"
}
]
]
}
}
or even shorter if default settings are used:
{
"release": {
"branch": "master",
"plugins": [
"@semantic-release/release-notes-generator",
"@semantic-release/changelog",
"@semantic-release/git",
"@semantic-release/github",
"@semantic-release/npm",
"@qiwi/semantic-release-gh-pages-plugin"
]
}
}
Variable | Description |
---|---|
GH_TOKEN or GITHUB_TOKEN |
Required. The token used to authenticate with GitHub. |
Option | Description | Default |
---|---|---|
msg |
Commit message template | docs updated <%= nextRelease.gitTag %> |
src |
Documentation directory | docs NOTE don't forget to run docs builder ( yarn docs , yarn typedoc , etc) as a part of your build step or any other way |
dst |
Destination directory | . (root) |
branch |
Docs branch to push | gh-pages |
branches |
Optional list of src-to-target branches association. If defined it suppresses branch option. For example, [['master', 'gh-pages'], ['beta', beta-docs]] |
undefined |
repositoryUrl |
Repository url | inherited from .git |
enterprise |
Disables host assertion for GitHub Enterprise domains | false |
pullTagsBranch |
Target branch for tags fetching hook. If '' empty string, skips this action | globalConfig.branch || master |
dotfiles |
gh-pages dotfiles option | false |
add |
gh-pages add option | false |