The JBoss Community is planning to participate in Google Summer of Code in 2018.
All students & developers are welcome to participate in the Google Summer of Code 2018 program with the JBoss Community (once JBoss Community is accepted by Google)!
You can take look on org page of Summer of Code website for proceeding with application process.
If you are a student looking forward to participate the GSoC 2018 with the JBoss Community, feel free to browse the growing idea list below. Please don't hesitate to contact the mentor(s) indicated in the proposal for any related clarification and to discuss proposals. Students can submit the proposals in 2018.
If you want to suggest an additional idea, please use the page GSoC 18 Student Ideas (you'll need a free JBoss Community account to edit the page). Interested mentors can check the student ideas page and sign up to be a mentor by moving the idea onto the main page.
Administrators and Mentors :
We will list the potential mentors in this place. For now, if you have any questions, please contact the primary GSoC administrator:
Communication channels :
Gitter : JBossOutreach/GSoC - Gitter
IRC : #gsoc-jboss on freenode
Please take note - These channel are about generic doubts. For project specific doubts you will need to contact project mentors and channels specified in the project description.
Take Note :
Points to consider while choosing any project :
1. You meet at least 50 percent of pre-rq. Remaining skills can be honed on the go, so don't worry if you lack some.
2. You can relate with the project idea and you have used something related to the project as user.
3. You are willing more toward learning the skills and less toward boasting about the skills you have already.
Suggested steps after choosing favourite project :
1. Start to use product/tool/api as user or hello world client application.
2. Setup the development environment for project and start to use your own build.
3. Look for new comer bugs and try to get your head around them.
4. Let us know if you feel stuck at any stage.
Idea Proposals :
Category : Testing
EAT (EAP Additional Testsuite) - TESTING INFINITE SOFTWARE PROJECT VERSIONS
The innovative part of EAT is creating the test once and testing with any version of the tested software. It may be firstly applied for the JBOSS Servers, but, in general, a similar structure, can be used for creating tests about any software with multiple versions or for multiple software programs that have a part of the testsuite in common. EAT is a project under the ΙΔΕΑ statement.
The project will have three parts :
1. Go through the EAT workshop.
2. Create different test sets at the server layer using the existent tests of EAT (e.g. test sets for features could be different from test sets for bugs ).
3. Use the AT (Additional Testsuite) generalized structure to create an AT for a multi-versioned java project of your choice.
github repo : https://github.com/jboss-set/eap-additional-testsuite
Contact / potential mentors: Panagiotis Sotiropoulos (email@example.com)
Associated JBoss community project: EAT - EAP Additional Testsuite
Category : Mobile
AeroGear Digger - Xamarin support
AeroGear Digger is a project based on OpenShift and Jenkins that provides a mobile CI/CD build system for developers.
We are looking to support xamarin pipelines in its build system for both android and ios platforms:
- Install MSBuild into our android-sdk-slave jenkins container
- Automate MSBuild installation in osx node(s)
- Provide xamarin sample jenkinsfiles
- Properly handle debug and release builds for both android an ios platforms
- Create a xamarin jenkins plugin if needed
- MSbuild tool: https://github.com/Microsoft/msbuild
Technologies: MSBuild (cli to build xamarin apps), .net core on linux and osx, jenkins, fastlane, openshift and ansible
Contact / potential mentors: Leonardo Rossetti (firstname.lastname@example.org)
AeroGear Digger - CI/CD workflows on AeroGear Digger with advanced testing cases
AeroGear Digger gives users the possibility of coming up with their own CI/CD workflow. We would like to experiment with some advanced testing scenarios.
Summary of idea:
Prepare workflows for Android and IOS app builds that demonstrate how to do some advanced testing scenarios on an AeroGear Digger CI/CD workflow. Examples are on-device or on-simulator testing, compatibility testing, low-level resource testing, offline testing and performance testing but not limited to these.
Here is an overview of the tasks to be done:
- Install necessary tools in build containers.
- Install plugins in Jenkins installation, if necessary.
- Execute the workflow step in CI/CD workflow in Jenkinsfile
- Create sample workflows, record demos about them, write blog posts about them
Technologies: Jenkins, Mobile, Docker, OpenShift
Contact / potential mentors: Ali Ok (@aliok_tr)
OpenTracing framework integrations for JBoss projects, including Infinispan, Hibernate, etc
Summary of idea:
The OpenTracing standard enables distributed tracing instrumentation of applications. Although applications can directly use these APIs, framework integrations for many popular technologies are provided to allow those technologies to be instrumented without cluttering the application code. This task will be to implement OpenTracing framework integrations for a range of popular open source technologies, including infinispan and hibernate.
Knowledge prerequisite: Java, some Infinispan and/or Hibernate is a bonus
Skill level: Intermediate, Experienced
Associated Community project(s): OpenTracing, Jaeger
Category : Process-Driven Applications
AppFormer - jHipster Support
Summary of idea:
AppFormer is a process-driven application platform that enables users rapidly build business applications. AppFormer provides out-of-the-box a Visual Form Design, Visual Application Flow Design, Visual Multi-step Form Design, Charts and Diagrams, Page Builder, Rules and Process Integration... all this in a drag & drop way.
We're looking to expose AppFormer components to jHipster based applications. Here is an overview of the tasks to be done:
- Enhance AppFormer Polyglot API
- Build AppFormer modules for jHipster
- Build sample application
- jHipster: http://www.jhipster.tech/
Associated JBoss community project(s): AppFormer, jBPM, Drools
Skill level: Intermediate
Contact / potential mentors: Alex Porcelli (@porcelli)
Category : Data Streaming
Strimzi - Bridging HTTP to Apache Kafka
Summary of idea:
Strimzi is a project about running Apache Kafka on Kubernetes and OpenShift.
In order to improve the current AMQP - Kafka bridge, this idea is about adding an HTTP protocol head to the bridge itself. It means that the bridge should be able to "bridge" HTTP clients to Apache Kafka for sending/receiving messages.
Web site project : http://strimzi.io/
GitHub repository : Strimzi · GitHub
GitHub Bridge repository : Bridge - GitHub
Knowledge prerequisites : Java, HTTP protocol
Skill level : Intermediate
Category : Text-processing
JBoss Web Servers, JBoss Core Services and dependencies, security vulnerability tracking tool.
JBoss Web Servers consists of Apache Tomcat 7, Apache Tomcat 8 and Apache Tomcat 8.5 servers. JBoss Core Services consists of Apache HTTP server and its dependencies.
We're looking to develop a tool that will scan and parse the upstream security advisories of Apache Tomcat and Apache HTTP Server along with their dependencies(example: OpenSSL, APR, libxml2, curl, mod_security). The tool should trace down any new public CVE on every JWS and JBCS related upstream project.
Knowledge prerequisites : Preferrably Python(open to suggestions), Text-processing.
Skill level : Beginner - Intermediate
Category : Data Integration
Refine PostgreSQL SQL/MED JDBC Integration for use with Teiid.
Teiid maintains a PostgreSQL protocol compatibility layer for issuing queries. Satisfying all clients is difficult given the breadth of syntax and system metadata support required. It would be ideal if in OpenShift or other environments Teiid could simply rely on a PostgreSQL instance to act as the integration layer. However the current PostgreSQL JDBC foreign data wrappers have assumptions about what constructs that are supported, which instead should be configurable, and have not been validated as to all desired pushdown constructs (compatible Teiid SQL). Expansion of pushdown support, for example see join limitations, would require changes to PostgreSQL itself so may be out of scope.
Technologies: java, c, PostgreSQL
Associated JBoss community project(s): Teiid
Skill level : Intermediate