Hacktoberfest 2018. Contribute to Jenkins!
Once again October has arrived. That means the regular Hacktoberfest event is back! This year it will be the fifth installment. During this one-month hackathon you can support open-source and earn a limited edition swag.
On behalf of the Jenkins project, we invite you to participate in Hacktoberfest and to work on the project. We welcome all contributors, regardless of their background and Jenkins experience.
Quick start
-
Sign-up to Hacktoberfest on the event website.
-
Everything is set, just start creating pull-requests!
Contributing to Jenkins
There are many ways to contribute to Jenkins during Hacktoberfest. Generally, any pull requests in GitHub may qualify. You can…
-
Code - Contribute to the code or automated tests
-
Jenkins project codebase includes dozens of programming languages, mostly Java, Groovy, and JavaScript + Go in Jenkins
-
You can also find components in Ruby/Kotlin, and even native components in C/C++
-
-
Document - Improve documentation
-
Blog - write blogposts about Jenkins
-
Localize - Localize Jenkins components
-
Design - artwork and UI improvements also count!
-
Organize - Organize a local meetup for Jenkins & Hacktoberfest (see below)
See the Contribute and Participate page for more information.
Projects
The Jenkins project is spread across several organizations on GitHub (jenkinsci, jenkins-x, jenkins-infra). You are welcome contribute to any repository in any of those organizations, however various components in Jenkins have differing review and delivery velocity. Here is a list of Jenkins subprojects with maintainers who have committed to delivering quick reviews to Hackathon participants.
Project/component | Ideas and links |
---|---|
There is always something to improve in Jenkins core itself. You can address various issues, improve the codebase, and add new features there. |
|
Extend and improve Jenkins documentation, add your own blogpost. |
|
Try out the project and create new demos, extend documentation, and create new builders for your toolchains. Contributing guidelines, Quick start, creating custom builders, newbie-friendly issues |
|
Contribute to the fresh new plugin: improve the codebase, add demos and plugin integrations. |
|
Try and improve the recently released Evergreen project - an automatically updating rolling distribution system for Jenkins. |
|
Java 11 support (JEP-211) |
Contribute to Jenkins core and plugins to enable Java 11 in future releases. You can help to create new packaging, new features, testing flows, or cleanup issues Illegal Reflective Access in the code. |
Docker Packaging |
Add new features and improvements to Jenkins Docker packaging: Jenkins controller, Agents, and other components. |
Contribute to the new Website and the Simplified Chinese Localization plugin. |
|
Create new images and logos for Jenkins area meetups, subprojects, and plugins. You can also contribute new graphics to plugins. |
Note that this is not a full list, and the list will be extended depending on the interest from maintainers. You are welcome to contribute to existing Jenkins plugins… and even to create new ones.
Local events
Hacktoberfest is an online event, but there are many events being organized by open-source communities. You can join one of these events.
We also encourage Jenkins Area Meetup organizers to run Jenkins-specific events in October (workshops, hackergartens). If you are not a meetup organizer but want to host a meetup, you can reach out to the organizers via meetup.com resources (you can find a JAM here). Check out the Hacktoberfest Event Kit for more info.
FAQ
You can find Hacktoberfest FAQ here. Below you can find answer to some Jenkins-specific questions.
Q: I am new to Jenkins, how do I start?
If you are new to Jenkins, you could start by fixing some small and well described issues. There are lists of such newbie-friendly issues, see the links in the table above. You can also submit your own issue and propose a fix.
Q: I want to work on my own plugin, is it fine?
Yes, it is fine! Any contributions count, your role in a repository does not matter. Just make sure you create pull requests instead of direct pushes (hint: it’s a best practice if you have a CI configured for your repository).
Q: How to find documentation?
Jenkins project contains lots of materials about contributing to the project. Here are some links which may help:
-
Participate - landing page for newcomer contributors
-
Gitter channel for Q&A
Projects in the table above also have their own documentation to help newcomers.
Q: How do I get reviews?
All projects in the list above are monitored by their maintainers, and you will likely get a review within few days. Reviews in other repositories and plugins may take longer. In the case of delays, ping us in the hacktoberfest channel in Gitter. Unmerged pull-requests also count in Hacktoberfest, so merge delays won’t block you from getting prizes.
Q: I am stuck. How do I get help?
-
For non-technical questions (process and general direction) use our hacktoberfest channel in Gitter.
-
For technical questions please use the IRC chat, Developer mailing lists, or the main jenkinsci/jenkins channel. Many subprojects also have their own chats.