Never report security issues on GitHub, public Jira issues or other public channels (Gitter/Twitter/etc.), follow the instruction from Jenkins Security to report it on Jenkins Jira
In the Jenkins project we appreciate any kind of contributions: code, documentation, design, etc. Any contribution counts, and the size does not matter! Check out this page for more information and links!
Many plugins and components also define their own contributing guidelines and communication channels. There is also a big number of mailing lists and chats.
If you are a newcomer contributor and have any questions, please do not hesitate to ask in the Newcomers Gitter channel.
- For larger contributions create an issue for any required discussion
- Implement solution on a branch in your fork
- Make sure to include issue ID (if created) in commit message, and make the message speak for itself
- Once you're done create a pull request and ask at least one of the maintainers for review
- Remember to title your pull request properly as it is used for release notes
Prerequisites: Java and Maven.
-
Ensure Java 11 or 17 is available.
$ java -version openjdk version "11.0.18" 2023-01-17 OpenJDK Runtime Environment Temurin-11.0.18+10 (build 11.0.18+10) OpenJDK 64-Bit Server VM Temurin-11.0.18+10 (build 11.0.18+10, mixed mode)
-
Ensure Maven >= 3.8.1 is installed and included in the PATH environment variable.
$ mvn --version
$ mvn hpi:run
...
INFO: Jenkins is fully up and running
To work on the frontend code, two processes are needed at the same time:
On one terminal, start a development server that will not process frontend assets:
mvn hpi:run -Dskip.npm -P quick-build
On another terminal, start a webpack dev server:
npm run build:dev
It's recommended that you set up the above terminal commands in your IDE of choice.
Code style will be enforced by GitHub pull request checks.
For frontend code we use prettier.
You can automatically fix issues with npm run prettier
For java code we use spotless.
You can automatically fix issues with mvn spotless:apply