Skip to content

Latest commit

 

History

History
76 lines (50 loc) · 2.57 KB

CONTRIBUTING.md

File metadata and controls

76 lines (50 loc) · 2.57 KB

Contributing to the built on column plugin

Plugin source code is hosted on GitHub. New feature proposals and bug fix proposals should be submitted as GitHub pull requests. Your pull request will be evaluated by the Jenkins job.

Before submitting your change, please assure that you've added tests which verify your change.

Run Locally

Prerequisites: Java, Maven

  • Ensure Java 11 or 17 is available.
  $ java -version
  • Ensure Maven is included in the PATH environment variable.
  export PATH=$PATH:/path/to/apache-maven-3.8.6/bin
  • To run a plugin locally, the command is:
  mvn hpi:run
  • That starts a Jenkins controller with the minimum Jenkins version supported by the plugin and loads the plugin and its dependencies into that controller. Jenkins will be running on port 8080 and can be reached with the URL http://localhost:8080/jenkins/

    If a plugin maintainer wants to use a different Jenkins version, they run the command:

  mvn -Djenkins.version=2.375.1 hpi:run
  mvn -Dport=9090 hpi:run
  • If a plugin maintainer wants to allow other computers to access that Jenkins controller while it is running, they run the command:
  mvn -Dhost=0.0.0.0 hpi:run

Code Coverage

JaCoCo code coverage reporting is available as a maven target and can be displayed by the Jenkins warnings next generation plugin. Please try to improve code coverage with tests when you submit.

  • mvn -P enable-jacoco clean install jacoco:report to report code coverage with JaCoCo.

Please don't introduce new spotbugs output.

  • mvn spotbugs:check to analyze project using Spotbugs
  • mvn spotbugs:gui to review report using GUI

Maintaining automated tests

Automated tests are run as part of the verify phase. Run automated tests with multiple Java virtual machines in a development with the command:

$ mvn clean -DforkCount=1C verify

Report an Issue

Use the "Report an issue" page to submit bug reports.

Security Issues

Follow the Jenkins project vulnerability reporting instructions to report vulnerabilities.