forrest-svn mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From cross...@apache.org
Subject svn commit: rev 55609 - forrest/site
Date Tue, 26 Oct 2004 13:32:47 GMT
Author: crossley
Date: Tue Oct 26 06:32:43 2004
New Revision: 55609

Added:
   forrest/site/proposal-asf-forrestbot.html   (contents, props changed)
   forrest/site/proposal-asf-forrestbot.pdf   (contents, props changed)
   forrest/site/proposal-asf-publish.html   (contents, props changed)
   forrest/site/proposal-asf-publish.pdf   (contents, props changed)
Modified:
   forrest/site/abs-linkmap
   forrest/site/abs-menulinks
   forrest/site/build.html
   forrest/site/contrib.html
   forrest/site/forrest-issues.html
   forrest/site/linkmap.html
   forrest/site/linkmap.pdf
   forrest/site/mail-lists.html
Log:
Proposal for ASF-wide documentation staging and publishing
Proposal for ASF-wide Forrestbot


Modified: forrest/site/abs-linkmap
==============================================================================
--- forrest/site/abs-linkmap	(original)
+++ forrest/site/abs-linkmap	Tue Oct 26 06:32:43 2004
@@ -158,6 +158,11 @@
 -->
   </getting-involved>
 
+  <proposals label="Proposals" tab="project">
+    <asf-publishing label="ASF Publishing" href="proposal-asf-publish.html"/>
+    <asf-forrestbot label="ASF Forrestbot" href="proposal-asf-forrestbot.html"/>
+  </proposals>
+
   <references label="Related projects">
     <gump label="Apache Gump" href="http://gump.apache.org/"/>
     <cocoon label="Apache Cocoon" href="http://cocoon.apache.org/"/>

Modified: forrest/site/abs-menulinks
==============================================================================
--- forrest/site/abs-menulinks	(original)
+++ forrest/site/abs-menulinks	Tue Oct 26 06:32:43 2004
@@ -158,6 +158,11 @@
 -->
   </getting-involved>
 
+  <proposals tab="project" label="Proposals">
+    <asf-publishing tab="project" label="ASF Publishing" href="proposal-asf-publish.html"/>
+    <asf-forrestbot tab="project" label="ASF Forrestbot" href="proposal-asf-forrestbot.html"/>
+  </proposals>
+
   <references tab="home" label="Related projects">
     <gump tab="home" label="Apache Gump" href="http://gump.apache.org/"/>
     <cocoon tab="home" label="Apache Cocoon" href="http://cocoon.apache.org/"/>

Modified: forrest/site/build.html
==============================================================================
--- forrest/site/build.html	(original)
+++ forrest/site/build.html	Tue Oct 26 06:32:43 2004
@@ -126,6 +126,15 @@
 <a title="" href="forrest-issues.html">Open Issues</a>
 </div>
 </div>
+<div onclick="SwitchMenu('menu_1.2', 'skin/')" id="menu_1.2Title" class="menutitle">Proposals</div>
+<div id="menu_1.2" class="menuitemgroup">
+<div class="menuitem">
+<a title="" href="proposal-asf-publish.html">ASF Publishing</a>
+</div>
+<div class="menuitem">
+<a title="" href="proposal-asf-forrestbot.html">ASF Forrestbot</a>
+</div>
+</div>
 <div id="credit"></div>
 <div id="roundbottom">
 <img style="display: none" class="corner" height="15" width="15" alt="" src="skin/images/rc-b-l-15-1body-2menu-3menu.png"></div>

Modified: forrest/site/contrib.html
==============================================================================
--- forrest/site/contrib.html	(original)
+++ forrest/site/contrib.html	Tue Oct 26 06:32:43 2004
@@ -126,6 +126,15 @@
 <a title="" href="forrest-issues.html">Open Issues</a>
 </div>
 </div>
+<div onclick="SwitchMenu('menu_1.2', 'skin/')" id="menu_1.2Title" class="menutitle">Proposals</div>
+<div id="menu_1.2" class="menuitemgroup">
+<div class="menuitem">
+<a title="" href="proposal-asf-publish.html">ASF Publishing</a>
+</div>
+<div class="menuitem">
+<a title="" href="proposal-asf-forrestbot.html">ASF Forrestbot</a>
+</div>
+</div>
 <div id="credit"></div>
 <div id="roundbottom">
 <img style="display: none" class="corner" height="15" width="15" alt="" src="skin/images/rc-b-l-15-1body-2menu-3menu.png"></div>

