Version 29

    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.

    You can also look at GSoC-16 Ideas and 2017Ideas for suggestions from last years.

    .

     

     

     

    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:

    Heiko Rupp (@pilhuhn) or co-administrators Matthias Wessendorf (@mwessendorf) and Anuj Garg (@KeenWarrior).

     

    ---------------------------------

    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 (psotirop@redhat.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

     

    GitHub repositories:

     

     

    Other links:

     

     

    Technologies: MSBuild (cli to build xamarin apps), .net core on linux and osx, jenkins, fastlane, openshift and ansible

     

    Contact / potential mentors: Leonardo Rossetti (lrossett@redhat.com)

     

    AeroGear Digger - CI/CD workflows on AeroGear Digger with advanced testing cases

     

    Background:

    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

     

    GitHub repositories:

     

     

    Technologies: Jenkins, Mobile, Docker, OpenShift

     

    Contact / potential mentors: Ali Ok (@aliok_tr)

     

    Category: Tracing

     

    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.

     

    GitHub repositories:

     

    Knowledge prerequisite: Java, some Infinispan and/or Hibernate is a bonus

    Skill level: Intermediate, Experienced

    Contact(s) / potential mentors(s): Pavol Loffay (pavol_loffay ), Gary Brown (objectiser)

    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

     

    GitHub repositories:

    Other links:

     

    Technologies: java, jbpm, drools, jhipster, javascript, angular, spring boot

    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

    Contact / potential mentors : Paolo Patierno (@ppatierno), Jakub Scholz (@scholzj), Tom Bentley

     

    Category : Text-processing

     

    JBoss Web Servers, JBoss Core Services and dependencies, security vulnerability tracking tool.

     

    Background:

    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.

     

    Idea summary:

    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

    Contact / potential mentors : Jean-Frederic Clere (jfclere@redhat.com, jfclere) George Zaronikas (gzaronik@redhat.com, gzaronikas,  freenode: gzaronikas)

     

     

    Category : Data Integration

     

    Refine PostgreSQL SQL/MED JDBC Integration for use with Teiid.

     

    Idea summary:

    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

    Contact / potential mentors : Steve Hawkins (shawkins@redhat.com), Ramesh Reddy (rareddy@redhat.com)