-
Notifications
You must be signed in to change notification settings - Fork 0
Maintenance
Welcome to the dxp-questions-ui wiki, maintainer!
Here's all you need to know about maintaining this repo.
The documentation is built using the following npm modules
-
jsdoc-to-markdown
which renders the src/index.js -
markedpp
which renders the readme.md from the readme.mdpp preprocess file, adding json/html snippets, TOC, and API
The markedpp
allows us to include external files in a template file (readme.mdpp) and render this to our README.md file. This allows us to use JSON snippets for both our documentation and for testing. It also allows us to use other tools like jsdoc-to-markdown
that can programmatically generate markdown.
Any time you update the following files, you will need to rebuild the documentation.
- snippets/json/*
- snippets/html/*
- readme.mdpp
- src/index.js
You can rebuild the documentation with npm run docs
. Make sure you commit the README.md file after running this command.
You should use Conventional Commits messages when making changes to the repo. This allows us to use the standard-version
npm package to automatically deduce what version the next release of the package should be.
What this means is that you should
- Squash and merge commits when approving PRs
- Patch changes (0.0.x) should have commit message format of
fix(<JIRA issue>): <message>
- Minor changes (0.x.0) should have commit message format of
feat(<JIRA issue>): <message>
- Major/breaking changes (x.0.0) should have commit message form of
feat(<JIRA issue>): message
BREAKING CHANGE:
- Documentation related changes should have commit message form of
docs(<JIRA issue>): <message>
Feel free to update this page with other conventions
To release a new package, make sure you have latest version of master branch and run the following commands in the repo folder.
git checkout master
git pull
npm run release
git push --follow-tags origin master
If you wish to prerelease a package run the following commands instead.
git checkout master
git pull
npm run prerelease
git push --follow-tags origin master
This will kick off a Travis CI build that will deploy to AWS S3, npm and Github Releases.
Travis CI is configured to
- Run tests with
npm run test
- Build with
npm run prod
- Build PR commits
- Build anytime a commit to
master
branch is made - Deploy to npm, Github Releases, and AWS S3 when the master branch is tagged
- Credentials are stored in Travis CI as environment variables