Modified: forrest/site/forrest-issues.html
==============================================================================
--- forrest/site/forrest-issues.html	(original)
+++ forrest/site/forrest-issues.html	Tue Oct 26 06:32:43 2004
@@ -126,6 +126,15 @@
 <div class="menupagetitle">Open Issues</div>
 </div>
 </div>
+<div onclick="SwitchMenu('menu_1.2', 'skin/')" id="menu_1.2Title" class="menutitle">Proposals</div>
+<div id="menu_1.2" class="menuitemgroup">
+<div class="menuitem">
+<a title="" href="proposal-asf-publish.html">ASF Publishing</a>
+</div>
+<div class="menuitem">
+<a title="" href="proposal-asf-forrestbot.html">ASF Forrestbot</a>
+</div>
+</div>
 <div id="credit"></div>
 <div id="roundbottom">
 <img style="display: none" class="corner" height="15" width="15" alt="" src="skin/images/rc-b-l-15-1body-2menu-3menu.png"></div>

Modified: forrest/site/linkmap.html
==============================================================================
--- forrest/site/linkmap.html	(original)
+++ forrest/site/linkmap.html	Tue Oct 26 06:32:43 2004
@@ -288,9 +288,18 @@
 <a title="" href="forrest-issues.html">Open Issues</a>
 </div>
 </div>
-<div onclick="SwitchMenu('menu_1.8', 'skin/')" id="menu_1.8Title" class="menutitle">Related
projects</div>
+<div onclick="SwitchMenu('menu_1.8', 'skin/')" id="menu_1.8Title" class="menutitle">Proposals</div>
 <div id="menu_1.8" class="menuitemgroup">
 <div class="menuitem">
+<a title="" href="proposal-asf-publish.html">ASF Publishing</a>
+</div>
+<div class="menuitem">
+<a title="" href="proposal-asf-forrestbot.html">ASF Forrestbot</a>
+</div>
+</div>
+<div onclick="SwitchMenu('menu_1.9', 'skin/')" id="menu_1.9Title" class="menutitle">Related
projects</div>
+<div id="menu_1.9" class="menuitemgroup">
+<div class="menuitem">
 <a title="" href="http://gump.apache.org/">Apache Gump</a>
 </div>
 <div class="menuitem">
@@ -682,6 +691,22 @@
 
 
 
+  
+</ul>
+
+  
+<li>
+<a href="">Proposals</a>&nbsp;&nbsp;&nbsp;_________________________&nbsp;&nbsp;<em>proposals</em>
+</li>
+<ul>
+    
+<li>
+<a href="proposal-asf-publish.html">ASF Publishing</a>&nbsp;&nbsp;&nbsp;_________________________&nbsp;&nbsp;<em>asf-publishing</em>
+</li>
+    
+<li>
+<a href="proposal-asf-forrestbot.html">ASF Forrestbot</a>&nbsp;&nbsp;&nbsp;_________________________&nbsp;&nbsp;<em>asf-forrestbot</em>
+</li>
   
 </ul>
 

Modified: forrest/site/linkmap.pdf
==============================================================================
Binary files. No diff available.

Modified: forrest/site/mail-lists.html
==============================================================================
--- forrest/site/mail-lists.html	(original)
+++ forrest/site/mail-lists.html	Tue Oct 26 06:32:43 2004
@@ -126,6 +126,15 @@
 <a title="" href="forrest-issues.html">Open Issues</a>
 </div>
 </div>
+<div onclick="SwitchMenu('menu_1.2', 'skin/')" id="menu_1.2Title" class="menutitle">Proposals</div>
+<div id="menu_1.2" class="menuitemgroup">
+<div class="menuitem">
+<a title="" href="proposal-asf-publish.html">ASF Publishing</a>
+</div>
+<div class="menuitem">
+<a title="" href="proposal-asf-forrestbot.html">ASF Forrestbot</a>
+</div>
+</div>
 <div id="credit"></div>
 <div id="roundbottom">
 <img style="display: none" class="corner" height="15" width="15" alt="" src="skin/images/rc-b-l-15-1body-2menu-3menu.png"></div>

