You are viewing a plain text version of this content. The canonical link for it is here.
Posted to scm@geronimo.apache.org by db...@apache.org on 2005/11/21 12:03:37 UTC

svn commit: r345891 - in /geronimo/gbuild/trunk: gbuild-agent-application/src/conf/ gbuild-agent/src/main/java/org/apache/geronimo/gbuild/agent/ gbuild-agent/src/main/resources/META-INF/plexus/

Author: dblevins
Date: Mon Nov 21 03:03:26 2005
New Revision: 345891

URL: http://svn.apache.org/viewcvs?rev=345891&view=rev
Log:
Fixed connection dropping issue for now at least.  Flushed out the required regular expressions required for header flow and file include/write.
Nailed down the file include/write functionality for results aggregation.

Modified:
    geronimo/gbuild/trunk/gbuild-agent-application/src/conf/application.xml
    geronimo/gbuild/trunk/gbuild-agent/src/main/java/org/apache/geronimo/gbuild/agent/AbstractContinuumBuildAgent.java
    geronimo/gbuild/trunk/gbuild-agent/src/main/java/org/apache/geronimo/gbuild/agent/ContinuumBuildAgent.java
    geronimo/gbuild/trunk/gbuild-agent/src/main/java/org/apache/geronimo/gbuild/agent/FileIncludeExtention.java
    geronimo/gbuild/trunk/gbuild-agent/src/main/java/org/apache/geronimo/gbuild/agent/HeaderIncludeExtention.java
    geronimo/gbuild/trunk/gbuild-agent/src/main/java/org/apache/geronimo/gbuild/agent/PropertiesBuildTaskProducer.java
    geronimo/gbuild/trunk/gbuild-agent/src/main/java/org/apache/geronimo/gbuild/agent/WriteIncludeFileExtention.java
    geronimo/gbuild/trunk/gbuild-agent/src/main/resources/META-INF/plexus/components.xml

Modified: geronimo/gbuild/trunk/gbuild-agent-application/src/conf/application.xml
URL: http://svn.apache.org/viewcvs/geronimo/gbuild/trunk/gbuild-agent-application/src/conf/application.xml?rev=345891&r1=345890&r2=345891&view=diff
==============================================================================
--- geronimo/gbuild/trunk/gbuild-agent-application/src/conf/application.xml (original)
+++ geronimo/gbuild/trunk/gbuild-agent-application/src/conf/application.xml Mon Nov 21 03:03:26 2005
@@ -58,6 +58,30 @@
       <implementation>org.apache.geronimo.gbuild.agent.MockContinuumNotificationDispatcher</implementation>
     </component>
 
+    <component>
+      <role>org.apache.geronimo.gbuild.agent.BuildAgentExtention</role>
+      <role-hint>file-include</role-hint>
+      <implementation>org.apache.geronimo.gbuild.agent.FileIncludeExtention</implementation>
+      <requirements>
+        <requirement>
+          <role>org.apache.maven.continuum.configuration.ConfigurationService</role>
+        </requirement>
+      </requirements>
+      <configuration>
+        <pattern>^include.*</pattern>
+      </configuration>
+    </component>
+
+    <component>
+      <role>org.apache.geronimo.gbuild.agent.BuildAgentExtention</role>
+      <role-hint>general-headers</role-hint>
+      <implementation>org.apache.geronimo.gbuild.agent.HeaderIncludeExtention</implementation>
+      <configuration>
+        <pattern>^(project|build|header).*</pattern>
+      </configuration>
+    </component>
+
+
     <!--
     | Build Producer
     -->
@@ -98,10 +122,10 @@
       <role-hint>write-include-file</role-hint>
       <implementation>org.apache.geronimo.gbuild.agent.WriteIncludeFileExtention</implementation>
       <configuration>
-        <include-pattern>^include\.</include-pattern>
+        <include-pattern>^include.*</include-pattern>
         <file-extention>.properties</file-extention>
         <results-directory>${plexus.home}/results</results-directory>
-        <use-header>project.name</use-header>
+        <use-header>build.name</use-header>
         <date-format>yyyy-MM-dd</date-format>
       </configuration>
     </component>
@@ -152,6 +176,55 @@
           </appender>
         </appenders>
         <levels>
