All contributions are welcome and greatly appreciated!
Check the
.node-version
file in the root of this repo so see what version of Node.js is required for local development - note, this can be different from the version of Node.js which runs the Action on GitHub runners. It is suggested to download nodenv which uses this file and manages your Node.js versions for you
- Fork this repository
- Commit your changes
- Test your changes (learn how to test below)
- Open a pull request back to this repository
Make sure to run
npm run all
as your final commit! - Notify the maintainers of this repository for peer review and approval
- Merge!
The maintainers of this repository will create a new release with your changes so that everyone can use the new release and enjoy the awesome features of branch deployments
This project requires 100% test coverage
The branch-deploy Action is used by enterprises, governments, and open source organizations - it is critical that we have 100% test coverage to ensure that we are not introducing any regressions. All changes will be throughly tested by maintainers of this repository before a new release is created.
Simply run the following command to execute the entire test suite:
npm run test
Note: this requires that you have already run
npm install
See the testing FAQs below for more information on this process
You can test your changes by doing the following steps:
- Commit your changes to the
main
branch on your fork - Open a new pull request
- Run IssueOps commands on the pull request you just opened (
.deploy
,.noop
,.deploy main
, etc) - Ensure that all IssueOps commands work as expected on your testing PR
Answers to questions you might have around testing
Q: Why do I have to commit my changes to main
?
A: The on: issue_comment
workflow only uses workflow files from the main
branch by design - learn more
Q: How can I test my changes once my PR is merged and before a new release is created?
A: You should create a repo like this one that uses github/branch-deploy@main
as the Action version and test your changes there