Added: forrest/site/proposal-asf-forrestbot.html
==============================================================================
--- (empty file)
+++ forrest/site/proposal-asf-forrestbot.html	Tue Oct 26 06:32:43 2004
@@ -0,0 +1,258 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<html>
+<head>
+<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<meta content="Apache Forrest" name="Generator">
+<meta name="Forrest-version" content="0.7-dev">
+<meta name="Forrest-skin-name" content="pelt">
+<title>Draft: Proposal for ASF-wide Forrestbot</title>
+<link type="text/css" href="skin/basic.css" rel="stylesheet">
+<link media="screen" type="text/css" href="skin/screen.css" rel="stylesheet">
+<link media="print" type="text/css" href="skin/print.css" rel="stylesheet">
+<link type="text/css" href="skin/profile.css" rel="stylesheet">
+<script src="skin/getBlank.js" language="javascript" type="text/javascript"></script><script
src="skin/getMenu.js" language="javascript" type="text/javascript"></script><script
src="skin/fontsize.js" language="javascript" type="text/javascript"></script>
+<link rel="shortcut icon" href="favicon.ico">
+</head>
+<body onload="init()">
+<script type="text/javascript">ndeSetTextSize();</script>
+<div id="top">
+<!--+
+    |breadtrail
+    +-->
+<div class="breadtrail">
+<a href="http://www.apache.org/">apache</a> &gt; <a href="http://forrest.apache.org/">forrest</a><script
src="skin/breadcrumbs.js" language="JavaScript" type="text/javascript"></script>
+</div>
+<!--+
+    |header
+    +-->
+<div class="header">
+<!--+
+    |start group logo
+    +-->
+<div class="grouplogo">
+<a href="http://www.apache.org/"><img class="logoImage" alt="Apache" src="images/apache-forrest.png"
title="The Apache Software Foundation"></a>
+</div>
+<!--+
+    |end group logo
+    +-->
+<!--+
+    |start Project Logo
+    +-->
+<div class="projectlogo">
+<a href="http://forrest.apache.org/"><img class="logoImage" alt="Forrest" src="images/project-logo.gif"
title="Apache Forrest"></a>
+</div>
+<!--+
+    |end Project Logo
+    +-->
+<!--+
+    |start Search
+    +-->
+<div class="searchbox">
+<form action="http://www.google.com/search" method="get" class="roundtopsmall">
+<input value="forrest.apache.org" name="sitesearch" type="hidden"><input onFocus="getBlank
(this, 'Search the site with google:');" value="Search the site with google:" size="25" name="q"
id="query" type="text">&nbsp; 
+                    <input name="Search" value="Search" type="submit">
+</form>
+</div>
+<!--+
+    |end search
+    +-->
+<!--+
+    |start Tabs
+    +-->
+<ul id="tabs">
+<li>
+<a class="base-not-selected" href="index.html">Welcome</a>
+</li>
+<li class="current">
+<a class="base-selected" href="contrib.html">Project</a>
+</li>
+<li>
+<a class="base-not-selected" href="docs/your-project.html">Documentation</a>
+</li>
+<li>
+<a class="base-not-selected" href="howto/index.html">How-To</a>
+</li>
+</ul>
+<!--+
+    |end Tabs
+    +-->
+</div>
+</div>
+<div id="main">
+<div id="publishedStrip">
+<!--+
+    |start Subtabs
+    +-->
+<div id="level2tabs"></div>
+<!--+
+    |end Endtabs
+    +-->
+<script type="text/javascript" language="JavaScript"><!--
+              document.write("Published: " + document.lastModified);
+              //  --></script>
+</div>
+<!--+
+    |breadtrail
+    +-->
+<div class="breadtrail">
+             
+             &nbsp;
+           </div>
+<!--+
+    |start Menu, mainarea
+    +-->
+<!--+
+    |start Menu
+    +-->
+<div id="menu">
+<div onclick="SwitchMenu('menu_1.1', 'skin/')" id="menu_1.1Title" class="menutitle">Getting
Involved</div>
+<div id="menu_1.1" class="menuitemgroup">
+<div class="menuitem">
+<a title="" href="contrib.html">Contributing</a>
+</div>
+<div class="menuitem">
+<a title="" href="build.html">Building Forrest</a>
+</div>
+<div class="menuitem">
+<a title="" href="http://svn.apache.org/viewcvs.cgi/forrest/trunk/?root=Apache-SVN">Browse
SVN</a>
+</div>
+<div class="menuitem">
+<a title="" href="mail-lists.html">Mail lists</a>
+</div>
+<div class="menuitem">
+<a title="" href="http://issues.cocoondev.org/secure/BrowseProject.jspa?id=10000">Bugs
and Issues</a>
+</div>
+<div class="menuitem">
+<a title="" href="forrest-issues.html">Open Issues</a>
+</div>
+</div>
+<div onclick="SwitchMenu('menu_selected_1.2', 'skin/')" id="menu_selected_1.2Title" class="menutitle"
style="background-image: url('skin/images/chapter_open.gif');">Proposals</div>
+<div id="menu_selected_1.2" class="selectedmenuitemgroup" style="display: block;">
+<div class="menuitem">
+<a title="" href="proposal-asf-publish.html">ASF Publishing</a>
+</div>
+<div class="menupage">
+<div class="menupagetitle">ASF Forrestbot</div>
+</div>
+</div>
+<div id="credit"></div>
+<div id="roundbottom">
+<img style="display: none" class="corner" height="15" width="15" alt="" src="skin/images/rc-b-l-15-1body-2menu-3menu.png"></div>
+<!--+
+  |alternative credits
+  +-->
+</div>
+<!--+
+    |end Menu
+    +-->
+<!--+
+    |start content
+    +-->
+<div id="content">
+<div id="skinconf-txtlink"></div>
+<div title="Portable Document Format" class="pdflink">
+<a class="dida" href="proposal-asf-forrestbot.pdf"><img alt="PDF -icon" src="skin/images/pdfdoc.gif"
class="skin"><br>
+        PDF</a>
+</div>
+<div class="trail">
+	        Font size: 
+	          &nbsp;<input value="Reset" class="resetfont" title="Reset text" onclick="ndeSetTextSize('reset');
return false;" type="button">      
+	          &nbsp;<input value="-a" class="smallerfont" title="Shrink text" onclick="ndeSetTextSize('decr');
return false;" type="button">
+	          &nbsp;<input value="+a" class="biggerfont" title="Enlarge text" onclick="ndeSetTextSize('incr');
return false;" type="button">
+</div>
+<h1>Draft: Proposal for ASF-wide Forrestbot</h1>
+<div id="minitoc-area">
+<ul class="minitoc">
+<li>
+<a href="#overview">Overview</a>
+</li>
+<li>
+<a href="#forrestbot">About Forrestbot</a>
+</li>
+<li>
+<a href="#requirements">Requirements</a>
+</li>
+</ul>
+</div>
+    
+<div class="frame warning">
+<div class="label">Warning</div>
+<div class="content">This is a draft proposal document. It is not yet the
+     consensus of ASF nor the Infrastructure committee.
+    </div>
+</div>
+
+    
+<a name="N10010"></a><a name="overview"></a>
+<h2 class="underlined_10">Overview</h2>
+<div class="section">
+<p>All ASF projects need to be able to concentrate on their projects
+        and the content of their websites, rather than get tangled up in
+        arcane website publication procedures.
+      </p>
+<p>A proposal is currently being discussed for
+        <a href="proposal-asf-publish.html">ASF-wide documentation staging
+        and publishing</a>. The context of this Forrestbot proposal is at
+        Item C through to Item G of that infrastructure, the "staging server".
+        This does not preclude other mechanisms - some projects might choose
+        to use Forrestbot.
+      </p>
+</div>
+
+    
+<a name="N10021"></a><a name="forrestbot"></a>
+<h2 class="underlined_10">About Forrestbot</h2>
+<div class="section">
+<p>The Forrestbot enables the automated building and deployment of
+        websites. It will retrieve the source from SVN or CVS, build the
+        website, and then deploy it. Notifications can be sent. It keeps a
+        log of the build process.
+        See more <a href="docs/forrestbot.html">detailed explanation</a>.
+      </p>
+<p>There is also a "web interface" component to Forrestbot to enable
+        the project committers to easily trigger their website build, view
+        the result, and deploy it to the staging server.
+        See more <a href="docs/forrestbot-web-interface.html">detailed explanation</a>.
+      </p>
+</div>
+
+    
+<a name="N10036"></a><a name="requirements"></a>
+<h2 class="underlined_10">Requirements</h2>
+<div class="section">
+<p>The staging server (e.g. stage.apache.org) would be a virtual server.
+        A stable version of "forrest" and "forrestbot" would be installed there.
+        Each project that uses forrestbot would have a forrestbot configuration
+        file. This defines the SVN or CVS repository to get the source from,
+        where to deploy the built site, and various other parameters.
+      </p>
+<p>The Forrestbot web interface requires a servlet container (e.g.
+        <a class="external" href="http://jakarta.apache.org/tomcat/">Apache Tomcat</a>)
and
+        an <a class="external" href="http://httpd.apache.org/">Apache HTTP Server</a>
would be
+        used to view the staging sites.
+      </p>
+</div>
+  
+</div>
+<!--+
+    |end content
+    +-->
+<div class="clearboth">&nbsp;</div>
+</div>
+<div id="footer">
+<!--+
+    |start bottomstrip
+    +-->
+<div class="lastmodified">
+<script type="text/javascript"><!--
+document.write("Last Published: " + document.lastModified);
+//  --></script>
+</div>
+<div class="copyright">
+ Copyright &copy; 2002-2004 The Apache Software Foundation.</div>
+<!--+
+    |end bottomstrip
+    +-->
+</div>
+</body>
+</html>

