Hacktoberfest, SpringBoot & Jenkins contributions

I joined the 2023 Hacktoberfest event, and managed to end up with 3 main contributions:


It has been some time since I last took part in the Hacktoberfest open-source events.
This year, I came in with a handful of goals and minimal time to spare, and here’s how it all played out:

The event

Hacktoberfest happens every year in October, it is a free event which encourages open-source contribution.
I took part in the event in 2017 and wanted to give it another shot this year.

Goals for this year

As I started a new job on September, I had limited time for this October challenge. Therefore I went with a straight forward strategy:

  • Finding existing OS issues that do not require a huge onboarding.
  • Focusing on Java & Python, which are my main programming languages.

I did some preparation for the event by searching open-sourced projects on Github & Gitlab (both platforms provide Hacktoberfest Topics).

Here are the final contributions:

Jenkins Slack-Plugin: a pipeline status error

On my current job we use the Slack/Jenkins plugin, which send pipeline status and messages on Slack.

When noticing this existing issue regarding a pipeline error not setting the right build status, I immediately got inspired: I had already worked on Jenkins plugins before, and was vaguely familiar with the pipeline status behaviour:

  1. Reproduce the bug: I set up a new Jenkins dockerized environment, re-used an old Slack account, built and deployed the plugin on it.
  2. Isolate the concerned code base . Jenkins’ plugins usually works through steps. The faulty steps had to identified and fixed.
  3. Testing: I manually tested few scenarios, and added unit tests to avoid any further regressions.
Github MR     status: accepted & closed     time spent: ~4 hours

Spring-io initializr: Synchronizing the zip file name with the artefact ID

As I participated in an open-source coding night at my company Takima, I encountered minor issues related to the Spring Framework.

This one issue in particular caught my eye: the zip name generated by Spring Initializr sometimes didn’t match the project artefact ID.

After compiling a huge codebase (both start.spring.io and Initializr), fixing it implied a small refactoring in order to synchronize the naming process for both the artefactId and the zip file.

Github MR     status: accepted & closed     time spent: ~2 hours

Text-finder Jenkins plugin, a translation contribution that became a fix

Back in the old days, I started my open-source journey by doing some Jenkins plugin French translations.
Due to the lack of time, I decided that my last contribution would be a translation; and found an interesting Jenkins plugin already available in English and Japanese, but not in French.

However, during the translation into French, I noticed that the plugin’s folder structure for translations was incorrect, resulting in most of the Japanese translations being ignored.

I reorganized the structure to ensure that all translations were properly incorporated.
It ended up taking much more time than anticipated (finding the correct structure and testing for all languages), but it ultimately proved successful.

Github MR     status: accepted & closed     time spent: ~3 hours

Global summary

✅ 3 contributions accepted  ❌ Overlaped in November
✅ 3 distinct projects     ❌ Only Java projects
✅ Various types of pull requests.  


Written on December 11, 2023