+          <level>
+            <hierarchy>org.apache.geronimo.gbuild.agent.BuildAgentExtention:file-include</hierarchy>
+            <level>INFO</level>
+          </level>
+          <level>
+            <hierarchy>org.apache.geronimo.gbuild.agent.BuildAgentExtention:general-headers</hierarchy>
+            <level>INFO</level>
+          </level>
+          <level>
+            <hierarchy>org.apache.geronimo.gbuild.agent.BuildResultsExtention:write-include-file</hierarchy>
+            <level>INFO</level>
+          </level>
+          <level>
+            <hierarchy>org.apache.geronimo.gbuild.agent.BuildAgentExtention:file-include</hierarchy>
+            <level>INFO</level>
+          </level>
+
+            <!--There was no such logger 'org.apache.maven.continuum.configuration.ConfigurationService' 8918836.-->
+            <!--There was no such logger 'org.apache.maven.continuum.execution.maven.m2.MavenBuilderHelper' 8918836.-->
+            <!--There was no such logger 'org.apache.geronimo.gbuild.agent.BuildResultsExtentionManager' 8918836.-->
+            <!--There was no such logger 'org.apache.maven.continuum.execution.ContinuumBuildExecutor:shell' 8918836.-->
+            <!--There was no such logger 'org.codehaus.plexus.action.Action:checkout-project' 8918836.-->
+            <!--There was no such logger 'org.apache.maven.continuum.buildcontroller.BuildController' 8918836.-->
+            <!--There was no such logger 'org.apache.maven.continuum.scm.ContinuumScm' 8918836.-->
+            <!--There was no such logger 'org.apache.maven.settings.MavenSettingsBuilder' 8918836.-->
+            <!--There was no such logger 'org.apache.geronimo.gbuild.agent.BuildResultsExtention:write-include-file' 8918836.-->
+            <!--There was no such logger 'org.apache.maven.continuum.utils.WorkingDirectoryService' 8918836.-->
+            <!--There was no such logger 'org.apache.maven.artifact.resolver.ArtifactResolver' 8918836.-->
+            <!--There was no such logger 'org.apache.geronimo.gbuild.agent.BuildAgentExtentionManager' 8918836.-->
+            <!--There was no such logger 'org.apache.geronimo.gbuild.agent.BuildAgent:build-producer' 8918836.-->
+            <!--There was no such logger 'org.codehaus.plexus.action.ActionManager' 8918836.-->
+            <!--There was no such logger 'org.apache.geronimo.gbuild.agent.BuildAgent:build-results' 8918836.-->
+            <!--There was no such logger 'org.apache.maven.continuum.execution.ContinuumBuildExecutor:maven2' 8918836.-->
+            <!--There was no such logger 'org.apache.maven.project.interpolation.ModelInterpolator' 8918836.-->
+            <!--There was no such logger 'org.apache.maven.continuum.execution.manager.BuildExecutorManager' 8918836.-->
+            <!--There was no such logger 'org.apache.maven.continuum.utils.shell.ShellCommandHelper' 8918836.-->
+            <!--There was no such logger 'org.apache.maven.continuum.execution.ContinuumBuildExecutor:maven-1' 8918836.-->
+            <!--There was no such logger 'org.apache.geronimo.gbuild.agent.BuildAgentExtention:file-include' 8918836.-->
+            <!--There was no such logger 'org.apache.maven.continuum.execution.maven.m1.MavenOneMetadataHelper' 8918836.-->
+            <!--There was no such logger 'org.codehaus.plexus.action.Action:execute-builder' 8918836.-->
+            <!--There was no such logger 'org.apache.maven.artifact.repository.metadata.RepositoryMetadataManager' 8918836.-->
+            <!--There was no such logger 'org.apache.maven.artifact.transform.ArtifactTransformation:release' 8918836.-->
+            <!--There was no such logger 'org.apache.maven.project.MavenProjectBuilder' 8918836.-->
+            <!--There was no such logger 'org.apache.maven.artifact.transform.ArtifactTransformation:snapshot' 8918836.-->
+            <!--There was no such logger 'org.apache.maven.scm.manager.ScmManager' 8918836.-->
+            <!--There was no such logger 'org.apache.maven.artifact.manager.WagonManager' 8918836.-->
+            <!--There was no such logger 'org.codehaus.plexus.action.Action:update-project-from-working-directory' 8918836.-->
+            <!--There was no such logger 'org.codehaus.plexus.action.Action:check-working-directory' 8918836.-->
+            <!--There was no such logger 'org.apache.maven.artifact.transform.ArtifactTransformation:latest' 8918836.-->
           <!--<level>-->
             <!--<hierarchy>org.codehaus.plexus.velocity</hierarchy>-->
             <!--<level>WARN</level>-->

