Return-Path: Delivered-To: apmail-xml-forrest-dev-archive@www.apache.org Received: (qmail 66290 invoked from network); 20 Oct 2003 11:44:00 -0000 Received: from daedalus.apache.org (HELO mail.apache.org) (208.185.179.12) by minotaur-2.apache.org with SMTP; 20 Oct 2003 11:44:00 -0000 Received: (qmail 43955 invoked by uid 500); 20 Oct 2003 11:43:59 -0000 Delivered-To: apmail-xml-forrest-dev-archive@xml.apache.org Received: (qmail 43868 invoked by uid 500); 20 Oct 2003 11:43:58 -0000 Mailing-List: contact forrest-cvs-help@xml.apache.org; run by ezmlm Precedence: bulk list-help: list-unsubscribe: list-post: Reply-To: forrest-dev@xml.apache.org Delivered-To: mailing list forrest-cvs@xml.apache.org Received: (qmail 43855 invoked from network); 20 Oct 2003 11:43:58 -0000 Received: from unknown (HELO minotaur.apache.org) (209.237.227.194) by daedalus.apache.org with SMTP; 20 Oct 2003 11:43:58 -0000 Received: (qmail 66274 invoked by uid 1464); 20 Oct 2003 11:43:59 -0000 Date: 20 Oct 2003 11:43:59 -0000 Message-ID: <20031020114359.66273.qmail@minotaur.apache.org> From: nicolaken@apache.org To: xml-forrest-cvs@apache.org Subject: cvs commit: xml-forrest/src/resources/forrestbot2/core buildall.xml cvs.xml default-forrest.properties email.xml emailtemplate.txt forrestbot.xml local.xml rebuild-forrest.xml X-Spam-Rating: daedalus.apache.org 1.6.2 0/1000/N X-Spam-Rating: minotaur-2.apache.org 1.6.2 0/1000/N nicolaken 2003/10/20 04:43:59 Added: scratchpad/forrestbot2 avalon-phoenix.xml avalon-site.xml incubator-site.xml README.txt sf-struts.xml ws-site.xml xml-fop.xml xml-forrest-krysalis.xml xml-forrest-seed.xml xml-forrest.xml xml-site.xml xml-xindice.xml xml-xmlbeans.xml scratchpad/forrestbot2/core buildall.xml cvs.xml default-forrest.properties email.xml emailtemplate.txt forrestbot.xml local.xml rebuild-forrest.xml Removed: src/resources/forrestbot2 avalon-phoenix.xml avalon-site.xml incubator-site.xml README.txt sf-struts.xml ws-site.xml xml-fop.xml xml-forrest-krysalis.xml xml-forrest-seed.xml xml-forrest.xml xml-site.xml xml-xindice.xml xml-xmlbeans.xml src/resources/forrestbot2/core buildall.xml cvs.xml default-forrest.properties email.xml emailtemplate.txt forrestbot.xml local.xml rebuild-forrest.xml Log: Move forrestbot2 to scratchpad. Hope it matures quickly, as it's *much* better than the first iteration. Revision Changes Path 1.1 xml-forrest/scratchpad/forrestbot2/avalon-phoenix.xml Index: avalon-phoenix.xml =================================================================== 1.1 xml-forrest/scratchpad/forrestbot2/avalon-site.xml Index: avalon-site.xml =================================================================== 1.1 xml-forrest/scratchpad/forrestbot2/incubator-site.xml Index: incubator-site.xml =================================================================== 1.1 xml-forrest/scratchpad/forrestbot2/README.txt Index: README.txt =================================================================== Forrestbot v2 ============= Introduction ------------ This directory contains an attempt at rewriting the Forrestbot using vanilla Ant 1.6, making extensive use of the task. Motivation ---------- The old Forrestbot works by generating an Ant script with XSLT. This script calls targets in templates.build.xml, which in turn calls targets in forrest.build.xml. This scheme has two problems: - With three layers of indirection, this gets very hard to debug - It's inflexible. We cannot define project-specific tasks. We very much need this missing flexibility, because a lot of projects (notably Cocoon) call Forrest after customising the xdocs in their own Ant scripts. Design ------ Instead, Forrestbot v2 uses Ant 1.6's to define a hierarchy of scripts: forrest.build.xml | V forrestbot.xml | V xml-forrest.xml, xml-fop.xml, cocoon-site.xml, jakarta-poi.xml, ... forrestbot.xml runs , making it a logical superset of forrest.build.xml. Scripts for building each Forrest-using projects are likewise supersets of forrestbot.xml The nice thing about is that overriding scripts can: - Redefine properties. Our project scripts can all redefine details like the CVS location, where confirmation mail should go to, etc. - Override targets. Two uses: - Customize the forrestbot workflow. Want to get a project's contents locally instead of from CVS? Just override the 'getsrc' method: Similarly for 'deploy' (local, ftp, scp) and 'notify' (email or just ), - Project-specific stuff. Cocoon needs to copy lib/jars.xml to the xdocs directory, xml-cocoon.xml would override the 'get-src' target from forrestbot.xml, and do the copy (or invoke a Cocoon script to do it). Status ------ *Very* alpha. Requires the latest Ant, which I don't think Forrest's is. Only a few project scripts implemented. -- $Date: 2003/10/20 11:43:58 $ 1.1 xml-forrest/scratchpad/forrestbot2/sf-struts.xml Index: sf-struts.xml =================================================================== 1.1 xml-forrest/scratchpad/forrestbot2/ws-site.xml Index: ws-site.xml =================================================================== 1.1 xml-forrest/scratchpad/forrestbot2/xml-fop.xml Index: xml-fop.xml =================================================================== 1.1 xml-forrest/scratchpad/forrestbot2/xml-forrest-krysalis.xml Index: xml-forrest-krysalis.xml =================================================================== 1.1 xml-forrest/scratchpad/forrestbot2/xml-forrest-seed.xml Index: xml-forrest-seed.xml =================================================================== 1.1 xml-forrest/scratchpad/forrestbot2/xml-forrest.xml Index: xml-forrest.xml =================================================================== 1.1 xml-forrest/scratchpad/forrestbot2/xml-site.xml Index: xml-site.xml =================================================================== 1.1 xml-forrest/scratchpad/forrestbot2/xml-xindice.xml Index: xml-xindice.xml =================================================================== 1.1 xml-forrest/scratchpad/forrestbot2/xml-xmlbeans.xml Index: xml-xmlbeans.xml =================================================================== 1.1 xml-forrest/scratchpad/forrestbot2/core/buildall.xml Index: buildall.xml =================================================================== Building ${buildfiles.prop} 1.1 xml-forrest/scratchpad/forrestbot2/core/cvs.xml Index: cvs.xml =================================================================== ]]> Loading ${build.cvsmodule-dir}/${module}${root-dir}/forrest.properties.. ]]> 1.1 xml-forrest/scratchpad/forrestbot2/core/default-forrest.properties Index: default-forrest.properties =================================================================== project.content-dir=src/documentation project.conf-dir=${project.content-dir}/conf project.sitemap-dir=${project.content-dir} project.xdocs-dir=${project.content-dir}/content/xdocs project.resources-dir=${project.content-dir}/resources project.stylesheets-dir=${project.resources-dir}/stylesheets project.images-dir=${project.resources-dir}/images project.schema-dir=${project.resources-dir}/schema project.skins-dir=${project.content-dir}/skins project.skinconf=${project.content-dir}/skinconf.xml project.lib-dir=${project.content-dir}/lib project.classes-dir=${project.content-dir}/classes 1.1 xml-forrest/scratchpad/forrestbot2/core/email.xml Index: email.xml =================================================================== 1.1 xml-forrest/scratchpad/forrestbot2/core/emailtemplate.txt Index: emailtemplate.txt =================================================================== Automated build for ${ant.project.name} ${completion-status} Log attached. -- Forrestbot run ended at ${NOW} Using Forrest ${version} Forrestbot administrator: ${administrator} 1.1 xml-forrest/scratchpad/forrestbot2/core/forrestbot.xml Index: forrestbot.xml =================================================================== ....... Forrest render START ... Rendering docs in ${build.work-dir} ....... Forrest render END Oops, something broke 1.1 xml-forrest/scratchpad/forrestbot2/core/local.xml Index: local.xml =================================================================== ....... local.getsrc START Copying source from ${project.root-dir} Loading ${build.work-dir}/forrest.properties.. Copying source from ${project.root-dir}/${project.content-dir} ....... local.getsrc END Deploying from ${build.site-dir} to ${build.deploy-dir} ---------------------------------- Forrestbot run ${completion-status} Output in: ${build.deploy-dir} Log in: ${build.logfile-stored} Time: ${NOW} Using Forrest ${version} ---------------------------------- 1.1 xml-forrest/scratchpad/forrestbot2/core/rebuild-forrest.xml Index: rebuild-forrest.xml =================================================================== forrest.home set to ${forrest.home}