InfoQ

News

Kenai: Project Hosting Built on JRuby on Rails

Posted by Mirko Stocker on Sep 16, 2008 09:44 AM

Community
Ruby
Topics
JRuby ,
Portal/CMS ,
Open Source ,
Ruby on Rails ,
Configuration Management
Tags
Glassfish ,
MySQL ,
Subversion

Project Kenai (pronounced Keen-Eye, according to Tim Bray) is a new project hosting platform from Sun. It integrates several source code management systems, forums, mailinglists, issue-tracking systems and wikis. In this regard it's similar to Google Code, RubyForge and  SourceForgeGitHub, like Kenai, is built on Ruby on Rails, is currently focussed on hosting git repositories. Sun, as one of the biggest open source supporting companies in the world now also offers a platform, not only for its own projects, but for arbitrary open source projects.

An interesting aspect of Kenai is that it is built with Ruby on Rails and runs on JRuby, which is only consequent, considering Sun's support for JRuby. But JRuby isn't the only Sun project involved: Kenai runs on multiple GlassFish instances on OpenSolaris and uses MySQL as its database. One of the leaders of the project is Nick Sieger, who is well known for his engagement in JRuby where he wrote the original implementation of the ActiveRecord-JDBC connector.

Tim Bray's interview with Nick Sieger has more details on the technical aspects of Kenai:

We’re using Sun T2000 servers along with an X4500 for storage. OpenSolaris Nevada 70b is the OS. (We haven’t been able to upgrade to OpenSolaris with IPS yet because there is no SPARC port of IPS. We’re eagerly awaiting it though.) Apache runs in front, using mod_proxy_balancer to connect to multiple redundant GlassFish V2 instances talking to a single MySQL database. The main site is a Rails application running on JRuby, deployed in GlassFish as a war file built with Warbler. Perl, Python, and other various bits of Apache-based bailing wire help integrate Mercurial, Subversion, Sympa (mailing list software) and Bugzilla into the mix as well.

Even more technical details and some performance numbers can be found in Fernando Castano's presentation from RailsConf Europe.

Kenai allows to choose from a subset of recommended, OSI-approved licenses - but it's possible to choose to see a much more comprehensive list when creating projecs. Simon Phipps, Chief Open Source Officer at Sun, elaborates on the licensing issue in detail on his blog.

Future plans for the project include the integration of additional issue-tracking systems like JIRA and Git as an SCM option.

What is your favorite platform for project hosting?

why oh why? by juozas salna Posted Sep 16, 2008 11:12 AM
Re: why oh why? by Werner Schuster Posted Sep 16, 2008 5:07 PM
  1. Back to top

    why oh why?

    Sep 16, 2008 11:12 AM by juozas salna

    it could be written in asm and run on msdos boxes. i don't care. how will it be different from all other alternatives?

  2. Back to top

    Re: why oh why?

    Sep 16, 2008 5:07 PM by Werner Schuster

    It's different in that Sun wrote to host its own Open Source software (I'm guessing that at some point it'll replace the terrible java.net hosting interface). From what I understan it's also trying to cram as many options in as possible, ie. svn/hg/... for source code management, support for various bug trackers, etc.

    As for the question on who's interested in what it's written in - everyone who's writing JRuby on Rails application is interested in seeing what solutions and tools were used, ie. Warbler, ...

Educational Content

Bindings, Platforms, and Innovation

This presentation focuses on the Internet and separating myth from fact, history from the future, and the mundane from the imaginative. Bob Frankston presents a vision of what could and should be.

Orchestrating Long Running Activities with JBoss / JBPM

This article explores the use of JBoss and jBPM to implement design solutions that effectively address the issue of orchestrating long running activities.

Neo4j - The Benefits of Graph Databases

This presentation covers the use of graph databases as an optimal solution for data that is difficult to fit in static tables, rapidly evolving data or data that has a lot of optional attributes.

Realistic about Risk: Software development with Real Options

This session introduces Real Options and shows how it can help in running your project. Real Options is a decision-making process that can be used to manage risk.

Communication Flexibility Using Bindings

This article discusses the use of bindings on services and references (including the instance of non-configured bindings) as the means to implement SCA communications in a Web and SOA environment.

Writing DSLs in Groovy

After a short introduction to DSLs, Scott Davis plays with the keyboard showing how to approach the creation of a DSL by typing working snippets of Groovy code that get executed.

Scaling Agile with C/ALM (Collaborative Application Lifecycle Management)

IBM Rational and InfoQ present, Scaling Agile with C/ALM, an eBook showing organizations how to become “finely tuned software delivery machines” by enabling team integration and scaling.

Concurrent Programming with Microsoft F#

Amanda Laucher presents a real life enterprise application written in F#. She shows actual code snippets, explaining design decisions and suggesting how to use some of the F# constructs.