Modified: geronimo/gbuild/trunk/gbuild-agent/src/main/java/org/apache/geronimo/gbuild/agent/AbstractContinuumBuildAgent.java
URL: http://svn.apache.org/viewcvs/geronimo/gbuild/trunk/gbuild-agent/src/main/java/org/apache/geronimo/gbuild/agent/AbstractContinuumBuildAgent.java?rev=345891&r1=345890&r2=345891&view=diff
==============================================================================
--- geronimo/gbuild/trunk/gbuild-agent/src/main/java/org/apache/geronimo/gbuild/agent/AbstractContinuumBuildAgent.java (original)
+++ geronimo/gbuild/trunk/gbuild-agent/src/main/java/org/apache/geronimo/gbuild/agent/AbstractContinuumBuildAgent.java Mon Nov 21 03:03:26 2005
@@ -19,6 +19,7 @@
 import org.codehaus.plexus.personality.plexus.lifecycle.phase.Startable;
 import org.codehaus.plexus.personality.plexus.lifecycle.phase.StartingException;
 import org.codehaus.plexus.personality.plexus.lifecycle.phase.StoppingException;
+import org.codehaus.plexus.logging.Logger;
 import org.activemq.ActiveMQConnectionFactory;
 
 import javax.jms.ExceptionListener;
@@ -51,7 +52,7 @@
 
     public synchronized void start() throws StartingException {
         try {
-            setClient(new Client(coordinatorUrl));
+            setClient(new Client(coordinatorUrl, this, getLogger()));
             connection = getClient().getConnection();
         } catch (Throwable e) {
             getLogger().error("Could not create connection to: "+coordinatorUrl, e);
@@ -75,8 +76,17 @@
     }
 
     public void onException(JMSException ex) {
-        getLogger().fatalError("JMS Exception occured.  Shutting down client.", ex);
-        setRun(false);
+        getLogger().fatalError("JMS Exception occured.  Attempting reconnect.", ex);
+        try {
+            reconnect();
+        } catch (JMSException e) {
+            getLogger().error("Reconnect failed.", e);
+        }
+//        setRun(false);
+    }
+
+    public synchronized void reconnect() throws JMSException {
+        this.client = client.reconnect();
     }
 
     public synchronized boolean isRunning() {
@@ -146,24 +156,39 @@
         this.client = client;
     }
 
-    public static class Client {
+    public static class Client implements ExceptionListener {
         private final String brokerUrl;
         private final Connection connection;
         private final Session session;
+        private final ExceptionListener listener;
+        private final Logger logger;
+        private boolean connected = true;
 
-        private Client(String brokerUrl, Connection connection, Session session) {
-            this.brokerUrl = brokerUrl;
+        private Client(Client old, Connection connection, Session session) {
+            this.brokerUrl = old.brokerUrl;
             this.connection = connection;
             this.session = session;
+            this.listener = old.listener;
+            this.logger = old.logger;
         }
 
-        public Client(String brokerUrl) throws JMSException {
+        public Client(String brokerUrl, ExceptionListener listener, Logger logger) throws JMSException {
             this.brokerUrl = brokerUrl;
             ActiveMQConnectionFactory connectionFactory = new ActiveMQConnectionFactory(brokerUrl);
             connection = connectionFactory.createConnection();
-//            connection.setExceptionListener(this);
+            connection.setExceptionListener(this);
             connection.start();
+            this.listener = listener;
             this.session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE);
+            this.logger = logger;
+        }
+
+        public synchronized boolean isConnected() {
+            return connected;
+        }
+
+        private Logger getLogger() {
+            return logger;
         }
 
         public String getBrokerUrl() {
@@ -196,9 +221,10 @@
         }
 
         public synchronized Client reconnect() throws JMSException {
+            failed();
             Connection connection = connect();
             Session session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE);
-            return new Client(brokerUrl, connection, session);
+            return new Client(this, connection, session);
         }
 
         public synchronized void close() throws JMSException {
@@ -211,23 +237,43 @@
         }
 
         private Connection connect(int tries) throws JMSException {
+
             try {
                 ActiveMQConnectionFactory connectionFactory = new ActiveMQConnectionFactory(brokerUrl);
                 Connection connection = connectionFactory.createConnection();
-//            connection.setExceptionListener(this);
+                connection.setExceptionListener(this);
                 connection.start();
+                getLogger().info("Client reconnect successful.");
                 return connection;
             } catch (JMSException e) {
                 if (tries <= 0) {
+                    getLogger().info("Client reconnect failed.  Giving up.", e);
                     throw e;
                 } else {
                     try {
-                        Thread.sleep(5000);
+                        int delay = 5000;
+                        getLogger().info("Client reconnect failed.  Trying again in "+delay+" milliseconds. ("+ e.getMessage()+")");
+                        Thread.sleep(delay);
                     } catch (InterruptedException dontCare) {
                     }
                     return connect(--tries);
                 }
             }
+        }
+
+        /**
+         * Marks this client as failed and returns its previous state
+         * @return false if the client was not previously in a failed state
+         */
+        private synchronized boolean failed() {
+            boolean failed = !connected;
+            connected = false;
+            return failed;
+        }
+
+        public void onException(JMSException jmsException) {
+            getLogger().info("JMSException "+this.hashCode());
+            this.listener.onException(jmsException);
         }
     }
 }

Modified: geronimo/gbuild/trunk/gbuild-agent/src/main/java/org/apache/geronimo/gbuild/agent/ContinuumBuildAgent.java
URL: http://svn.apache.org/viewcvs/geronimo/gbuild/trunk/gbuild-agent/src/main/java/org/apache/geronimo/gbuild/agent/ContinuumBuildAgent.java?rev=345891&r1=345890&r2=345891&view=diff
==============================================================================
--- geronimo/gbuild/trunk/gbuild-agent/src/main/java/org/apache/geronimo/gbuild/agent/ContinuumBuildAgent.java (original)
+++ geronimo/gbuild/trunk/gbuild-agent/src/main/java/org/apache/geronimo/gbuild/agent/ContinuumBuildAgent.java Mon Nov 21 03:03:26 2005
@@ -103,7 +103,7 @@
                 try {
                     processMessages(client);
                 } catch (JMSException e) {
-                    onException(e);
+//                    onException(e);
                 }
             }
 
