Project goal: Cleaning and modernizing the extensively used GitLab plugin
Skills to study/improve: Java, Docker, GitLab
The GitLab plugin is widely used (58,727 installations) but has not had an active maintainer for a long time. Many of us at CloudBees have volunteered to keep it afloat over the years, including Owen, Basil, Bruno, Jean-Marc, and Mark. But it could use a sprint of active development. Maybe GSoC could be a good way to staff this with an intern?
At first sight, there are a number of things that need to be done to keep this plugin afloat in the long term:
Migrate from the very old version of RESTEasy it is using to the GitLab API plugin (just like GitLab Authentication, GitLab Branch Source, and GitLab Logo)
Revive the Docker-based functional test suite. It has been broken for some time and is currently disabled.
Fix any of the dozens of outstanding bugs.
The objectives could be expanded to cover the "sister" gitlab-branch-source
plugin.
This would be a good GSoC project for the following reasons:
While boasting less of a brag factor than the exponential backoff and jitter idea, impact to a large number of users might be brag factor enough.
Would be ideal for someone who wants to get GitLab experience and get paid along the way.
Feasible within three months: Nothing prohibitively hard here, just a matter of doing the work (cutting code and testing).
Stretchable and shrinkable scope: If the intern is struggling, we can drop one of the two main changes. If the intern is doing better than expected, we can fix more bugs.
Not fatal if the project fails: People still seem to keep using this plugin no matter how poorly maintained it is.
A new release of the GitLab plugin that uses the GitLab API instead of RESTEasy, many bugs fixed, and a revamped docker-based functional test suite.
Details to be clarified interactively, together with the mentors, during the Contributor Application drafting phase.