Added: forrest/site/proposal-asf-forrestbot.pdf
==============================================================================
Binary file. No diff available.

Added: forrest/site/proposal-asf-publish.html
==============================================================================
--- (empty file)
+++ forrest/site/proposal-asf-publish.html	Tue Oct 26 06:32:43 2004
@@ -0,0 +1,475 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<html>
+<head>
+<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<meta content="Apache Forrest" name="Generator">
+<meta name="Forrest-version" content="0.7-dev">
+<meta name="Forrest-skin-name" content="pelt">
+<title>Draft: Proposal for ASF-wide documentation staging and publishing</title>
+<link type="text/css" href="skin/basic.css" rel="stylesheet">
+<link media="screen" type="text/css" href="skin/screen.css" rel="stylesheet">
+<link media="print" type="text/css" href="skin/print.css" rel="stylesheet">
+<link type="text/css" href="skin/profile.css" rel="stylesheet">
+<script src="skin/getBlank.js" language="javascript" type="text/javascript"></script><script
src="skin/getMenu.js" language="javascript" type="text/javascript"></script><script
src="skin/fontsize.js" language="javascript" type="text/javascript"></script>
+<link rel="shortcut icon" href="favicon.ico">
+</head>
+<body onload="init()">
+<script type="text/javascript">ndeSetTextSize();</script>
+<div id="top">
+<!--+
+    |breadtrail
+    +-->
+<div class="breadtrail">
+<a href="http://www.apache.org/">apache</a> &gt; <a href="http://forrest.apache.org/">forrest</a><script
src="skin/breadcrumbs.js" language="JavaScript" type="text/javascript"></script>
+</div>
+<!--+
+    |header
+    +-->
+<div class="header">
+<!--+
+    |start group logo
+    +-->
+<div class="grouplogo">
+<a href="http://www.apache.org/"><img class="logoImage" alt="Apache" src="images/apache-forrest.png"
title="The Apache Software Foundation"></a>
+</div>
+<!--+
+    |end group logo
+    +-->
+<!--+
+    |start Project Logo
+    +-->
+<div class="projectlogo">
+<a href="http://forrest.apache.org/"><img class="logoImage" alt="Forrest" src="images/project-logo.gif"
title="Apache Forrest"></a>
+</div>
+<!--+
+    |end Project Logo
+    +-->
+<!--+
+    |start Search
+    +-->
+<div class="searchbox">
+<form action="http://www.google.com/search" method="get" class="roundtopsmall">
+<input value="forrest.apache.org" name="sitesearch" type="hidden"><input onFocus="getBlank
(this, 'Search the site with google:');" value="Search the site with google:" size="25" name="q"
id="query" type="text">&nbsp; 
+                    <input name="Search" value="Search" type="submit">
+</form>
+</div>
+<!--+
+    |end search
+    +-->
+<!--+
+    |start Tabs
+    +-->
+<ul id="tabs">
+<li>
+<a class="base-not-selected" href="index.html">Welcome</a>
+</li>
+<li class="current">
+<a class="base-selected" href="contrib.html">Project</a>
+</li>
+<li>
+<a class="base-not-selected" href="docs/your-project.html">Documentation</a>
+</li>
+<li>
+<a class="base-not-selected" href="howto/index.html">How-To</a>
+</li>
+</ul>
+<!--+
+    |end Tabs
+    +-->
+</div>
+</div>
+<div id="main">
+<div id="publishedStrip">
+<!--+
+    |start Subtabs
+    +-->
+<div id="level2tabs"></div>
+<!--+
+    |end Endtabs
+    +-->
+<script type="text/javascript" language="JavaScript"><!--
+              document.write("Published: " + document.lastModified);
+              //  --></script>
+</div>
+<!--+
+    |breadtrail
+    +-->
+<div class="breadtrail">
+             
+             &nbsp;
+           </div>
+<!--+
+    |start Menu, mainarea
+    +-->
+<!--+
+    |start Menu
+    +-->
+<div id="menu">
+<div onclick="SwitchMenu('menu_1.1', 'skin/')" id="menu_1.1Title" class="menutitle">Getting
Involved</div>
+<div id="menu_1.1" class="menuitemgroup">
+<div class="menuitem">
+<a title="" href="contrib.html">Contributing</a>
+</div>
+<div class="menuitem">
+<a title="" href="build.html">Building Forrest</a>
+</div>
+<div class="menuitem">
+<a title="" href="http://svn.apache.org/viewcvs.cgi/forrest/trunk/?root=Apache-SVN">Browse
SVN</a>
+</div>
+<div class="menuitem">
+<a title="" href="mail-lists.html">Mail lists</a>
+</div>
+<div class="menuitem">
+<a title="" href="http://issues.cocoondev.org/secure/BrowseProject.jspa?id=10000">Bugs
and Issues</a>
+</div>
+<div class="menuitem">
+<a title="" href="forrest-issues.html">Open Issues</a>
+</div>
+</div>
+<div onclick="SwitchMenu('menu_selected_1.2', 'skin/')" id="menu_selected_1.2Title" class="menutitle"
style="background-image: url('skin/images/chapter_open.gif');">Proposals</div>
+<div id="menu_selected_1.2" class="selectedmenuitemgroup" style="display: block;">
+<div class="menupage">
+<div class="menupagetitle">ASF Publishing</div>
+</div>
+<div class="menuitem">
+<a title="" href="proposal-asf-forrestbot.html">ASF Forrestbot</a>
+</div>
+</div>
+<div id="credit"></div>
+<div id="roundbottom">
+<img style="display: none" class="corner" height="15" width="15" alt="" src="skin/images/rc-b-l-15-1body-2menu-3menu.png"></div>
+<!--+
+  |alternative credits
+  +-->
+</div>
+<!--+
+    |end Menu
+    +-->
+<!--+
+    |start content
+    +-->
+<div id="content">
+<div id="skinconf-txtlink"></div>
+<div title="Portable Document Format" class="pdflink">
+<a class="dida" href="proposal-asf-publish.pdf"><img alt="PDF -icon" src="skin/images/pdfdoc.gif"
class="skin"><br>
+        PDF</a>
+</div>
+<div class="trail">
+	        Font size: 
+	          &nbsp;<input value="Reset" class="resetfont" title="Reset text" onclick="ndeSetTextSize('reset');
return false;" type="button">      
+	          &nbsp;<input value="-a" class="smallerfont" title="Shrink text" onclick="ndeSetTextSize('decr');
return false;" type="button">
+	          &nbsp;<input value="+a" class="biggerfont" title="Enlarge text" onclick="ndeSetTextSize('incr');
return false;" type="button">
+</div>
+<h1>Draft: Proposal for ASF-wide documentation staging and publishing</h1>
+<div id="minitoc-area">
+<ul class="minitoc">
+<li>
+<a href="#overview">Overview</a>
+</li>
+<li>
+<a href="#infrastructure">Publication infrastructure and actions</a>
+<ul class="minitoc">
+<li>
+<a href="#A">[A] Commit the changes to source documents</a>
+</li>
+<li>
+<a href="#B">[B] Source docs are managed in project SVN</a>
+</li>
+<li>
+<a href="#C">[C] Trigger the build</a>
+</li>
+<li>
+<a href="#D">[D] Build the documents</a>
+</li>
+<li>
+<a href="#E">[E] Staging server enables review</a>
+</li>
+<li>
+<a href="#F">[F] Approve and publish</a>
+</li>
+<li>
+<a href="#G">[G] Publication point</a>
+</li>
+<li>
+<a href="#H">[H] Rsync pull from publication point into production</a>
+</li>
+<li>
+<a href="#I">[I] Production webserver for the project</a>
+</li>
+</ul>
+</li>
+<li>
+<a href="#notes">Other notes</a>
+</li>
+<li>
+<a href="#impediments">Background and impediments</a>
+</li>
+<li>
+<a href="#scratch">Scratch notes</a>
+</li>
+</ul>
+</div>
+    
+<div class="frame warning">
+<div class="label">Warning</div>
+<div class="content">This is a draft proposal document. It is not yet the
+     consensus of ASF nor of the Infrastructure committee.
+     This proposal is a summary of various email discussions held
+     over the past years, especially on infrastructure@a.o
+     around 2004-07-29 which expanded on previous discussions.
+    </div>
+</div>
+
+    
+<a name="N10010"></a><a name="overview"></a>
+<h2 class="underlined_10">Overview</h2>
+<div class="section">
+<p>All ASF projects need to be able to concentrate on their projects
+        and the content of their websites, rather than get tangled up in
+        arcane website publication procedures.
+      </p>
+<p>There is a "staging and publishing server" which is separate
+        from the live production web server. The project committers would
+        commit their source changes, then trigger a "documentation build",
+        then review the staging website.
+        When satisfied, they "approve and publish" so as to copy the stage
+        to the "publication point". There are a number of rotated older
+        versions of the publication point. A deliberate action on the
+        live webserver causes rsync to pull the current publication point
+        into production.
+      </p>
+</div>
+
+    
+<a name="N1001D"></a><a name="infrastructure"></a>
+<h2 class="underlined_10">Publication infrastructure and actions</h2>
+<div class="section">
+<pre class="code">
++------------------+  [<a href="#A">A</a>] Commit the changes to source documents
    |