@@ -116,7 +116,7 @@
         MessageConsumer buildConsumer = client.createQueueConsumer(buildTaskQueue);
         MessageProducer resultsProducer = client.createTopicProducer(buildResultsTopic);
 
-        while (isRunning()) {
+        while (isRunning() && client.isConnected()) {
             Message message = buildConsumer.receive(1000);
             if (message instanceof ObjectMessage) {
                 processMessage(message, client, resultsProducer);

Modified: geronimo/gbuild/trunk/gbuild-agent/src/main/java/org/apache/geronimo/gbuild/agent/FileIncludeExtention.java
URL: http://svn.apache.org/viewcvs/geronimo/gbuild/trunk/gbuild-agent/src/main/java/org/apache/geronimo/gbuild/agent/FileIncludeExtention.java?rev=345891&r1=345890&r2=345891&view=diff
==============================================================================
--- geronimo/gbuild/trunk/gbuild-agent/src/main/java/org/apache/geronimo/gbuild/agent/FileIncludeExtention.java (original)
+++ geronimo/gbuild/trunk/gbuild-agent/src/main/java/org/apache/geronimo/gbuild/agent/FileIncludeExtention.java Mon Nov 21 03:03:26 2005
@@ -46,6 +46,8 @@
     }
 
     public void postProcess(Map build, Map results) {
+        getLogger().debug("Pattern '"+pattern+"'");
+
         Iterator keys = build.keySet().iterator();
 
         while (keys.hasNext()) {
@@ -53,9 +55,10 @@
             String key = (String) keys.next();
 
             if (key.matches(pattern)){
-
+                getLogger().debug("Match '"+key+"'");
                 include(key, build, results);
-
+            } else {
+                getLogger().debug("No Match '"+key+"'");
             }
         }
     }
@@ -70,11 +73,15 @@
             return;
         }
 
-        getLogger().info("Found entry " + fileNameKey + " = " + fileName);
+        getLogger().debug("Found entry " + fileNameKey + " = " + fileName);
 
-        File workingDirectory = configurationService.getWorkingDirectory();
+        File dir = configurationService.getWorkingDirectory();
 
-        File file = new File(workingDirectory, fileName);
+        int projectId = ContinuumBuildAgent.getProjectId(build);
+
+        dir = new File(dir, Integer.toString(projectId));
+
+        File file = new File(dir, fileName);
 
         if (!file.exists()) {
 
@@ -85,8 +92,11 @@
 
         try {
 
+            getLogger().debug("Reading "+file.getAbsolutePath());
+
             String content = FileUtils.fileRead(file.getAbsolutePath());
 
+            getLogger().debug("Including "+content.length()+" - "+file.getAbsolutePath());
             results.put(fileNameKey, content);
 
         }

Modified: geronimo/gbuild/trunk/gbuild-agent/src/main/java/org/apache/geronimo/gbuild/agent/HeaderIncludeExtention.java
URL: http://svn.apache.org/viewcvs/geronimo/gbuild/trunk/gbuild-agent/src/main/java/org/apache/geronimo/gbuild/agent/HeaderIncludeExtention.java?rev=345891&r1=345890&r2=345891&view=diff
==============================================================================
--- geronimo/gbuild/trunk/gbuild-agent/src/main/java/org/apache/geronimo/gbuild/agent/HeaderIncludeExtention.java (original)
+++ geronimo/gbuild/trunk/gbuild-agent/src/main/java/org/apache/geronimo/gbuild/agent/HeaderIncludeExtention.java Mon Nov 21 03:03:26 2005
@@ -36,6 +36,8 @@
     }
 
     public void postProcess(Map build, Map results) {
+        getLogger().debug("Pattern '"+pattern+"'");
+
         Iterator keys = build.keySet().iterator();
 
         while (keys.hasNext()) {
@@ -43,9 +45,10 @@
             String key = (String) keys.next();
 
             if (key.matches(pattern)){
-
+                getLogger().debug("Match '"+key+"'");
                 include(key, build, results);
-
+            } else {
+                getLogger().debug("No Match '"+key+"'");
             }
         }
     }

Modified: geronimo/gbuild/trunk/gbuild-agent/src/main/java/org/apache/geronimo/gbuild/agent/PropertiesBuildTaskProducer.java
URL: http://svn.apache.org/viewcvs/geronimo/gbuild/trunk/gbuild-agent/src/main/java/org/apache/geronimo/gbuild/agent/PropertiesBuildTaskProducer.java?rev=345891&r1=345890&r2=345891&view=diff
==============================================================================
--- geronimo/gbuild/trunk/gbuild-agent/src/main/java/org/apache/geronimo/gbuild/agent/PropertiesBuildTaskProducer.java (original)
+++ geronimo/gbuild/trunk/gbuild-agent/src/main/java/org/apache/geronimo/gbuild/agent/PropertiesBuildTaskProducer.java Mon Nov 21 03:03:26 2005
@@ -81,7 +81,10 @@
         getLogger().debug("buildTaskQueue "+buildTaskQueue);
 
         File dir = new File(watchDirectory);
-        scanner = new DirectoryMonitor(dir, this, pollInterval, getLogger().getChildLogger("scanner"));
+        dir.mkdirs();
+        scanner = new DirectoryMonitor(dir, this, pollInterval, getLogger());
+
+        getLogger().info("Watching "+dir.getAbsolutePath());
         super.start();
     }
 
