Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.
Hudson-ci/development
Hudson Continuous Integration Server | |
Website | |
Download | |
Community | |
Mailing List • Forums • IRC • mattermost | |
Issues | |
Open • Help Wanted • Bug Day | |
Contribute | |
Browse Source |
Information for Hudson Developers |
---|
This article is a stub. You can help Eclipsepedia by expanding it.
Introduction
This page provides information for developers who either want to contribute to (or understand) Hudson and those wanting to write plugins for Hudson (see also Extending Hudson)
Contents
Core Development
Development for Hudson as a whole is split into two overarching projects. The Hudson core and primary plug-ins are maintained here at Eclipse. Although anyone can pull the source code for this project contributions are slightly more controlled (see Submitting a Patch for Non-Committers). The other half of the project is the Hudson-Plugins project at Java.net. This project is open to anyone who wants to create and maintain a plugin. Generally the plugins are all licensed with the MIT license rather than the EPL. This article relates to the code associated with the Eclipse maintained codebase.
Source control
The Hudson Project maintains it's source code in a series of GIT repositories which partition the project into modules. The list below shows the set of repositories.
Working with the Source
To work with a particular module click on the link above for the repository that you want to work with. On the summary tab of that page you will see a section towards the bottom of the page (labelled Clone) which provides the list of clone targets.
For example, Hudson Core clone targets are:
- git://git.eclipse.org/gitroot/hudson/org.eclipse.hudson.core.git
- ssh://git.eclipse.org/gitroot/hudson/org.eclipse.hudson.core.git
- http://git.eclipse.org/gitroot/hudson/org.eclipse.hudson.core.git
To work with the source you should clone the appropriate repository:
For committers:
git clone ssh://nemo@git.eclipse.org/gitroot/hudson/org.eclipse.hudson.core.git |
Where nemo in this case is the committer Eclipse Id
For non-committers:
git clone http://git.eclipse.org/gitroot/hudson/org.eclipse.hudson.core.git |
When cloning from behind a firewall remember to set your HTTP_PROXY appropriately.
Procedures
For general information about GIT at Eclipse refer to the GIT page in Eclipsepedia. Thsi provides information on setting up SSH keys etc.