GSoC 2019 Project Ideas

This page aggregates project ideas for Google Summer of Code 2019. See more information about this project and applications on the Jenkins Google Summer of Code page .

Below you can find project ideas which have been proposed by potential mentors for this year. Other ideas may be proposed by interested mentors and students (e.g. new features in the core, "write a plugin for MY_TOOL_OR_SERVICE", etc.). Such project applications will be considered though applicants may need to work with the community and GSoC org admins to find potential mentors. More info: proposing project ideas .

Project Category Skills to study/improve
Advanced Build Discard Strategy Plugin
Improve the existing Discard old builds feature with an Advanced Build Discarder Strategy plugin.
Potential Mentor(s):
Martin d'Anjou
Martin d'Anjou
Arnab Banerjee
Plugins Java
Artifact Promotion plugin for Jenkins Pipeline
Create a new highly anticipated engine for managing promotions in Jenkins Pipeline, with modern UIs and REST APIs.
Potential Mentor(s):
Claus Schneider
Claus Schneider
Oleg Nenashev
Oleg Nenashev
Jon Brohauge
Plugins Java, JavaScript, REST API
Artifactory REST Plugin
Create a new plugin to give Jenkins users the ability to make REST API calls to Artifactory natively.
Potential Mentor(s):
Martin d'Anjou
Martin d'Anjou
Christopher Dancy
Plugin Java, REST API, Artifactory, Jenkins Pipeline
Improvements to the Jenkins Acceptance Test Harness
Improve performance of the framework for WebUI and Integration testing.
Potential Mentor(s):
Martin d'Anjou
Martin d'Anjou
Oliver Gondža
Oliver Gondža
Ramon Leon
Dev Tools Java, Docker, Selenium
Automatic Specification Generator for Jenkins REST API
Find and implement the extraction of the REST APIs from the sources and generate and publish the REST APIs respective documentation.
Potential Mentor(s):
Martin d'Anjou
Martin d'Anjou
Kristin Whetstone
Oleg Nenashev
Oleg Nenashev
Supun Wanniarachchi
Plugins Java, REST API, OpenAPI / Swagger
Bitbucket REST Plugin
Create a new plugin to give Jenkins users the ability to make REST API calls to Bitbucket natively.
Potential Mentor(s):
Martin d'Anjou
Martin d'Anjou
Christopher Dancy
Shenyu Zheng
Plugin Java, REST API, Bitbucket, Jenkins Pipeline
Code Coverage API Plugin Improvements
Improve the new Jenkins Code Coverage API plugin and enhance its performance and extensibility.
Potential Mentor(s):
Shenyu Zheng
Jeff Pearce
Jeff Pearce
Plugins Java, JavaScript, Coverage
Configuration as Code Plugin Compatibility
Update Jenkins plugins to make them compatible with the emerging Configuration-as-Code plugin which allows configuring Jenkins with YAML.
Potential Mentor(s):
Ewelina Wilkosz
Ewelina Wilkosz
Oleg Nenashev
Oleg Nenashev
Tim Jacomb
Tim Jacomb
Jon Brohauge
Martin d'Anjou
Martin d'Anjou
Plugins Java, YAML, Configuration Management
Polling Docker Registries for Image Changes
Create a new Jenkins plugin to automate polling of image changes and security scans.
Potential Mentor(s):
Andrey Falko
Andrey Falko
Justin Harringa
Justin Harringa
Ankit Jain
Plugins Java, Docker
EDA Coverage Adapters
Create Jenkins plugins for various Electronic Design Automation coverage reports.
Potential Mentor(s):
Martin d'Anjou
Martin d'Anjou
Oleg Nenashev
Oleg Nenashev
Udara De Silva
Shenyu Zheng
Plugins Java, EDA Tools, FPGA, ASIC, Coverage
Plugin(s) for Electronic Design Automation tools
Create a new Jenkins plugin for one of widely used EDA tools.
Potential Mentor(s):
Martin d'Anjou
Martin d'Anjou
Oleg Nenashev
Oleg Nenashev
Plugins Java, EDA Tools
Cloud Features for External Workspace Manager Plugin
Add support of provisioning workspaces from cloud services.
Potential Mentor(s):
Martin d'Anjou
Martin d'Anjou
Patrick Hynes
Pham Vu Tuan
Pham Vu Tuan
赵晓杰(Rick)
赵晓杰(Rick)
Alexandru Somai
Plugins Java, Cloud-based storage (e.g. Amazon EFS)
External Fingerprint Storage for Jenkins
Extend Jenkins to support storing artifact usage history in external databases.
Potential Mentor(s):
Oleg Nenashev
Oleg Nenashev
Pham Vu Tuan
Pham Vu Tuan
Mike Long
Core Java, Databases (PostgreSQL/Elasticsearch), REST API, JavaScript
Freestyle job to Pipeline job converter
Offer new plugins and tools to simplify migration from Freestyle projects to the new Pipeline job type.
Potential Mentor(s):
Craig Rodrigues
Martin d'Anjou
Martin d'Anjou
Plugins Java, XML, Python, Groovy, Jenkins Pipeline
Multi-branch Pipeline support for Gitlab SCM
Add Multi-branch Pipeline support for Gitlab SCM private and SaaS instances so that Jenkins can automatically build branches and pull requests with Jenkinsfile.
Potential Mentor(s):
赵晓杰(Rick)
赵晓杰(Rick)
Jeff Pearce
Jeff Pearce
Joseph Petersen
Plugin Java, Gitlab SCM
Jenkins REST Plugin
Create a new plugin to give Jenkins users the ability to make calls to other Jenkins instances via their REST API.
Potential Mentor(s):
Martin d'Anjou
Martin d'Anjou
Christopher Dancy
Plugin Java, REST API, Jenkins Pipeline
Jenkins and Machine Learning Plugins for Data Science
Create a new plugin for integrating Jenkins with one of Machine Learning tools (e.g. Jupyter Python, TensorBoard, or Sacred).
Potential Mentor(s):
Martin Holeček
Denis Joubert
Ioannis Moutsatsos
Bruno P. Kinoshita
Marky Jackson
Marky Jackson
Plugins Java, Python, Machine Learning & Tools, Jenkins Pipeline, Data Science
Pipeline Step Documentation Generator improvements
Enhance the Jenkins Pipeline documentation generator to produce better documentation for thousands of Pipeline developers.
Potential Mentor(s):
Martin d'Anjou
Martin d'Anjou
Kristin Whetstone
Dev Tools Java, Jenkins Pipeline, HTML, CSS, Asciidoc, JavaScript
Plugin Installation Manager CLI Tool / Library
Create a new tool to unify plugin management across the Jenkins ecosystem .
Potential Mentor(s):
Oleg Nenashev
Oleg Nenashev
Baptiste Mathus
Baptiste Mathus
Tools Java, Maven, Go, Dependency Management, Docker, Configuration-as-code
Jenkins Remoting Monitoring
Support monitoring of Jenkins remoting networking with open source monitoring tools such as Prometheus, Grafana, etc..
Potential Mentor(s):
Pham Vu Tuan
Pham Vu Tuan
Oleg Nenashev
Oleg Nenashev
Supun Wanniarachchi
Jeff Thompson
Jeff Thompson
赵晓杰(Rick)
赵晓杰(Rick)
Ankit Jain
Plugins, Core Java, Networking, Docker, Prometheus/Grafana/etc.
Remoting over Apache Kafka. Docker/K8s Features
Enhance the plugin and to provide out-of-the box management in Docker and especially Kubernetes environments.
Potential Mentor(s):
Pham Vu Tuan
Pham Vu Tuan
Oleg Nenashev
Oleg Nenashev
Andrey Falko
Andrey Falko
Supun Wanniarachchi
Jeff Thompson
Jeff Thompson
Jeff Pearce
Jeff Pearce
Plugins, Core Java, Apache Kafka, Docker, Kubernetes
Role Strategy Plugin performance
Improve performance of one of the most popular authorization plugins in Jenkins.
Potential Mentor(s):
Oleg Nenashev
Oleg Nenashev
夏润泽(RunZe Xia)
夏润泽(RunZe Xia)
Pham Vu Tuan
Pham Vu Tuan
Plugins Java, Performance Testing
Role Strategy Plugin: user experience
Improve UI and REST APIs using new technologies to make it more user-friendly.
Potential Mentor(s):
Oleg Nenashev
Oleg Nenashev
Supun Wanniarachchi
夏润泽(RunZe Xia)
夏润泽(RunZe Xia)
Plugins Java, JavaScript, REST/GraphQL
Jenkins Windows Services: YAML Configuration Support
Enhance Jenkins controller and agent service management on Windows by offering new configuration file formats and improving settings validation.
Potential Mentor(s):
Oleg Nenashev
Oleg Nenashev
Arnab Banerjee
Core, Tools C#, .NET, Windows, Windows Services, YAML, Java (optional)
Working Hours Plugin - UI Improvements
Rewrite Working Hours plugin UI in React, providing much needed usability Improvements.
Potential Mentor(s):
Jeff Pearce
Jeff Pearce
Plugins Java, JavaScript, React

Draft project ideas

Below you can see draft project ideas, which are currently under review. The scope of such ideas may change significantly during the discussions until the first coding period starts. You are welcome to comment on the draft and to join the project as a mentor. If you are a student, it is also fine to apply to the draft project ideas.

Project Category Skills to study/improve