Skip to content

Latest commit

 

History

History
71 lines (44 loc) · 2.58 KB

CONTRIBUTING.md

File metadata and controls

71 lines (44 loc) · 2.58 KB

Contributing to Google Cloud Ruby Client

  1. Sign one of the contributor license agreements below.
  2. Fork the repo, develop and test your code changes.
  3. Send a pull request.

Contributor License Agreements

Before we can accept your pull requests you'll need to sign a Contributor License Agreement (CLA):

  • If you are an individual writing original source code and you own the intellectual property, then you'll need to sign an individual CLA.
  • If you work for a company that wants to allow you to contribute your work, then you'll need to sign a corporate CLA.

You can sign these electronically (just scroll to the bottom). After that, we'll be able to accept your pull requests.

Setup

In order to use the google-cloud-ruby console and run the project's tests, there is a small amount of setup:

  1. Install Ruby. google-cloud-env requires Ruby 2.4+. You may choose to manage your Ruby and gem installations with RVM, rbenv, or chruby.

  2. Install Bundler.

    $ gem install bundler
  3. Install the project dependencies.

    $ bundle install

Tests

All contributions should include tests that ensure the contributed code behaves as expected.

To run the tests and code style checks together:

$ bundle exec rake ci

Unit Tests

The project uses the minitest library, including specs, mocks and minitest-autotest.

To run the unit tests for a package:

$ bundle exec rake test

Coding Style

Please follow the established coding style in the library. The style is is largely based on The Ruby Style Guide with a few exceptions based on seattle-style:

  • Avoid parenthesis when possible, including in method definitions.
  • Always use double quotes strings. (Option B)

You can check your code against these rules by running Rubocop like so:

$ bundle exec rake rubocop

Code of Conduct

Please note that this project is released with a Contributor Code of Conduct. By participating in this project you agree to abide by its terms. See Code of Conduct for more information.