Jump to: navigation, search

Hudson-ci/eclipse migration/issues

Hudson-headonly.png

Back to Hudson-ci home

Hudson Issues Migration Project

Background

Because of the nature of the origional Hudson-ci project on Java.net there is a mix of content in the issues.hudson-ci.org JIRA repository, some of which needs to be migrated to Bugzilla at Eclipse, some of which needs to be migrated to the new separate hudson-plugins project on java.net (to understand why this separate project exists consult ) and finally all of which needs to remain in archival form for historical reasons.

Goals

The final aim of this project is to achieve the following.

  • All open JIRA issues on those parts of Hudson and the associated core plugins migrated to bugs in Buzilla.  For IP reasons not all of the issue contents (specifially the comments and suggested code fragments) can be migrated.
  • All open JIRA issues relating to plug-ins that are not part of the Hudson Core that has been contributed to Eclipse need to be migrated to the JIRA owned by the hudson-plugins project on java.net. This will include all contents of those issues as there are no IP considerations in this particular migration
  • A stable archive of all closed JIRA issues to be maintained as part of the archived Husdon java.net project. This will include the full text of issues ported to the Hudson@eclipse bugzilla which will back reference this archive.


Proposed Migration Process

Phase 1 - Migration from issues.hudson-ci.org to Hudson JIRA on java.net

The first phase of the issue migration is to move the task of looking after the Hudson issues repository to the java.net infrastruture. This will allow us to decommission the JIRA instance on hudson-ci all together releaving strain there and will provide a stable archive of all issues should access be required in the past. This migration will involve the following steps:


Phase 1 migration process
1.1 Setup JIRA on existing java.net Hudson Project
1.2 Export complete repository from issues.hudson-ci.org and import it into the new Hudson project JIRA
1.3 Update existing Husdon-ci changelog links en-mass
1.4 Ensure hudson-issues is correctly reporting from the new repository
1.5 Update links on hudson-ci to the new issues repository
 



Phase 2 - Migration of Open Core issues to Buzilla

In Phase 2 we'll scrape all of the open issues relating to the parts of the product that are now in Eclipse and put them into the Hudson BugZilla.


Phase 2 migration process
2.1 Produce sample JIRA Export file for import prototyping Duncan Mills
2.2 Prototype JIRA XML export to BugZilla via BugZilla Rest APIs. Ensure that the newly created records have a backpointer to the Hudson java.net JIRA to enable the viewing of the no-migrated comments
2.3 Identify suitable filter for all open core issues to migrate on the Hudson JIRA
2.4 Export required issues and run Import
2.5 Close Migrated Issues in JIRA, generating a forward pointer to the appropriate Eclipse BugZilla record.
 



Phase 3 - Migration of Open Plug-in issues to java.net hudson-plugins project

Phase 3 is a JIRA to JIRA migration to move any open issues relating to the non-Eclipse Managed PlugIns to the hudson-plugins project on java.net


Phase 3 migration process
3.1 Create JIRA issues respository on Java.net drmills - in progress
3.2 Identify suitable filter for plugin issue migration
3.3 Export required issues and run Import
3.4 Close Migrated Issues in Hudson JIRA, generating a forward pointer to the appropriate hudson-plugins JIRA record.
 

Phase 4 - Cleanup


Phase 4 Cleanup
4.1 Make java.net Hudson JIRA read only (remove all privileges for non Admins)
4.2 Decommission issues.hudson-ci.org

Information to Migrate

Given the restriction on IP content including not using or assigning Eclipse usernames wholesale here is the candidate list of fields to be imported into Bugzilla from the Hudson Jira:

  • Key
  • URL
  • Summary
  • Description
  • Votes
  • Fix version
  • Affects versions
  • Priority
  • Reporter - as a readonly field
  • Created date
  • Updated date
  • Component - if we are using them for T1 plugins
  • Assignee - If we can generate it: Assignee field to Eclipse login name of those commiters we know of - eg winston, anton, nikita, stuart, manfred, henrik ...