| # How to become a contributor and submit your own code |
| |
| ## Before you begin |
| |
| ### Sign our Contributor License Agreement |
| |
| Contributions to this project must be accompanied by a |
| [Contributor License Agreement](https://cla.developers.google.com/about) (CLA). |
| You (or your employer) retain the copyright to your contribution; this simply |
| gives us permission to use and redistribute your contributions as part of the |
| project. |
| |
| If you or your current employer have already signed the Google CLA (even if it |
| was for a different project), you probably don't need to do it again. |
| |
| Visit <https://cla.developers.google.com/> to see your current agreements or to |
| sign a new one. |
| |
| ### Review our community guidelines |
| |
| This project follows |
| [Google's Open Source Community Guidelines](https://opensource.google/conduct/). |
| |
| ## Contributing a patch |
| |
| 1. Submit an issue describing your proposed change to the repo in question. |
| 1. The repo owner will respond to your issue promptly. |
| 1. If your proposed change is accepted, and you haven't already done so, sign a |
| Contributor License Agreement (see details above). |
| 1. Fork the desired repo, develop and test your code changes. |
| 1. Ensure that your code adheres to the existing style in the sample to which |
| you are contributing. Refer to the |
| [Google Cloud Platform Samples Style Guide] |
| (https://github.com/GoogleCloudPlatform/Template/wiki/style.html) for the |
| recommended coding standards for this organization. |
| 1. Ensure that your code has an appropriate set of unit tests which all pass. |
| 1. Submit a pull request. |
| |
| ## Contributing a new sample App |
| |
| 1. Submit an issue to the `GoogleCloudPlatform/Template` repo describing your |
| proposed sample app. |
| 1. The Template repo owner will respond to your enhancement issue promptly. |
| Instructional value is the top priority when evaluating new app proposals for |
| this collection of repos. |
| 1. If your proposal is accepted, and you haven't already done so, sign a |
| Contributor License Agreement (see details above). |
| 1. Create your own repo for your app following this naming convention: |
| * {product}-{app-name}-{language} |
| * products: appengine, compute, storage, bigquery, prediction, cloudsql |
| * example: appengine-guestbook-python |
| * For multi-product apps, concatenate the primary products, like this: |
| compute-appengine-demo-suite-python. |
| * For multi-language apps, concatenate the primary languages like this: |
| appengine-sockets-python-java-go. |
| |
| 1. Clone the `README.md`, `CONTRIB.md` and `LICENSE` files from the |
| GoogleCloudPlatform/Template repo. |
| 1. Ensure that your code adheres to the existing style in the sample to which |
| you are contributing. Refer to the |
| [Google Cloud Platform Samples Style Guide] |
| (https://github.com/GoogleCloudPlatform/Template/wiki/style.html) for the |
| recommended coding standards for this organization. |
| 1. Ensure that your code has an appropriate set of unit tests which all pass. |
| 1. Submit a request to fork your repo in GoogleCloudPlatform organization via |
| your proposal issue. |