From 2da16c7fbb99450b012e9924ee033d781833cc0f Mon Sep 17 00:00:00 2001 From: Ajay Kannan Date: Wed, 30 Dec 2015 15:32:16 -0800 Subject: [PATCH] Add build/test documentation --- CONTRIBUTING.md | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 167bf18e5082..d2684e6e111b 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -15,6 +15,20 @@ Using maven for build/test After you cloned the repository use Maven for building and running the tests. Maven 3.0+ is required. +When downloading the source, we recommend you obtain service account credentials. +These credentials will allow you to run integration tests using `mvn verify` in command line. +Follow step 2 of the [authentication instructions](https://github.com/GoogleCloudPlatform/gcloud-java#authentication) to generate and use JSON service account credentials. + +It's also important to test that changes don't break compatibility with App/Compute Engine and when running elsewhere. +To run tests on different platforms, try deploying the apps available on the [gcloud-java-examples](https://github.com/GoogleCloudPlatform/gcloud-java-examples) repository. +End-to-end tests should ensure that gcloud-java works when running on the + +* App Engine production environment (see the docs for [uploading your app to production App Engine](https://cloud.google.com/appengine/docs/java/tools/maven#uploading_your_app_to_production_app_engine)) +* App Engine development server (see the docs for [testing your app with the development server](https://cloud.google.com/appengine/docs/java/tools/maven#testing_your_app_with_the_development_server)) +* Compute Engine (see the [Getting Started Guide](https://cloud.google.com/compute/docs/quickstart), and be sure to [enable the appropriate APIs](https://github.com/GoogleCloudPlatform/gcloud-common/tree/master/authentication#on-google-compute-engine)) +* Your desktop (using `mvn exec:java`, for example) + +When changes are made to authentication and project ID-related code, authentication and project ID inference should be tested using all relevant methods detailed in the [authentication docs](https://github.com/GoogleCloudPlatform/gcloud-java#authentication) and [project ID docs](https://github.com/GoogleCloudPlatform/gcloud-java#specifying-a-project-id). Adding Features ---------------