@@ -131,7 +134,7 @@
 
         producer.setDeliveryMode(DeliveryMode.NON_PERSISTENT);
 
-        int id = getInteger(def, "project.id");
+        int id = Integer.parseInt(getString(def, "project.id"));
 
         String scmUrl = getString(def, "project.scmUrl");
 
@@ -182,6 +185,8 @@
 
             map.put(key, value);
 
+            map.put("build.name", key.replaceFirst("build.",""));
+            
             map.put(KEY_STORE, store);
 
             map.put(KEY_PROJECT_ID, new Integer(project.getId()));

Modified: geronimo/gbuild/trunk/gbuild-agent/src/main/java/org/apache/geronimo/gbuild/agent/WriteIncludeFileExtention.java
URL: http://svn.apache.org/viewcvs/geronimo/gbuild/trunk/gbuild-agent/src/main/java/org/apache/geronimo/gbuild/agent/WriteIncludeFileExtention.java?rev=345891&r1=345890&r2=345891&view=diff
==============================================================================
--- geronimo/gbuild/trunk/gbuild-agent/src/main/java/org/apache/geronimo/gbuild/agent/WriteIncludeFileExtention.java (original)
+++ geronimo/gbuild/trunk/gbuild-agent/src/main/java/org/apache/geronimo/gbuild/agent/WriteIncludeFileExtention.java Mon Nov 21 03:03:26 2005
@@ -64,10 +64,12 @@
 
     public void start() throws StartingException {
         directory = new File(resultsDirectory);
+        directory.mkdirs();
         assert directory.exists(): "File specified does not exist. " + directory.getAbsolutePath();
         assert directory.isDirectory(): "File specified is not a directory. " + directory.getAbsolutePath();
         assert directory.canWrite(): "Directory specified is not writable. " + directory.getAbsolutePath();
 
+        getLogger().info("Include files will be written to "+directory.getAbsolutePath());
         dateFormatter = new SimpleDateFormat(dateFormat);
     }
 