+|  svn.apache.org  |                                                 |
+|                  |  [<a href="#B">B</a>] +------------------------------------+
    |
+|                  |      | Source docs managed in project SVN |     |
++------------------+      +------------------------------------+     V
+                           
++------------------+  [<a href="#C">C</a>] Trigger the build                
         |
+| stage.apache.org |                                                 |
+|                  |  [<a href="#D">D</a>] +---------------------+          
         |
+|                  |      | Build the documents |                    |
+|                  |      +---------------------+                    |
+|                  |                                                 |
+|                  |  [<a href="#E">E</a>] +-------------------------------+
         |
+|                  |      | Staging server enables review |          |
+|                  |      +-------------------------------+          |
+|                  |                                                 |
+|                  |  [<a href="#F">F</a>] Approve and publish              
         |
+|                  |                                                 |
+|                  |  [<a href="#G">G</a>] +----------------------------+   
         |
+|                  |      | Publication point          |             |
+|                  |      | (with some older versions) |             |
++------------------+      +----------------------------+             V
+                           
++------------------+  [<a href="#H">H</a>] Rsync pull into production       
         |
+|  www.apache.org  |                                                 |
+|                  |  [<a href="#I">I</a>] +--------------------------------------+
  |
+|                  |      | Production webserver $tlp.apache.org |   |
++------------------+      +--------------------------------------+   V
+</pre>
+<a name="N1004B"></a><a name="A"></a>
+<h3 class="underlined_5">[A] Commit the changes to source documents</h3>
+<p>The content changes are committed to the project's source repository.
+        The committer might have already built and tested the documents with
+        their local documentation build system. On other occasions, they might
+        commit changes without building locally. Some committers might not
+        even have installed a local build system, they might just edit or
+        patch the content.
+      </p>
+<a name="N10055"></a><a name="B"></a>
+<h3 class="underlined_5">[B] Source docs are managed in project SVN</h3>
+<p>The source files for the project's website are held in an SVN
+       repository. These might be XML source for some projects, while others
+       might have simple HTML docs.
+      </p>
+<a name="N1005F"></a><a name="C"></a>
+<h3 class="underlined_5">[C] Trigger the build</h3>
+<p>Via a secure https web interface, or via ssh to the server and use
+       command-line.
+      </p>
+<a name="N10069"></a><a name="D"></a>
+<h3 class="underlined_5">[D] Build the documents</h3>
+<p>The build system on the server will generate the project documents
+        and deploy them to the staging server website.
+      </p>
+<p>
+        Projects can use various documentation tools: Anakia, Forrest, Maven,
+        raw html, etc. Each system would have its own ways to report build
+        problems to the committer (e.g. xml validation, broken links,
+        content and spelling errors, configuration errors).
+      </p>
+<a name="N10076"></a><a name="E"></a>
+<h3 class="underlined_5">[E] Staging server enables review</h3>
+<p>A pre-release website. Anyone can review online. Some projects might want to
+        password-protect.
+      </p>
+<a name="N10080"></a><a name="F"></a>
+<h3 class="underlined_5">[F] Approve and publish</h3>
+<p>When satisfied, they "approve and publish" so as to copy the stage
+        to the "publication point".
+        Via a secure https web interface, or via ssh to the server and use
+        command-line.
+      </p>
+<a name="N1008A"></a><a name="G"></a>
+<h3 class="underlined_5">[G] Publication point</h3>
+<p>A holding area, from which the production website can be recreated
+        as required.
+        Keep a number of rotating versions, i.e.
+      </p>
+<pre class="code">
+rm -rf ${publish_dir}.3
+mv ${publish_dir}.2 ${publish_dir}.3
+mv ${publish_dir}.1 ${publish_dir}.2
+mv ${publish_dir} ${publish_dir}.1
+mv $staging_dir $publish_dir
+      </pre>
+<a name="N10098"></a><a name="H"></a>
+<h3 class="underlined_5">[H] Rsync pull from publication point into production</h3>
+<p>
+      Someone with commit access for the project would issue a command on
+      the live web server to synchronise with the current
+      contents of the publication server via rsync pull. This would either
+      be executed by ssh and command-line, or via a secure https web interface.
+      </p>
+<p>
+      We want the final rsync to be independent, so that it can also be
+      executed by infrastructure people in the event that the web sites
+      need to be recreated.
+      </p>
+<pre class="code">
+The rsync would be manual.
+
+The old way ...
+   cd /www/$tlp.apache.org; cvs up -Pd
+ or
+   cd /www/jakarta.apache.org/$proj; cvs up -Pd
+
+The new way ...
+
+   rsync -avz -e ssh --delete stage.apache.org:/www/$tlp.apache.org/ \
+                                               /www/$tlp.apache.org/
+ or
+   rsync -avz -e ssh --delete stage.apache.org:/www/jakarta.apache.org/$proj/ \
+                                               /www/jakarta.apache.org/$proj/
+      </pre>
+<a name="N100A9"></a><a name="I"></a>
+<h3 class="underlined_5">[I] Production webserver for the project</h3>
+<p>The live production website for the project at $tlp.apache.org
+      </p>
+</div>
+
+    
+<a name="N100B4"></a><a name="notes"></a>
+<h2 class="underlined_10">Other notes</h2>
+<div class="section">
+<ul>
+        
+<li>The actions (A and C and F and H) are completely independent
+          manual steps and are deliberate accountable acts.
+          This ensures human oversight in the deployment process.
+        </li>
+        
+<li>
+          The actions should not be automated, especially action H.
+          If someone did manage to break in to the publishing server,
+          then their changes would be automatically published.
+        </li>
+        
+<li>Some people would like action C and action F to be automated
+          (say every 30 hours). Committers can still trigger it manually
+          at other times.
+        </li>
+        
+<li>The actions F and H could be combined. For example, we could have
+          a script on the production server that contacted the publishing
+          server to perform action F and then performed the rsync (action H).
+        </li>
+        
+<li>The proposal from Apache Forrest to have an
+         <a href="proposal-asf-forrestbot.html">ASF Forrestbot</a>
+         as one method for projects to handle the "staging server"
+         (item C through to item G).
+         This does not preclude other mechanisms.
+        </li>
+        
+<li>The 
+        <a class="external" href="http://wiki.apache.org/cocoon/Doco">Doco</a>
+        concept adds interactive and workflow capabilities to this
+        publication infrastructure.
+        </li>
+      
+</ul>
+</div>
+
+    
+<a name="N100D8"></a><a name="impediments"></a>
+<h2 class="underlined_10">Background and impediments</h2>
+<div class="section">
+<p>This is a collection of notes about the past impediments
+      which have hindered the publishing process ...
+      </p>
+<ul>
+        
+<li>
+          The generated project sites were maintained in source control,
+          primarily to enable the infrastructure team to restore the live
+          web server in case of emergency. That added one more level of
+          complexity for the projects.
+        </li>
+        
+<li>
+          When people wanted to work on projects docs, they were hindered
+          by needing to install the document generation system locally.
+          That was too onerous for some projects and caused delays with
+          website maintenance.
+        </li>
+      
+</ul>
+</div>
+
+<!--
+-->
+    
+<a name="N100ED"></a><a name="scratch"></a>
+<h2 class="underlined_10">Scratch notes</h2>
+<div class="section">
+<p>Some notes which have not yet been incorporated ...</p>
+<pre class="code">
+* How would we log the actions?
+
+* Noel: We need to accomodate sites that come from a single source,
+and sites that come from multiple sources,
+e.g. Jakarta or the XML Federation.
+</pre>
+</div>
+  
+</div>
+<!--+
+    |end content
+    +-->
+<div class="clearboth">&nbsp;</div>
+</div>
+<div id="footer">
+<!--+
+    |start bottomstrip
+    +-->
+<div class="lastmodified">
+<script type="text/javascript"><!--
+document.write("Last Published: " + document.lastModified);
+//  --></script>
+</div>
+<div class="copyright">
+ Copyright &copy; 2002-2004 The Apache Software Foundation.</div>
+<!--+
+    |end bottomstrip
+    +-->
+</div>
+</body>
+</html>

Added: forrest/site/proposal-asf-publish.pdf
==============================================================================
Binary file. No diff available.

Mime
View raw message