blob: 95f04ffeb707a47fdba04d4806e7d76d0b01082a [file] [log] [blame]
<?php require_once($_SERVER['DOCUMENT_ROOT'] . "/eclipse.org-common/system/app.class.php"); require_once($_SERVER['DOCUMENT_ROOT'] . "/eclipse.org-common/system/nav.class.php"); require_once($_SERVER['DOCUMENT_ROOT'] . "/eclipse.org-common/system/menu.class.php"); $App = new App(); $Nav = new Nav(); $Menu = new Menu(); include($App->getProjectCommon()); # All on the same line to unclutter the user's desktop'
$pageTitle = "New Project Provisioning Request";
$pageKeywords = "projects";
$pageAuthor = "Bjorn Freeman-Benson Nov 20/05";
ob_start();
?>
<script language="javascript">
function ValidForm() {
var boolOK = true;
var committerOK = false;
var alertmsg = "";
if( document.project.yourName.value == ""){
boolOK = false;
alertmsg += 'Your name is a required field. Please try again.\n\r';
}
if( document.project.yourEmail.value == ""){
boolOK = false;
alertmsg += 'Your Email is a required field. Please try again.\n\r';
}
if( document.project.yourPhone.value == ""){
boolOK = false;
alertmsg += 'Your phone number is a required field. Please try again.\n\r';
}
if( !document.project.yourDevelopmentProcess.checked ){
boolOK = false;
alertmsg += 'Read and agreeing to follow the development process is required.\n\r';
}
if( document.project.yourProject.value == ""){
boolOK = false;
alertmsg += 'The project name is a required field. Please try again.\n\r';
}
if( (document.project.committerName1.value != "") && (document.project.committerEmail1.value != "" ) )
committerOK = true;
if( (document.project.committerName2.value != "") && (document.project.committerEmail2.value != "" ) )
committerOK = true;
if( (document.project.committerName3.value != "") && (document.project.committerEmail3.value != "" ) )
committerOK = true;
if( (document.project.committerName4.value != "") && (document.project.committerEmail4.value != "" ) )
committerOK = true;
if( (document.project.committerName5.value != "") && (document.project.committerEmail5.value != "" ) )
committerOK = true;
if( (document.project.committerName6.value != "") && (document.project.committerEmail6.value != "" ) )
committerOK = true;
if( (document.project.committerName7.value != "") && (document.project.committerEmail7.value != "" ) )
committerOK = true;
if( !committerOK ){
alertmsg += 'You need to specify at least one committer';
boolOK = false;
}
if( !boolOK ){
alert(alertmsg);
}
if(boolOK) {
document.project.submit();
}
return boolOK;
}
</script>
<div id="maincontent">
<div id="midcolumn">
<h1><?= $pageTitle ?></h1>
<form name="project" method="POST" action="submit_project_provisioning_request.php" onsubmit="return ValidForm()">
<font size="+2">To be completed by a PMC member of the new project.</font>
<table border=0 cellspacing=5 cellpadding=2 width="100%" >
<tr>
<td colspan="2">
<p>January 5, 2006 </p>
<p> This form is used to request the infrastructure for projects that have completed a successful Creation Review and are beginning the Validation Phase of their project
(under an existing Top-Level Project) at eclipse.org. These documents follow the Eclipse Project Lifecyle as described in the
<a href="/projects/dev_process/"> Eclipse Development Process</a> and are intended to complement the information
provided there. In general all inquiries related to project provisioning can be sent to the
<a href="mailto:emo@eclipse.org"> EMO</a>.
</p>
<p> &nbsp;
</p>
<p>This document is to be completed by a PMC member of the new
project. After a successful Creation Review, the project enters the Validation Phase and additional infrastructure is created to support the initial work on the project:</p>
<ul>
<li>CVS commit rights</li>
<li>CVS component structure</li>
<li>download site</li>
<li>a developer mailing list and</li>
<li>the project website</li>
</ul>
<p> Ongoing changes to the project's core infrastructure are expected especially during the Validation Phase, as the project matures. Please consult the
Project Implementation Phase Provisioning document for pointers on how to implement these changes. </p>
<p> <span style="background-color: #FFFFCC">This form is processed
manually. Thus we request that you reduce the sysadmin overhead by
only submitting complete data. Please wait until you have all the
answers and then submit the completed form once. Multiple partial
submission will (unfortunately) just confuse the situation. Thanks
for your understanding.</span> </p>
<p>If you have any questions, please send an email to the <a href="mailto:emo@eclipse.org"> EMO</a>. </p>
</td>
</tr>
<tr>
<td colspan="2">&nbsp;</td>
</tr>
<tr><td colspan="2">
<hr>
<strong>Your Info</strong><br></td></tr>
<tr><td width="22%" align="right">Name: </td><td width="78%"><input type="text" size="60" name="yourName"></td></tr>
<tr>
<td align="right">E-mail: </td>
<td><input type="text" size="60" name="yourEmail"></td>
</tr>
<tr>
<td align="right">Phone number: </td><td><input type="text" size="40" name="yourPhone"></td></tr>
<tr>
<td align="right">Development Process </td><td><input type="checkbox" name="yourDevelopmentProcess" value="I AGREE">
I have read and will follow the <a href="/projects/dev_process/">Eclipse
Development Process</a></td></tr>
<tr>
<td colspan="2">
<hr>
<strong>Project Info</strong><br></td>
</tr>
<tr>
<td align="right">New Eclipse Project: </td>
<td><input type="text" size="60" name="yourProject"></td>
</tr>
<tr>
<td align="right">Host Top-Level Project: </td>
<td><input type="text" size="60" name="hostProject" value="Technology PMC"></td>
</tr>
<tr>
<td colspan=2>&nbsp;</td>
</tr>
<tr>
<td colspan="2">
<hr>
<strong>CVS Components</strong><br></td>
</tr>
<tr>
<td colspan="2">A list of the initial initial components. Typical component names are <code>org.eclipse.[shortname].[component]</code>. The
short name is some variation of the project's Descriptive Name - the Acronym, a
shortened version, or even the whole name. The project's optional Nickname is <b><i> not</i></b> a valid
short name for CVS components. To make the
sysadmins' lives easier, please enter the component names one per
line. <span style="background-color: #FFFFCC">If you intend to put
an initial code contribution in CVS as soon as the repository is
created, you will have filled out the <a href="/legal/ContributionQuestionnairePart1-v1.0.htm">Code
Contribution Questionaire</a> (because, of course, you remember every
detail of the <a href="/legal/committerguidelines.php">Committer
Due Diligence Guidelines</a> and the <a href="/legal/EclipseLegalProcessPoster-v1.2.4.pdf">descriptive process flowchart poster</a>,
and would never forget this step :-)</span></td>
</tr>
<tr>
<td colspan="2"><textarea cols="90" rows="10" name="initialComponents"></textarea></td>
</tr>
<tr>
<td colspan=2>&nbsp;</td>
</tr>
<tr>
<td colspan="2">
<hr>
<strong>Committer List</strong><br></td>
</tr>
<tr>
<td colspan="2">
<p align="left">A list of the initial committers for the project. <span style="background-color: #FFFFCC">Note
that each committer must have completed the e-forms and paper-forms as specified in the <a href="/legal/newcommitter.php">new
committer process</a>. The project
cannot
be provisioned without at least one committer and you cannot be a
committer until you have completed these forms and agreements.</span></p>
</td>
</tr>
<tr>
<td colspan="2">
<table border="0" width="100%">
<tr>
<td width="25%">Name</td>
<td width="25%">Email Address</td>
<td width="50%">Update privileges to these CVS
components</td>
</tr>
<tr>
<td width="25%" valign="top" align="left"><input type="text" size="30" name="committerName1"></td>
<td width="25%" valign="top" align="left"><input type="text" size="40" name="committerEmail1"><br>
<input type="checkbox" name="committerWebsite1" value="YES" checked>Website
update privileges<br>
<input type="checkbox" name="committerDownloadPrivileges1" value="YES" checked>
Download server privileges<br>
<input type="checkbox" name="committerLead1" value="YES" checked>Project
Lead
</td>
<td width="50%" valign="top" align="left"><textarea cols="40" rows="3" name="committerPackages1"></textarea></td>
</tr>
<tr>
<td width="25%" valign="top" align="left"><input type="text" size="30" name="committerName2"></td>
<td width="25%" valign="top" align="left"><input type="text" size="40" name="committerEmail2"><br>
<input type="checkbox" name="committerWebsite2" value="YES">Website
update privileges&nbsp;<br>
<input type="checkbox" name="committerDownloadPrivileges2" value="YES">
Download server privileges<br>
<input type="checkbox" name="committerLead2" value="YES">Project
Lead</td>
<td width="50%" valign="top" align="left"><textarea cols="40" rows="3" name="committerPackages2"></textarea></td>
</tr>
<tr>
<td width="25%" valign="top" align="left"><input type="text" size="30" name="committerName3"></td>
<td width="25%" valign="top" align="left"><input type="text" size="40" name="committerEmail3"><br>
<input type="checkbox" name="committerWebsite3" value="YES">Website
update privileges&nbsp;<br>
<input type="checkbox" name="committerLead3" value="YES">Project
Lead</td>
<td width="50%" valign="top" align="left"><textarea cols="40" rows="3" name="committerPackages3"></textarea></td>
</tr>
<tr>
<td width="25%" valign="top" align="left"><input type="text" size="30" name="committerName4"></td>
<td width="25%" valign="top" align="left"><input type="text" size="40" name="committerEmail4"><br>
<input type="checkbox" name="committerWebsite4" value="YES">Website
update privileges&nbsp;</td>
<td width="50%" valign="top" align="left"><textarea cols="40" rows="3" name="committerPackages4"></textarea></td>
</tr>
<tr>
<td width="25%" valign="top" align="left"><input type="text" size="30" name="committerName5"></td>
<td width="25%" valign="top" align="left"><input type="text" size="40" name="committerEmail5"><br>
<input type="checkbox" name="committerWebsite5" value="YES">Website
update privileges&nbsp;</td>
<td width="50%" valign="top" align="left"><textarea cols="40" rows="3" name="committerPackages5"></textarea></td>
</tr>
<tr>
<td width="25%" valign="top" align="left"><input type="text" size="30" name="committerName6"></td>
<td width="25%" valign="top" align="left"><input type="text" size="40" name="committerEmail6"><br>
<input type="checkbox" name="committerWebsite6" value="YES">Website
update privileges&nbsp;</td>
<td width="50%" valign="top" align="left"><textarea cols="40" rows="3" name="committerPackages6"></textarea></td>
</tr>
<tr>
<td width="25%" valign="top" align="left"><input type="text" size="30" name="committerName7"></td>
<td width="25%" valign="top" align="left"><input type="text" size="40" name="committerEmail7"><br>
<input type="checkbox" name="committerWebsite7" value="YES">Website
update privileges&nbsp;</td>
<td width="50%" valign="top" align="left"><textarea cols="40" rows="3" name="committerPackages7"></textarea></td>
</tr>
</table>
</td>
</tr>
<tr>
<td colspan=2>&nbsp;</td>
</tr>
<tr>
<td colspan="2">
<hr>
<strong>Project Website</strong><br></td>
</tr>
<tr>
<td colspan="2">Each project has a web presence on www.eclipse.org. The content for a
project web pages is stored in a separate CVS repository on dev.eclipse.org.
The repository is automatically checked out to www.eclipse.org, and thereby
enables website authors to use HTML and PHP to author websites directly
on www.eclipse.org, does not require viewcvs, and paves the way for an
eventual MySQL database backend. Only those committers designated above will be granted update rights to the project website CVS.<br>
<br>
A directory of the form www.eclipse.org/[shortname] will be created for each new project. This also becomes the url for the
project home page. A default index.html page containing the required frames
is created in the website CVS repository.
<p>Here's how it works:</p>
<p>1 - In Eclipse, create a new CVS Repository location:</p>
<blockquote>
<blockquote>
<p><b>Server</b>: dev.eclipse.org<br>
<b>Path</b>: /cvsroot/org.eclipse<br>
<b>Username/Password</b>: your committer credentials are also used
for website authoring<br>
<b>Website url</b>: www.eclipse.org/[shortname]</p>
</blockquote>
</blockquote>
<p>2 - Checkout the "www" project, and you will see the project directories.
Each of these directories has a single index.html file that sets up the
frames and opens up main.html.<br>
<br>
3 - It may take up to one minute to transfer committed content to www.eclipse.org
but essentially committed changes are live.</p>
<p>There are some images which you may use in your web pages. These can
be viewed at www.eclipse.org/images/.
</p>
<p>The Tools and Technology Top-Level Projects have modeled the following
conventions for project websites. </p>
<table border="1" width="75%">
<tbody><tr>
<td>
<div align="center"><b>Filename</b></div>
</td>
<td>
<div align="center"><b>Purpose</b></div>
</td>
</tr>
<tr>
<td>
<div align="center">www.eclipse.org/xyz/main.html</div>
</td>
<td>
<div align="center">the content for the main project page </div>
</td>
</tr>
<tr>
<td>
<div align="center">www.eclipse.org/xyz/faq.html</div>
</td>
<td>
<div align="center">the project faq page</div>
</td>
</tr>
<tr>
<td>
<div align="center">www.eclipse.org/xyz/download.html</div>
</td>
<td>
<div align="center">the project downloads page</div>
</td>
</tr>
<tr>
<td>
<div align="center">www.eclipse.org/xyz/plan.html</div>
</td>
<td>
<div align="center">the project plan page</div>
</td>
</tr>
</tbody></table>
</td>
</tr>
<tr>
<td colspan="2">
<hr>
<strong>Project Proposal</strong><br></td>
</tr>
<tr>
<td colspan="2">The project proposal is automatically archived in the
proposals archive.</td>
</tr>
<tr>
<td colspan="2">
<hr>
<strong>Project Newsgroup</strong><br></td>
</tr>
<tr>
<td colspan="2">
Projects typically have a <code>eclipse.[parent project].[shortname]</code>
newsgroup. You will need to provide
a description using the <a href="/projects/dev_process/project-status-infrastructure.php">project status infrastructure</a>.
We strongly
suggest that the wording include a link to the project's home
page, e.g., www.eclipse.org/[shortname]. </td>
</tr>
<tr>
<td colspan="2">
<hr>
<strong>Project Mailing Lists</strong><br></td>
</tr>
<tr>
<td colspan="2">
New projects typically have a single <code> [shortname]-dev@</code> mailing list. When multiple components are being developed by independent teams, the new project may choose to have additional mailing lists of the form
<code>[shortname]-[component]-dev@</code>. The short name can be an abbreviation
of the Descriptive Name, or an Acronym, or the project's optional Nickname. The <i>short name</i> appears on <a href="/mail/">the
mailing list main page</a>.
You will need to provide
the <i>long description</i>
using the <a href="/projects/dev_process/project-status-infrastructure.php">project status infrastructure</a></td>
</td>
</tr>
<tr>
<td colspan="2">
<table border="0" width="100%">
<tr>
<td width="25%">Mailing List Name</td>
<td width="65%">Short Description</td>
</tr>
<tr>
<td width="25%" valign="top" align="left"><input type="text" size="30" name="mailingList1" value="[shortname]-dev"></td>
<td width="65%" valign="top" align="left"><input type="text" size="40" name="shortDescription1"></td>
</tr>
<tr>
<td width="25%" valign="top" align="left"><input type="text" size="30" name="mailingList2"></td>
<td width="65%" valign="top" align="left"><input type="text" size="40" name="shortDescription2"></td>
</tr>
<tr>
<td width="25%" valign="top" align="left"><input type="text" size="30" name="mailingList3"></td>
<td width="65%" valign="top" align="left"><input type="text" size="40" name="shortDescription3"></td>
</tr>
<tr>
<td width="25%" valign="top" align="left"><input type="text" size="30" name="mailingList4"></td>
<td width="65%" valign="top" align="left"><input type="text" size="40" name="shortDescription4"></td>
</tr>
<tr>
<td width="25%" valign="top" align="left"><input type="text" size="30" name="mailingList5"></td>
<td width="65%" valign="top" align="left"><input type="text" size="40" name="shortDescription5"></td>
</tr>
</table>
</td>
</tr>
<tr>
<td colspan="2">
<hr>
<strong>Builds</strong><br></td>
</tr>
<tr>
<td colspan="2">
The project leads are responsible for builds and maintenance on eclipse.org.
The frequency of these is dependent on the project needs. For more information
see the <a href="http://dev.eclipse.org/viewcvs/index.cgi/~checkout~/platform-releng-home/main.html">Platform release engineering</a></p>
</td>
</tr>
<tr>
<td colspan="2">
<hr>
<strong>Downloads</strong><br></td>
</tr>
<tr>
<td colspan="2">One or two appointed committers (see the checkboxes
above) will have access to
download.eclipse.org which is a high-bandwidth download
server. For mirroring purposes, the link to download
a file is /downloads/download.php?file=/tools/xyz/fileName.
This will allow mirror site selection based on the file requested. We ask
that you not link directly to &quot;download.eclipse.org&quot;.
<p>Because the downloads space is mirrored to several servers worldwide,
we ask you use this space wisely, taking extra care when placing large
files in this space, and performing regular file cleanups. Large directories
use bandwidth while mirroring and deter new mirror sites because of high
disk space requirements. Also, HTML and PHP files must not be placed on
the download server.</p>
<p>Uploads to this space are via SFTP or SCP. Use any SFTP or SCP client,
such as CoreFTP or WinSCP, to connect to download1.eclipse.org. Although you are
connecting to download1.eclipse.org, links to files must be done to www.eclipse.org/downloads/download.php?file=.
<br>
<br>
RSYNC transfers can be arranged. Please consult the <a href="mailto:webmaster@eclipse.org">webmaster@eclipse.org</a>
for details on setting this up.</p></td>
</tr>
<tr>
<td colspan="2">
<hr>
<strong>Bugzilla</strong><br></td>
</tr>
<tr>
<td colspan="2">
A Bugzilla &quot;product&quot; is created for the new project.
Underneath that product are a set of &quot;components&quot;. There are
two schemes for the component owners - some projects choose one, some
choose the other:
<ol>
<li>The component owners are actualy humans - project committers as
listed above. With this scheme, the component owner receives
notifications of new bugs for this component.&nbsp;&nbsp;<br>
<img border="0" src="arrow2.gif" width="23" height="22"> If you
choose this scheme, enter the component owners' email addresses. The
components owners must already have <span style="background-color: #FFFFCC">existing</span>
Bugzilla user accounts.</li>
<li>The component owners are abstract &quot;inbox&quot; entities. With
this scheme, anyone who wants to receive notifications of new bugs
for this component uses the Bugzilla &quot;watch this address&quot;
feature to watch the inbox email address. Thus plus for this scheme
is that it is easy to change component owners and have multiple
owners (just have them watch the inbox address); the minus is that
if nobody is watching the inbox address, the notifications go to
/dev/null.<br>
<img border="0" src="arrow2.gif" width="23" height="22"> If you
choose this scheme, enter the inbox email addresses in form
&quot;[short name].[component name]-inbox@eclipse.org&quot;. These
bugzilla accounts do <i>not </i>have to exist (and, in fact, they
should not exist).</li>
</ol>
<p><img border="0" src="/projects/dev_process/bugzillacomponent.jpg" width="355" height="113"></p>
</td>
</tr>
<tr>
<td colspan="2">
<table border="0" width="100%">
<tr>
<td width="25%">Component Name</td>
<td width="25%"> Description</td>
<td width="50%">Component Owner's Email Address</td>
</tr>
<tr>
<td width="25%" valign="top" align="left"><input type="text" size="30" name="component1"></td>
<td width="25%" valign="top" align="left"><input type="text" size="40" name="componentDescription1"></td>
<td width="50%" valign="top" align="left"><input type="text" size="40" name="componentOwner1"></td>
</tr>
<tr>
<td width="25%" valign="top" align="left"><input type="text" size="30" name="component2"></td>
<td width="25%" valign="top" align="left"><input type="text" size="40" name="componentDescription2"></td>
<td width="50%" valign="top" align="left"><input type="text" size="40" name="componentOwner2"></td>
</tr>
<tr>
<td width="25%" valign="top" align="left"><input type="text" size="30" name="component3"></td>
<td width="25%" valign="top" align="left"><input type="text" size="40" name="componentDescription3"></td>
<td width="50%" valign="top" align="left"><input type="text" size="40" name="componentOwner3"></td>
</tr>
<tr>
<td width="25%" valign="top" align="left"><input type="text" size="30" name="component4"></td>
<td width="25%" valign="top" align="left"><input type="text" size="40" name="componentDescription4"></td>
<td width="50%" valign="top" align="left"><input type="text" size="40" name="componentOwner4"></td>
</tr>
<tr>
<td width="25%" valign="top" align="left"><input type="text" size="30" name="component5"></td>
<td width="25%" valign="top" align="left"><input type="text" size="40" name="componentDescription5"></td>
<td width="50%" valign="top" align="left"><input type="text" size="40" name="componentOwner5"></td>
</tr>
<tr>
<td width="25%" valign="top" align="left"><input type="text" size="30" name="component6"></td>
<td width="25%" valign="top" align="left"><input type="text" size="40" name="componentDescription6"></td>
<td width="50%" valign="top" align="left"><input type="text" size="40" name="componentOwner6"></td>
</tr>
</table>
</td>
</tr>
<tr>
<td colspan="2">
<hr>
</td>
</tr>
<tr><td colspan=2>
<input type="hidden" name="state" value="submit" />
<input type="submit" name="Submit" value="Submit" />
</td></tr>
<tr>
<td colspan="2">
</td></tr>
<tr>
<td colspan="2">
FYI: The project is 'created' in three steps:
<ol>
<li>First the CVS, user accounts, mailing-list, master home page (links to your page in the website CVS), download space on download.eclipse.org, and bugzilla
components are created.</li>
<li>Then the developer mailing lists and the hosting Top-Level Project main page are connected to
the project</li>
<li>The project lead creates the initial website and the
<a href="/projects/dev_process/project-status-infrastructure.php">project status information files</a>.
<li>And then, voila, the project is "live".</li>
</ol>
<p>This sequencing ensures that all the core infrastructure is ready and that the data and an initial project structure are in place, before the project goes
live.</p>
</td></tr></table>
</form>
</div></div>
<?php
# Paste your HTML content between the EOHTML markers!
$html = ob_get_contents();
ob_end_clean();
# Generate the web page
$App->generatePage($theme, $Menu, $Nav, $pageAuthor, $pageKeywords, $pageTitle, $html);
?>