|
1 |
| -[gRPC-ecosystem](https://github.com/grpc-ecosystem) is the organization under which we are collecting community contributions around gRPC. |
| 1 | +# gRPC Ecosystem |
2 | 2 |
|
3 |
| -# How to contribute |
| 3 | +The [grpc-ecosystem][] is a GitHub organization that hosts community projects |
| 4 | +related to gRPC -- projects include, but are not limited to, gRPC extensions or |
| 5 | +integrations, as well as examples that demonstrate how to use gRPC for common or |
| 6 | +technically challenging use cases. |
4 | 7 |
|
5 |
| -This is a place for various components in the gRPC ecosystem that aren't part of the gRPC core. We welcome contributions in this repo which either build extensions around gRPC or showcase how to use gRPC in various use cases and/or with other technologies. |
6 |
| -Here is some guideline and information about how to do so |
| 8 | +## New projects are welcome! |
7 | 9 |
|
| 10 | +Do you have of a gRPC-related project that’s a good candidate for the ecosystem? Follow the steps outlined below. |
8 | 11 |
|
9 |
| -## Getting started |
| 12 | +### 1. Requirements |
10 | 13 |
|
11 |
| -### Legal requirements |
| 14 | +(A) Ensure that your **project** meets the following requirements: |
12 | 15 |
|
13 |
| -In order to protect both you and ourselves, you will need to sign the |
14 |
| -[Contributor License Agreement](https://cla.developers.google.com/clas).Also, no third party libraries which are under AGPL etc should not be used. |
| 16 | + 1. Your project is currently hosted in a public repository (usually, GitHub). |
| 17 | + 1. Your project's license is the [Apache license 2.0][license]. |
| 18 | + 1. Your project doesn't depend on third party libraries with [copyleft][] |
| 19 | + licenses such as [AGPL][] and [GPL]. |
| 20 | + 1. Your project has a top-level `README.md` with the following information: |
| 21 | + - Project overview |
| 22 | + - How gRPC is used |
| 23 | + - A list of external project dependencies such as third-party libraries |
| 24 | + - Build instructions |
| 25 | + - Automated tests and test instructions |
15 | 26 |
|
16 |
| -### Guidelines to contribute |
| 27 | +(B) Ensure that all **project contributors** have signed Google's [Contributor |
| 28 | +License Agreement][CLA], accepting that all license and patent rights are |
| 29 | +determined by the CLA under the [Apache license][license]. |
17 | 30 |
|
18 |
| -gRPC team will control which repos are curated into grpc-ecosystem org and their decision will be final. Contributors will be required to sign [Google CLA](https://cla.developers.google.com/clas) and all license, legal and patent rights will be determined by CLA and [Apache license](http://www.apache.org/licenses/LICENSE-2.0). Work on these will be done in a public manner and each contributing team will have full admin control of their repos. |
| 31 | +### 2. Submit a request form |
19 | 32 |
|
20 |
| -Each contribution needs to have a a top level readme explaining what the contribution does, how to use it with gRPC, how to build and test it and what are its external technical dependencies. So each repository should have |
| 33 | +Once you've addressed all of the requirements listed above, complete and submit |
| 34 | +a [gRPC Ecosystem Project Addition Request Form][form]. |
21 | 35 |
|
22 |
| -- Have at least a top level readme.md describing overview, how to use, dependencies, and how to build and test. |
23 |
| -- Third party libraries: Note that no third party libraries with AGPL license etc should not be used in the codebases. |
24 |
| -- Automated tests - will have a badge called “Verified” for tested contributions. Contributors should have automated tests present in every contribution and they should run on commit. We (gRPC team) will set up travis CI to facilitate this. Tests must return green before we merge them. |
| 36 | +### Project evaluation |
25 | 37 |
|
| 38 | +The gRPC team will review your request and evaluate your project. |
| 39 | +### Accepted projects |
26 | 40 |
|
27 |
| -### How contributions will be accepted? |
28 |
| - |
29 |
| -Anyone who wants to contribute a new repo in grpc-ecosystem should fill up this [form](https://docs.google.com/a/google.com/forms/d/119zb79XRovQYafE9XKjz9sstwynCWcMpoJwHgZJvK74/edit). Once gRPC team approves, we will either create a new repo (with license and patents file) for new projects or enable you to move your repo into grpc-ecosystem org. (we do this by making you admin to to grpc-ecosystem-admins org and enabling transfer of repo . Once repo has moved to gRPC ecosystem admins, gRPC team can move it to gRPC-ecosystem and give contributor full admin rights for subsequent control. Code reviews will be done on a best effort basis. It is however expected that the community will address the comments from core team members. |
| 41 | +Once the gRPC team approves your request, the team will either create a new repo |
| 42 | +for your project, or (temporarily) grant you the permissions necessary for you |
| 43 | +to transfer your repo into the [grpc-ecosystem][]. |
30 | 44 |
|
| 45 | +[AGPL]: https://en.wikipedia.org/wiki/Affero_General_Public_License |
| 46 | +[CLA]: https://cla.developers.google.com/clas |
| 47 | +[copyleft]: https://en.wikipedia.org/wiki/Copyleft |
| 48 | +[form]: https://docs.google.com/a/google.com/forms/d/119zb79XRovQYafE9XKjz9sstwynCWcMpoJwHgZJvK74 |
| 49 | +[GPL]: https://en.wikipedia.org/wiki/GNU_General_Public_License |
| 50 | +[gRPC ecosystem]: https://github.com/grpc-ecosystem |
| 51 | +[grpc-ecosystem]: https://github.com/grpc-ecosystem |
| 52 | +[license]: http://www.apache.org/licenses/LICENSE-2.0 |
0 commit comments