0.2.8 • Published 4 years ago
deploy-directory-on-branch-to-gh-pages v0.2.8
:rocket: deploy-directory-on-branch-to-gh-pages
A Node and CLI tool that makes deploying to GitHub pages by branch easy and automatic, best used as part of a CI process.
On master
, your directory will be deployed to your GitHub page root similarly to other libraries, such as the wonderful gh-pages
.
On other branches, it'll be deployed under /branch/${branchName}
, allowing your peers to QA your built docs/demos easily for better feedback.
It also sends a status to a Pull request, if one exists:
Installation
npm install -D deploy-directory-on-branch-to-gh-pages
Usage
CLI
deploy-directory-on-branch-to-gh-pages [...options]
Node
const deploy = require('deploy-directory-on-branch-to-gh-pages');
deploy(options).catch(err => { console.log(err); })
Options
Option | flag | description | default | env variable | required | required with CircleCI |
---|---|---|---|---|---|---|
directory | -d | directory you wish to deploy | 'public' | * | * | |
token | -t | GitHub token | GITHUB_TOKEN | * | * | |
owner | -o | GitHub repo owner/org | * | |||
repo | -r | GitHub repo name | * | |||
branch | -b | branch name | 'master' | * | ||
buildUrl | -u | link displayed when deployment fails |
Therefore, if ran from CircleCI with a GITHUB_TOKEN
environment variable present and the directory to be deployed is named public
, no configuration options are needed, so just the following is enough:
deploy-directory-on-branch-to-gh-pages
or
deploy().catch(err => { console.log(err); })
Contributing
- Run tests with
yarn test
. - Develop.
- Bump version number in
package.json
according to semver and add an item that a release will be based on toCHANGELOG.md
. - Submit your pull request from a feature branch and get code reviewed.
- If the pull request is approved and the CircleCI build passes, you will be able to squash and merge.
- Code will automatically be released to GitHub and published to npm according to the version specified in the changelog and
package.json
.
Other
For features and bugs, feel free to add issues or contribute.