Help Wanted

Hudson project is always looking for more contributions. Here are some of the possible areas:

Core: Strategic Areas

  1. Virtual machines and slaves: help Hudson utilize virtualized build slaves by launching and stopping VMs as necessary. A variation of this is to do this on zones. Possible overlap with Stephen's work. Some native interfacing likely. What's cool: virtualization, distributed computing, computing cloud
  2. Authentication and personalization: now that some basic security infrastructure is place, expand that to better handle personalization. Involves significant work in the core. What's cool: security and stapler, visible feedback on your work
  3. Update center: simplify plugin deployments and updates through Hudson. Relatively independent from other works. What's cool: still get to deep dive on Hudson w/o overhead. Feel of B2C.
  4. Intelligence: perform better test result analysis, especially around matrix testing. Analyze build/test failures and try to associate that with changes. What's cool: data-mining, smart heuristics

IDE Integration

  1. NetBeans plugin had lost the owner, and he agreed to move the code over to Hudson CVS.
  2. IntelliJ plugin is still in its infancy.

IDE integration has a lot of interesting opportunities, like connecting test results with IDE, opening projects from Hudson, and deferred commit.
What's cool: exposure to different technology set. Free-hand.

Maven & Hudson

A lot of users are moving more and more toward Maven, so a better support for Maven in Hudson is desirable

  1. Repository browser for Hudson artifacts
  2. Maven release handling
  3. Maven site support

Distributed SCM (Mercurial,git,etc) & Hudson

Distributed SCMs like git/Mercurial is picking up a steam, and a real distributed SCM has a lot of synergy with Hudson. So investments in this area will likely be fruitful in the future:

  1. Making Hudson job a hg repository. In this way a repository can be constantly built/tested, and clone is as easy as job copy
  2. Repository browsing within Hudson
  3. Sending changes to upstream, merging changes downstream, etc.

Community Development

  1. Start a regular Hudson newsletter that summarizes current development efforts, major plugin releases, maybe list users who have committed code since the last newsletter, or bug fix statistics.
  2. Blog aggregation, with Google Reader: tag posts by random people and aggregate them in a single feed

Infrastructure administration

  1. Help administer the wiki

QA tools

  1. Build a mechanism to utilize VMs to be able to exercise some parts of Hudson.
  2. Include code coverage from plugin test execution in the core's coverage report

 Misc

  1. Better IM support. Common framework in core, Bot, log archiving, notification.
  2. Better monitoring&management. Monitor resource utilization, report where to add more resources
  3. Wake-on-lan support for greener computing
  4. Also check out introductory RFEs for low-hanging fruits that are suitable for new comers.
  5. Localize Hudson to your language

Labels:

Enter labels to add to this page:
Wait Image 
Looking for a label? Just start typing.