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

Latest commit

 

History

History
93 lines (74 loc) · 4.24 KB

CONTRIBUTING.md

File metadata and controls

93 lines (74 loc) · 4.24 KB

Contributing to the New Relic Jenkins Plugin

Thanks for your interest in contributing to the New Relic Jenkins Plugin! We look forward to engaging with you.

How to Contribute

How to Get Help or Ask Questions

Do you have questions or are you experiencing unexpected behaviors after modifying this Open Source Software? Please engage with the “Build on New Relic” space in the Explorers Hub, New Relic’s Forum. Posts are publicly viewable by anyone, please do not include PII or sensitive information in your forum post.

Contributor License Agreement ("CLA")

We'd love to get your contributions to improve the New Relic Jenkins Plugin! Keep in mind when you submit your pull request, you'll need to sign the CLA via the click-through using CLA-Assistant. You only have to sign the CLA one time per project.

To execute our corporate CLA, which is required if your contribution is on behalf of a company, or if you have any questions, please drop us an email at open-source@newrelic.com.

Filing Issues and Bug Reports

We use GitHub issues to track public issues and bugs. If possible, please provide a link to an example app or gist that reproduces the issue. When filing an issue, please ensure your description is clear and includes the following information.

  • Project version (ex: 1.4.0)
  • Custom configurations (ex: flag=true)
  • Any modifications made to the New Relic Jenkins Plugin

A note about vulnerabilities

New Relic is committed to the security of our customers and their data. We believe that providing coordinated disclosure by security researchers and engaging with the security community are important means to achieve our security goals.

If you believe you have found a security vulnerability in this project or any of New Relic's products or websites, we welcome and greatly appreciate you reporting it to New Relic through HackerOne.

Setting Up Your Environment

This Open Source Software can be used in a large number of environments, all of which have their own quirks and best practices. As such, while we are happy to provide documentation and assistance for unmodified Open Source Software, we cannot provide support for your specific environment.

If you can build the New Relic Jenkins Plugin, you can develop it!

Pull Request Guidelines

Before we can accept a pull request, you must sign our Contributor Licensing Agreement, if you have not already done so. This grants us the right to use your code under the same Apache 2.0 license as we use for this project in general.

Coding Style Guidelines

Our code base is formatted according to the Google Java Style Guide.

The project is configured to use the Apache Maven Checkstyle plugin which can be utilized as follows:

  • Execute the task validate to verify that all *.java files are formatted properly:

./mvnw validate

Checkstyle is also run automatically as part of any goals which depend on the validate goal, especially compile and package.

Testing Guidelines

The New Relic Jenkins Plugin utilizes Testng and Mockito for unit and integration testing. Ideally, each PR should include tests covering the changes. Tests can be run using the .mvnw test command. Test output is generated in the target/surefire-reports folder for review.

All unit and integration tests are also run automatically as part of any goals which depend on the test goal, especially package.

License

By contributing to New Relic Jenkins Plugin, you agree that your contributions will be licensed under the License file in the root directory of this source tree.