Difference between revisions of "Modeling Project Releng/Component Creation"

From Eclipsepedia

Jump to: navigation, search
(Release Engineering)
m (Release Engineering)
Line 62: Line 62:
 
=== Release Engineering ===
 
=== Release Engineering ===
  
* [<b style="color:orange">REL</b>] [[Modeling_Project_Releng/Website_Maintenance | add new component to the EMFT website]]; identify as having no downloads yet
+
* [<b style="color:green">COMP</b>] [[Modeling_Project_Releng/Website_Maintenance | add new component to the EMFT website]]; identify as having no downloads yet
  
 
* [<b style="color:green">COMP</b>] contact <b style="color:orange">REL</b> via IM (eg., [[User:nickb]]) to begin releng coordination
 
* [<b style="color:green">COMP</b>] contact <b style="color:orange">REL</b> via IM (eg., [[User:nickb]]) to begin releng coordination
Line 74: Line 74:
 
* [<b style="color:green">COMP</b>] publish first JCRM build to download1.eclipse.org
 
* [<b style="color:green">COMP</b>] publish first JCRM build to download1.eclipse.org
  
* [<b style="color:orange">REL</b>] update website to reflect project has first successful build. See [[Modeling_Project_Releng/Website_Maintenance#Site_Navigation]].
+
* [<b style="color:green">COMP</b>] update website to reflect project has first successful build. See [[Modeling_Project_Releng/Website_Maintenance#Site_Navigation]].
  
 
* [<b style="color:orange">REL</b>] update Search CVS (incl. relupdate.php) to ensure component is being logged (release notes, build news)
 
* [<b style="color:orange">REL</b>] update Search CVS (incl. relupdate.php) to ensure component is being logged (release notes, build news)

Revision as of 14:34, 14 November 2007

This is a process workflow for creating a new EMFT component.

In this example, the new EMFT component is EMF JCR Management, or org.eclipse.emf.jcrm. See also bugs 182379 and 182380.

Contents

Legend

Names in square brackets are assignees. If more than one assignee is listed, the first listed is the principal w/ other(s) as backup.

  • WM = Webmaster(s)
  • PMC = Project Management Chair
  • REL = Release Engineer
  • COMP = Component Owner

Workflow

Committer Legal Setup


Commiter Account Setup

  • [WM] create dev.eclipse.org userid for COMP; user requires a full shell, not a restricted one
  • [WM] add COMP to groups emf-jcrm, emf-jcrm-releng
  • [WM] add COMP to groups emftadmin (download.eclipse) & modeling-home (www.eclipse)
  • [WM] add REL to group emf-jcrm-releng


Component Setup

  • [COMP] provide component description text to PMC & REL for website intro/detail & Bugzilla component description
  • [COMP] provide introductory wiki page, linked from EMFT page

Bugzilla Setup

  • [COMP] register with Bugzilla to create an account
  • [REL] add new component, with COMP as default assignee


CVS Setup

  • [WM] change group id on /cvsroot/modeling/org.eclipse.emf/org.eclipse.emf.jcrm/ to emf-jcrm
  • [WM] change group id on /cvsroot/modeling/org.eclipse.emf/org.eclipse.emf.jcrm.releng/ to emf-jcrm-releng


Code Contribution

  • [COMP] commit code into /cvsroot/modeling/org.eclipse.emf/org.eclipse.emf.jcrm/ per details in EMFT Procedures. Recommend setting plugins to version 0.7.0 if based on EMF 2.2 or 0.8.0 if based on EMF 2.3; or, if code is really new, could start with 0.5.0.
  • [COMP] Third party code must be submitted to IPzilla for legal clearance before being committed to CVS. Note also that many 3rd party libraries are available via the Orbit project, and so can be added to the project at build time (rather than needing to be duplicated in CVS).


Release Engineering

  • [COMP] contact REL via IM (eg., User:nickb) to begin releng coordination
  • [COMP] provide component compilation requirements to REL: upstream dependencies (eg., EMF, UML2, OCL...), 3rd party libraries (from Orbit or other), JDK version (1.4 or 5.0), plugin version (eg., usually 0.7.0 to start). See also Build UI.
  • [COMP] publish first JCRM build to download1.eclipse.org
  • [REL] update Search CVS (incl. relupdate.php) to ensure component is being logged (release notes, build news)