blob: 0bea2ba28838a79554868265251f82a00557bcdd [file] [log] [blame]
<?php
/*******************************************************************************
* Copyright (c) 2010, 2013 Eclipse Foundation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
* Bjorn Freeman-Benson (Eclipse Foundation)- initial API and implementation
* Wayne Beaton (Eclipse Foundation)- Bug 240688
* Wayne Beaton and Denis Roy (EF) - Bug 306373 (Git support)
* Wayne Beaton - Bug 414884 (GitHub as an option)
*******************************************************************************/
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());
require_once(dirname(__FILE__) . "/classes/common.php");
/* 221934 - this page to remain on eclipse.org */
$pageTitle = "New Project Provisioning Request";
$pageKeywords = "";
$pageAuthor = "";
include( '_commonLeftNav.php' );
ob_start();
// $sql = "
// SELECT ProjectID FROM Projects where ProjectPhase = 'Proposal'
// ORDER By ProjectID";
//
if (isset($_GET['id'])) {
if (is_valid_project_name($_GET['id'])) {
$id = $_GET['id'];
}
}
if (isset($id)) {
$project_help = "If the project id ($id) is not correct, please contact
the <a href=\"mailto:emo@eclipse.org\">EMO</a> for assistance.";
$project_select = "$id<input type=\"hidden\" name=\"yourProject\" value=\"$id\"/>";
} else {
$sql = "SELECT
r.ProjectId as ProjectID
FROM
ProjectReviews as r
join ProjectReviewStatus as s on (r.id = s.id)
join (select ID, Max(value) as v from ProjectReviewStatus group by id) as m on (m.Id = r.id and m.v = s.value)
WHERE
ProjectID is not null
and Status = 'Waiting Provisioning'
ORDER By ProjectId";
$result = $App->foundation_sql($sql);
if (!mysql_num_rows($result)) {
$project_help = "There are no currently no projects waiting to be provisioned.
If this is an error, please contact the <a href=\"mailto:emo@eclipse.org\">EMO</a>
for assistance.";
$project_select = "<em>No projects to provision!</em>";
} else {
$project_help = "If the id for your project is not shown below, please contact
the <a href=\"mailto:emo@eclipse.org\">EMO</a> for assistance.";
$project_select = "<select name=\"yourProject\" style=\"width:40em\">";
while($row = mysql_fetch_assoc($result)) {
$projectId = $row['ProjectID'];
$project_select .= "<option>$projectId</option>";
}
$project_select .= "</select>";
}
}
?>
<style> .gray { color: gray } </style>
<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';
}
// Regular expression below should allow 1,2, or 3 level deep project identifiers.
if(!document.project.yourProject.value.match(/^<?php echo ProjectNamePattern; ?>$/)){
boolOK = false;
alertmsg += 'Your project name must be of the form \'toplevel[.project[.project]]\'\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( (document.project.committerName8.value != "") && (document.project.committerEmail8.value != "" ) )
committerOK = true;
if( (document.project.committerName9.value != "") && (document.project.committerEmail9.value != "" ) )
committerOK = true;
if( (document.project.committerName10.value != "") && (document.project.committerEmail10.value != "" ) )
committerOK = true;
if( (document.project.committerName11.value != "") && (document.project.committerEmail11.value != "" ) )
committerOK = true;
if( (document.project.committerName12.value != "") && (document.project.committerEmail12.value != "" ) )
committerOK = true;
if( (document.project.committerName13.value != "") && (document.project.committerEmail13.value != "" ) )
committerOK = true;
if( (document.project.committerName14.value != "") && (document.project.committerEmail14.value != "" ) )
committerOK = true;
if( (document.project.committerName15.value != "") && (document.project.committerEmail15.value != "" ) )
committerOK = true;
if( (document.project.committerName16.value != "") && (document.project.committerEmail16.value != "" ) )
committerOK = true;
if( (document.project.committerName17.value != "") && (document.project.committerEmail17.value != "" ) )
committerOK = true;
if( (document.project.committerName18.value != "") && (document.project.committerEmail18.value != "" ) )
committerOK = true;
if( (document.project.committerName19.value != "") && (document.project.committerEmail19.value != "" ) )
committerOK = true;
if( (document.project.committerName20.value != "") && (document.project.committerEmail20.value != "" ) )
committerOK = true;
if( (document.project.committerName21.value != "") && (document.project.committerEmail21.value != "" ) )
committerOK = true;
if( (document.project.committerName22.value != "") && (document.project.committerEmail22.value != "" ) )
committerOK = true;
if( (document.project.committerName23.value != "") && (document.project.committerEmail23.value != "" ) )
committerOK = true;
if( (document.project.committerName24.value != "") && (document.project.committerEmail24.value != "" ) )
committerOK = true;
if( (document.project.committerName25.value != "") && (document.project.committerEmail25.value != "" ) )
committerOK = true;
if( (document.project.committerName26.value != "") && (document.project.committerEmail26.value != "" ) )
committerOK = true;
if( (document.project.committerName27.value != "") && (document.project.committerEmail27.value != "" ) )
committerOK = true;
if( (document.project.committerName28.value != "") && (document.project.committerEmail28.value != "" ) )
committerOK = true;
if( (document.project.committerName29.value != "") && (document.project.committerEmail29.value != "" ) )
committerOK = true;
if( (document.project.committerName30.value != "") && (document.project.committerEmail30.value != "" ) )
committerOK = true;
if( (document.project.committerName31.value != "") && (document.project.committerEmail31.value != "" ) )
committerOK = true;
if( (document.project.committerName32.value != "") && (document.project.committerEmail32.value != "" ) )
committerOK = true;
if( (document.project.committerName33.value != "") && (document.project.committerEmail33.value != "" ) )
committerOK = true;
if( (document.project.committerName34.value != "") && (document.project.committerEmail34.value != "" ) )
committerOK = true;
if( (document.project.committerName35.value != "") && (document.project.committerEmail35.value != "" ) )
committerOK = true;
if( (document.project.committerName36.value != "") && (document.project.committerEmail36.value != "" ) )
committerOK = true;
if( (document.project.committerName37.value != "") && (document.project.committerEmail37.value != "" ) )
committerOK = true;
if( (document.project.committerName38.value != "") && (document.project.committerEmail38.value != "" ) )
committerOK = true;
if( (document.project.committerName39.value != "") && (document.project.committerEmail39.value != "" ) )
committerOK = true;
if( (document.project.committerName40.value != "") && (document.project.committerEmail40.value != "" ) )
committerOK = true;
if( (document.project.committerName41.value != "") && (document.project.committerEmail41.value != "" ) )
committerOK = true;
if( (document.project.committerName42.value != "") && (document.project.committerEmail42.value != "" ) )
committerOK = true;
if( (document.project.committerName43.value != "") && (document.project.committerEmail43.value != "" ) )
committerOK = true;
if( (document.project.committerName44.value != "") && (document.project.committerEmail44.value != "" ) )
committerOK = true;
if( (document.project.committerName45.value != "") && (document.project.committerEmail45.value != "" ) )
committerOK = true;
if( (document.project.committerName46.value != "") && (document.project.committerEmail46.value != "" ) )
committerOK = true;
if( (document.project.committerName47.value != "") && (document.project.committerEmail47.value != "" ) )
committerOK = true;
if( (document.project.committerName48.value != "") && (document.project.committerEmail48.value != "" ) )
committerOK = true;
if( (document.project.committerName49.value != "") && (document.project.committerEmail49.value != "" ) )
committerOK = true;
if( (document.project.committerName50.value != "") && (document.project.committerEmail50.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()">
<table border=0 cellspacing=5 cellpadding=2 width="100%" >
<tr>
<td colspan="2">
<p>To be completed by a Project Lead of the new project, consulting with the PMC if necessary.</p>
<p>Updated April 4, 2011</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>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>VCS commit rights</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>
<p><?= $project_help ?></p>
</td>
</tr>
<tr>
<td align="right">New Eclipse Project id: </td>
<td><?= $project_select ?></td>
</tr>
<tr>
<td colspan=2>&nbsp;</td>
</tr>
<tr>
<td colspan="2">
<hr>
<strong>Code Repository</strong><br></td>
</tr>
<tr>
<td colspan="2"><p>Decide whether the project is going to use Git, or SVN for its source code repository.
You should note that we
intend to deprecate SVN at some point in the future. </p>
</td></tr>
<tr>
<td colspan="2" align="center"><p><input type="radio" name="source_code_repository" value="Git" checked> Git &nbsp;&nbsp;
<input type="radio" name="source_code_repository" value="GitHub"> GitHub &nbsp;&nbsp;
<input type="radio" name="source_code_repository" value="SVN"> SVN &nbsp;&nbsp;</p>
<p>Note that all projects must submit an <a href="http://wiki.eclipse.org/Development_Resources/Initial_Contribution">Initial Contribution</a>
to the IP Team <em>before</em> any code can be checked in.</p>
<p>For projects that intend to use <em>GitHub</em>, tag your repository as described in
<a href="https://wiki.eclipse.org/Social_Coding/Hosting_a_Project_at_GitHub">Hosting a Project at GitHub</a> before submitting this form.
Specify the URLs of existing repositories to be moved (one per line):<br/>
<textarea name="github_repositories" rows="4" cols="60">https://github.com/yourname/repository</textarea></p>
</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. This list should
reflect the project creation document. Only include committers that appear in the document.
If you need to add more committers, please do so <em>after</em> the project has been
provisioned via
<a href="http://wiki.eclipse.org/Development_Resources/HOWTO/Nominating_and_Electing_a_New_Committer">committer election</a>.
<span style="background-color: #FFFFCC">Note
that each committer must have completed the e-forms and paper-forms as specified
in the <a href="/projects/dev_process/new-committer.php#Paperwork">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>
</tr>
<script language="JavaScript">
function toggleDisplay(id){
me = document.getElementById(id);
if (me.style.display=="none"){
me.style.display="";
}
else {
me.style.display="none";
}
}
</script>
<?php
for( $i = 1; $i <= 50; $i++ ) {
?>
<tr id="committerRow<?= $i ?>" <?php
if( $i != 1 ) {
?>style="display: none; " <?php
}
?>>
<td valign="top" align="left"><?= $i ?>. <input type="text" size="30" name="committerName<?= $i ?>">
<?php if( $i < 50 ) {
?><br><span id="committerPlus<?= $i ?>">
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a
style="font-weight: normal" onclick="toggleDisplay('committerRow<?= $i + 1 ?>');toggleDisplay('committerPlus<?= $i ?>');"><img src="/home/categories/images/plus.gif"/><font size="-1"> another committer</font></a></span>
</td>
<td valign="top" align="left"><input type="text" size="40" name="committerEmail<?= $i ?>"><br>
<?php } ?>
<input type="checkbox" name="committerLead<?= $i ?>" value="YES"
<?php if( $i <= 1 ) { ?>
checked
<?php } ?>
>Project Lead
</td>
</tr>
<?php
}
?>
</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"><p>Each project has a web presence on www.eclipse.org. The content for a
project web pages is stored in a Git repository.
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.</p>
<p>
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 template will be provided.</p>
<p>For instructions on setting up your Eclipse development environment to edit your project website,
please see <a href="http://wiki.eclipse.org/Phoenix_Documentation">Phoenix Documentation</a>.</p>
</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 Forum</strong><br></td>
</tr>
<tr>
<td colspan="2">
Projects typically have a <a href="/forums">forum</a> for user discussions.
</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 for developer discussion.
A 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>
</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">
<p>The project leads are responsible for builds and maintenance on eclipse.org.
The frequency of these is dependent on the project needs.
There are three main options for builds at Eclipse:</p>
<ul>
<li>Use the <a href="http://wiki.eclipse.org/CBI">Common Build Infrastructure</a> (CBI).</li>
<li>Use build.eclipse.org as a standalone build server.</li>
<li>Use your own infrastructure. Run builds offsite using source code from eclipse.org</li>
</ul>
</td>
</tr>
<tr>
<td colspan="2">
<hr>
<strong>Downloads</strong><br></td>
</tr>
<tr>
<td colspan="2"><p>Downloadable files (i.e. ZIP files, JARs) must be hosted at download.eclipse.org.
For mirroring purposes, the link to download
a file is http://www.eclipse.org/downloads/download.php?file=/path/to/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>
<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 download.eclipse.org.
If you are using <a href="http://wiki.eclipse.org/Athena_Common_Build" target="_blank">Athena Common Builder</a>, please see the Athena documentation for
instruction on moving your build output to the server.</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 actually humans - project committers as
listed above. With this scheme, the component owner receives
notifications of new bugs for this component.&nbsp;&nbsp;<br/>
<br/> 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/>
<br/>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="25" name="component1"></td>
<td width="25%" valign="top" align="left"><input type="text" size="35" name="componentDescription1"></td>
<td width="50%" valign="top" align="left"><input type="text" size="35" name="componentOwner1"></td>
</tr>
<tr>
<td width="25%" valign="top" align="left"><input type="text" size="25" name="component2"></td>
<td width="25%" valign="top" align="left"><input type="text" size="35" name="componentDescription2"></td>
<td width="50%" valign="top" align="left"><input type="text" size="35" name="componentOwner2"></td>
</tr>
<tr>
<td width="25%" valign="top" align="left"><input type="text" size="25" name="component3"></td>
<td width="25%" valign="top" align="left"><input type="text" size="35" name="componentDescription3"></td>
<td width="50%" valign="top" align="left"><input type="text" size="35" name="componentOwner3"></td>
</tr>
<tr>
<td width="25%" valign="top" align="left"><input type="text" size="25" name="component4"></td>
<td width="25%" valign="top" align="left"><input type="text" size="35" name="componentDescription4"></td>
<td width="50%" valign="top" align="left"><input type="text" size="35" name="componentOwner4"></td>
</tr>
<tr>
<td width="25%" valign="top" align="left"><input type="text" size="25" name="component5"></td>
<td width="25%" valign="top" align="left"><input type="text" size="35" name="componentDescription5"></td>
<td width="50%" valign="top" align="left"><input type="text" size="35" name="componentOwner5"></td>
</tr>
<tr>
<td width="25%" valign="top" align="left"><input type="text" size="25" name="component6"></td>
<td width="25%" valign="top" align="left"><input type="text" size="35" name="componentDescription6"></td>
<td width="50%" valign="top" align="left"><input type="text" size="35" name="componentOwner6"></td>
</tr>
</table>
</td>
</tr>
<tr>
<td colspan="2">
<hr>
</td>
</tr>
<tr><td colspan=2>
Math question: (5 - 1) divided by two: <input type="text" name="math" value="" />
</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 code repository, user accounts, mailing-list, master home page (links to your page in the website), 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, voil&agrave;, the project is &quot;live&quot;.</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);
?>