@@ -75,33 +77,42 @@
     }
 
     public void execute(Map context) throws Exception {
+        getLogger().debug("Pattern "+includePattern);
+        try {
+            String header = (String) context.get(useHeader);
 
-        String header = (String) context.get(useHeader);
-
-        for (Iterator iterator = context.entrySet().iterator(); iterator.hasNext();) {
-            Map.Entry entry = (Map.Entry) iterator.next();
-            String key = (String) entry.getKey();
-            Object value = entry.getValue();
-
-            if (key.startsWith(includePattern)){
-
-                String fileName = header;
-                fileName += key.replaceFirst(includePattern, "");
-                fileName += "-"+ dateFormatter.format(new Date());
-                fileName += fileExtention;
-
-                write(fileName, (String)value);
+            for (Iterator iterator = context.entrySet().iterator(); iterator.hasNext();) {
+                Map.Entry entry = (Map.Entry) iterator.next();
+                String key = (String) entry.getKey();
+                Object value = entry.getValue();
+
+                if (key.matches(includePattern)){
+                    getLogger().info("Found include pattern "+key);
+                    String fileName = header;
+                    fileName += key.replaceFirst(includePattern, "");
+                    fileName += "-"+ dateFormatter.format(new Date());
+                    fileName += fileExtention;
+
+                    write(fileName, (String)value);
+                } else {
+                    getLogger().debug("No Match "+key);
+                }
             }
+        } catch (Exception e) {
+            e.printStackTrace();
         }
     }
 
     private void write(String fileName, String content) {
+        File outputFile = new File(directory, fileName);
         try {
-            FileOutputStream file = new FileOutputStream(fileName);
+            getLogger().info("Writing "+content.length()+" characters to "+outputFile.getAbsolutePath());
+            FileOutputStream file = new FileOutputStream(outputFile);
             file.write(content.getBytes());
+            file.flush();
             file.close();
         } catch (IOException e) {
-            getLogger().error("Could not write to file "+fileName, e);
+            getLogger().error("Could not write to file "+outputFile.getAbsolutePath(), e);
         }
     }
 }

Modified: geronimo/gbuild/trunk/gbuild-agent/src/main/resources/META-INF/plexus/components.xml
URL: http://svn.apache.org/viewcvs/geronimo/gbuild/trunk/gbuild-agent/src/main/resources/META-INF/plexus/components.xml?rev=345891&r1=345890&r2=345891&view=diff
==============================================================================
--- geronimo/gbuild/trunk/gbuild-agent/src/main/resources/META-INF/plexus/components.xml (original)
+++ geronimo/gbuild/trunk/gbuild-agent/src/main/resources/META-INF/plexus/components.xml Mon Nov 21 03:03:26 2005
@@ -90,7 +90,7 @@
         </requirement>
       </requirements>
       <configuration>
-        <pattern>^include\.</pattern>
+        <pattern>^include</pattern>
       </configuration>
     </component>
 
@@ -99,7 +99,7 @@
       <role-hint>general-headers</role-hint>
       <implementation>org.apache.geronimo.gbuild.agent.HeaderIncludeExtention</implementation>
       <configuration>
-        <pattern>^(project|build|header)\.</pattern>
+        <pattern>^(project|build|header).*</pattern>
       </configuration>
     </component>
 
@@ -155,7 +155,7 @@
       <role-hint>write-include-file</role-hint>
       <implementation>org.apache.geronimo.gbuild.agent.WriteIncludeFileExtention</implementation>
       <configuration>
-        <include-pattern>^include\.</include-pattern>
+        <include-pattern>^include.*</include-pattern>
         <file-extention>.properties</file-extention>
         <results-directory>results</results-directory>
         <use-header>project.name</use-header>