Skip to content

Commit 58c4f50

Browse files
authored
add development guide (#47)
1 parent 79d1e17 commit 58c4f50

File tree

1 file changed

+35
-0
lines changed

1 file changed

+35
-0
lines changed

CONTRIBUTING.md

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,3 +27,38 @@ information on using pull requests.
2727

2828
This project follows
2929
[Google's Open Source Community Guidelines](https://opensource.google/conduct/).
30+
31+
## Development guide
32+
33+
### Get set up
34+
35+
1. [Clone](https://help.github.com/en/github/creating-cloning-and-archiving-repositories/cloning-a-repository) this repository (or a [fork](https://help.github.com/en/github/getting-started-with-github/fork-a-repo#propose-changes-to-someone-elses-project)).
36+
1. At the project root, install all modules by running `npm install`.
37+
38+
### Creating a Pull Request
39+
40+
> Note: You must build from source and check in any changes to the contents of the `bin` directory.
41+
42+
1. Before creating a pull request, run the following commands to lint, build, and test your changes:
43+
44+
```shell
45+
# run the linter
46+
npm run format:check
47+
48+
# rebuild source
49+
npm run build
50+
51+
# run unit tests
52+
npm run test
53+
```
54+
55+
1. If you've forked the repo and want to watch the action run, add secrets to your forked repo that match the secrets specified in [one of the workflow files](https://github.com/FirebaseExtended/action-hosting-deploy/tree/main/.github/workflows) you want to test, and trigger the workflow in your forked repo (for example, by creating a pr or pushing to the `main` branch)
56+
1. Once you're confident in your changes, create a pull request against the firebaseextended/action-hosting-deploy repo.
57+
58+
## Publishing a new version
59+
60+
A repo owner can publish a new version of the action by following the instructions [in the GitHub docs](https://docs.github.com/en/free-pro-team@latest/actions/creating-actions/publishing-actions-in-github-marketplace#publishing-an-action). Manual releases should follow the convention of our existing releases, like [`v0.4-alpha`](https://github.com/FirebaseExtended/action-hosting-deploy/releases/tag/v0.4-alpha).
61+
62+
The current major version is `v0`. We move this tag up to the latest release using the method [recommended by GitHub](https://github.com/actions/toolkit/blob/master/docs/action-versioning.md#user-content-recommendations:~:text=Make%20the%20new%20release%20available%20to%20those%20binding%20to%20the%20major%20version%20tag).
63+
64+
It is important to note that [firebase-tools references `v0`](https://github.com/firebase/firebase-tools/blob/a1fd2ee6ab2f7b4ac7de021226781f5a8f913e18/src/init/features/hosting/github.ts#L32), so any change in the major version should have a linked firebase-tools PR.

0 commit comments

Comments
 (0)