Skip to content
This repository has been archived by the owner on Jan 29, 2024. It is now read-only.

Latest commit

 

History

History
82 lines (61 loc) · 4.71 KB

CONTRIBUTING.md

File metadata and controls

82 lines (61 loc) · 4.71 KB

Contributing to OpenESPI-DataCustodian-java

Have a Question or Problem?

If you have questions about how to use the project, please direct these to the mailing list.

Found an Issue?

If you find a bug in the source code or a mistake in the documentation, you can help us by submitting an issue to our GitHub Repository. You may also submit a Pull Request with a fix.

Development Guidelines

The project uses a mixture of Cucumber and JUnit tests. When implementing a new feature or bugfix, please add appropriate test coverage before sending along a Pull Request.

Code Structure

When implementing a new feature or bugfix, you want to ensure the you have appropriate test coverage. Here is an example of the code structure for a single feature (UsagePoint REST API).

Note that each of the classes linked above reference many other classes that are individually unit and integration tested.

Submitting a Pull Request

Before you submit your pull request consider the following guidelines:

  • Search the Common module, the DataCustodian module and the ThirdParty module for an open or closed Pull Request that relates to your submission. You don't want to duplicate effort.

  • Create a fork of the project you'd like to contribute to.

  • Make your changes in a new git branch

    git checkout -b my-fix-branch master
  • Create your patch, including appropriate test cases.

  • Commit your changes and create a descriptive commit message:

    git commit -a
  • Build your changes locally to ensure all the tests pass

    mvn clean install
  • Push your branch to Github:

    git push origin my-fix-branch
  • In Github, send a pull request.

  • If we suggest changes then you can modify your branch, rebase and force a new push to your GitHub repository to update the Pull Request:

    git rebase master -i
    git push -f

That's it! Thank you for your contribution!