OAuth support in FusionForge, and the forge can tweets

We have been working in the frame of COCLICO on implementing support of the OAuth protocol, both as an OAuth provider/server (for instance for the needs of authentication to the OSLC server‘s Web Services), and an OAuth consumer/client.

That OAuth consumer has been put to work in order to connect to twitter’s API, so that the forge is now able to push news to tweeter and other IM services.

OAuth will, beyond twitter, allow the forge to interoperate with other web services supporting connections on behalf of users, instead of using fake accounts, or storing passwords in the databases.

All these are committed in FusionForge’s SVN trunk.

New paper “Introducing OSLC, an open standard for interoperability of open source development tools”

We’ll be presenting at ICSSEA 2011 in november, our paper “Introducing OSLC, an open standard for interoperability of open source development tools“, which recaps of some efforts we conducted in COCLICO.

Authors: Olivier BERGER, Sabri LABBENE, Madhumita DHAR, Christian BAC

Abstract: In the COCLICO project, efforts have been made to improve interoperability of software development forges, to help integrate them better in the modern software quality process of organizations. In order to improve such interoperability, implementation of the Open Services for Lifecycle Collaboration (OSLC) specifications has been conducted (in particular the Change Management domain specifications). The OSLC-compatible open source adapters we have developed for the Jenkins Continuous Integration server and the FusionForge bugtrackers, have been integrated in a Web mashup, allowing to demonstrate the interoperability potential of OSLC-CM in a continuous integration use case. Even though deployment of OSLC is still limited for open source tools in the Application Lifecycle Management (ALM) field, we believe it will offer great benefits and potential, for new complex and difficult problems, in particular for large scale bug tracking applications.

Keywords: ALM, standard, interoperability, OSLC, OSLC-CM, FusionForge, Jenkins, open source, free software

Dynamically querying external (sub) projects properties with RDF in FusionForge

I’ve been working recently on two plugins for FusionForge. The work is somehow a POC for some COCLICO dynamic interoperability work-package, but some outcomes may actually be of use someday in real life, who knows 😉

The first plugin is called extsubproj, and allows the definition of links to external subprojects (i.e. hosted on another forge), in the properties of a FusionForge project. It’s basically managing a set of stored URLs and displaying them in the top project’s summary page. Nothing fancy, so far, and the code is not yet finished, nor pushed to FusionForge’s trunk yet.

The second plugin, called doaprdf, allows the publication, by the forge, on the same URL as the project summary page (those URLs are standardized in FusionForge in the form : http://.../projects/projname), of a RDF+XML description of some of the project’s metadata, using the DOAP dialect. This works with content-negotiation, following principles of the Linked Data paradigm, so that the same URL, when requested for HTML, renders a Web page (the forge project’s summary page) meant for humans^geeks, and when queried with a special content type Accept HTTP header (Accept: application/rdf+xml), meant for machines.

Now, when you combine these two, you gain the possibility of having extsubproj display not only the suprojects’ URLs, but also some of their meta-data, for instance a link in the form of <a href="http://.../projects/projname">fetched doap:name</a>.

The POC illustrates how one may then construct a hierarchy of (public so far) projects and sub-projects accross the buondaries for different forges databases, and display them in a similar manner as local projects (for instance, what the FusionForge plugin projects-hierarchy provides), through dynamic query of the remote project’s properties fetched on demand and modeled in a generic dialect (RDF with common ontologies such as DOAP).

Note that a similar FusionForge plugin “foafprofile" is being developped too for users profiles, using RDF and FOAF.

Stay tuned for more content in the same vein.

Intervention au prochain séminaire IRILL : Bug tracking à grande échelle et interopérabilité des outils de développement dans l’écosystème FLOSS

Je suis intervenu au séminaire Logiciel Libre et Programmation de l’IRILL, le jeudi 09/06 à 15h45.

Titre de l’exposé : Bug tracking à grande échelle et interopérabilité des outils de développement dans l’écosystème FLOSS

Résumé :

L’écosystème du logiciel libre (FLOSS) est caractérisé par un développement extrèmement décentralisé, avec de multiples canaux de production et de distribution décorellés, et des processus d’assurance qualité qui doivent donc prendre en compte ces aspects.

Dans cet ensemble de processus d’Assurance Qualité, nous détailerons le volet du suivi des rapports de bugs, en présentant quelques pistes de standardisation et des mécanismes d’interopérabilité (comme le standard OSLC).

Il reste encore de nombreux efforts d’implémentation à conduire, mais avec un espoir concret à lé clé de permettre la réalisation de nouveaux outils, basés sur l’approche Linked Data, permettant un suivi des rapports de bugs à grande échelle.

Toutes les informations concernant ce séminaire sont sur : http://www.irill.org/activities/seminaries

Update : les transparents de l’intervention sont en ligne (PDF 4 Mo).

Lecture “OSLC : open standard for interoperability of open source ALM tools” on may 11 at Solutions Linux

We’ll be speaking at Solutions Linux (in Paris, France) on May 11 (15h10 – 15h40), about “OSLC : open standard for interoperability of open source ALM tools”, where we’ll present some results of work conducted in the frame of the COCLICO project, around OSLC.

The more the merrier 🙂

More details here: Program of the Cloud / Virtualisation / Interoperability conferences.

Update 2011/05/11 : slides (in french) uploaded. The screencast of Jenkins and FusionForge integration through OSLC-CM delegated creation dialog (AJAX mashup) also online.

See my french blog post for more details.