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

From Eclipsepedia

Jump to: navigation, search
m
Line 3: Line 3:
 
''In this example, the new EMFT component is EMF JCR Management, or org.eclipse.emf.jcrm. See also bugs [https://bugs.eclipse.org/bugs/show_bug.cgi?id=182379 182379] and [https://bugs.eclipse.org/bugs/show_bug.cgi?id=182380 182380].''
 
''In this example, the new EMFT component is EMF JCR Management, or org.eclipse.emf.jcrm. See also bugs [https://bugs.eclipse.org/bugs/show_bug.cgi?id=182379 182379] and [https://bugs.eclipse.org/bugs/show_bug.cgi?id=182380 182380].''
  
==Legend==
+
== 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.
 
Names in square brackets are assignees. If more than one assignee is listed, the first listed is the principal w/ other(s) as backup.
Line 12: Line 12:
 
* <b style="color:green">COMP</b> = Component Owner
 
* <b style="color:green">COMP</b> = Component Owner
  
== Committer Legal Setup ==
+
== Workflow ==
 +
 
 +
=== Committer Legal Setup ===
  
 
* [<b style="color:red">PMC</b>] submit New Committer Request Form (NCRF) for <b style="color:green">COMP</b>, per http://www.eclipse.org/projects/dev_process/new-committer.php
 
* [<b style="color:red">PMC</b>] submit New Committer Request Form (NCRF) for <b style="color:green">COMP</b>, per http://www.eclipse.org/projects/dev_process/new-committer.php
Line 19: Line 21:
 
* [<b style="color:green">COMP</b>] submit Committer Questionnaire
 
* [<b style="color:green">COMP</b>] submit Committer Questionnaire
  
== Commiter Account Setup ==
+
 
 +
=== Commiter Account Setup ===
  
 
* [<b style="color:blue">WM</b>] create dev.eclipse.org userid for <b style="color:green">COMP</b>; user requires a full shell, not a restricted one
 
* [<b style="color:blue">WM</b>] create dev.eclipse.org userid for <b style="color:green">COMP</b>; user requires a full shell, not a restricted one
Line 29: Line 32:
 
* [<b style="color:blue">WM</b>] add <b style="color:orange">REL</b> to group emf-jcrm-releng
 
* [<b style="color:blue">WM</b>] add <b style="color:orange">REL</b> to group emf-jcrm-releng
  
== Component Setup ==
+
 
 +
=== Component Setup ===
  
 
* [<b style="color:green">COMP</b>] provide component description text to <b style="color:red">PMC</b> & <b style="color:orange">REL</b> for website intro/detail & Bugzilla component description  
 
* [<b style="color:green">COMP</b>] provide component description text to <b style="color:red">PMC</b> & <b style="color:orange">REL</b> for website intro/detail & Bugzilla component description  
  
== Bugzilla Setup ==
+
 
 +
=== Bugzilla Setup ===
  
 
* [<b style="color:green">COMP</b>] register with Bugzilla to create an account
 
* [<b style="color:green">COMP</b>] register with Bugzilla to create an account
Line 39: Line 44:
 
* [<b style="color:orange">REL</b>] add new [https://bugs.eclipse.org/bugs/describecomponents.cgi?product=EMFT component], with <b style="color:green">COMP</b> as default assignee
 
* [<b style="color:orange">REL</b>] add new [https://bugs.eclipse.org/bugs/describecomponents.cgi?product=EMFT component], with <b style="color:green">COMP</b> as default assignee
  
== CVS Setup ==
+
 
 +
=== CVS Setup ===
  
 
* [<b style="color:blue">WM</b>] change group id on /cvsroot/modeling/org.eclipse.emf/org.eclipse.emf.jcrm/ to emf-jcrm
 
* [<b style="color:blue">WM</b>] change group id on /cvsroot/modeling/org.eclipse.emf/org.eclipse.emf.jcrm/ to emf-jcrm
Line 45: Line 51:
 
* [<b style="color:blue">WM</b>] change group id on /cvsroot/modeling/org.eclipse.emf/org.eclipse.emf.jcrm.releng/ to emf-jcrm-releng
 
* [<b style="color:blue">WM</b>] change group id on /cvsroot/modeling/org.eclipse.emf/org.eclipse.emf.jcrm.releng/ to emf-jcrm-releng
  
== Code Contribution ==
+
 
 +
=== Code Contribution ===
  
 
* [<b style="color:green">COMP</b>] commit code into /cvsroot/modeling/org.eclipse.emf/org.eclipse.emf.jcrm/ per details in [[EMFT_Procedures | 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.
 
* [<b style="color:green">COMP</b>] commit code into /cvsroot/modeling/org.eclipse.emf/org.eclipse.emf.jcrm/ per details in [[EMFT_Procedures | 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.
Line 51: Line 58:
 
* [<b style="color:green">COMP</b>] '''Third party''' code must be submitted to [https://dev.eclipse.org/ipzilla/ IPzilla] for legal clearance before being committed to CVS. Note also that many 3rd party libraries are available via the [http://www.eclipse.org/orbit/ Orbit] project, and so can be added to the project at build time (rather than needing to be duplicated in CVS).
 
* [<b style="color:green">COMP</b>] '''Third party''' code must be submitted to [https://dev.eclipse.org/ipzilla/ IPzilla] for legal clearance before being committed to CVS. Note also that many 3rd party libraries are available via the [http://www.eclipse.org/orbit/ Orbit] project, and so can be added to the project at build time (rather than needing to be duplicated in CVS).
  
== Release Engineering ==
+
 
 +
=== Release Engineering ===
  
 
* [<b style="color:orange">REL</b>] add new component to the EMFT website (http://www.eclipse.org/emft/projects/); identify as having no downloads yet
 
* [<b style="color:orange">REL</b>] add new component to the EMFT website (http://www.eclipse.org/emft/projects/); identify as having no downloads yet
Line 70: Line 78:
  
 
* [<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)
 +
  
 
[[Category:Releng]] [[Category:EMFT]]
 
[[Category:Releng]] [[Category:EMFT]]

Revision as of 14:22, 16 October 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


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., 0.7.0, 0.8.0, 1.0.0?)
  • [REL] set up build server (emft.eclipse.org or build.eclipse.org) for running JCRM builds, including adding component to build infrastructure, granting ssh & firewall access to COMP (if on emft.eclipse.org), and providing .htaccess username/password
  • [REL] set up build server for publishing JCRM builds
  • [COMP] publish first JCRM build to download1.eclipse.org
  • [REL] update website to reflect project has first successful build
  • [REL] update Search CVS (incl. relupdate.php) to ensure component is being logged (release notes, build news)