Added: continuum/site-publish/docs/1.1/installation/tomcat.html URL: http://svn.apache.org/viewvc/continuum/site-publish/docs/1.1/installation/tomcat.html?rev=1414546&view=auto ============================================================================== --- continuum/site-publish/docs/1.1/installation/tomcat.html (added) +++ continuum/site-publish/docs/1.1/installation/tomcat.html Wed Nov 28 06:47:27 2012 @@ -0,0 +1,630 @@ + + + + + + + + + + + + + + + Apache Maven Continuum - Guide to Install Continuum on Tomcat + + + + + + + + +
+ +
+
+
+

Guide to Install Continuum on Tomcat

+

Instructions for installing, deploying, configuring Continuum for the Apache Tomcat web container.

+

Sections:

+ +

Basics & Fundamentals +

+

With every Tomcat version you will need a few things before you can deploy Continuum.

+
  1. Use at least Java JDK 1.5.0_11 to run Tomcat w/Continuum.
  2. +
  3. A defined <Context> xml section to define the JNDI resources.
  4. +
  5. The Javamail / Activation JAR files.
  6. +
  7. The Apache Derby JAR files.
  8. +
  9. Configure ${appserver.base} java property.
  10. +
+

Defining JNDI Resources +.

+

Continuum will, on startup, ask the web container for a few JNDI configured resources, two jdbc datasources, and one javamail session.

+

To configure these JNDI resources in the Tomcat Web Container, you will need to specify a <Context> section that Tomcat can utilize for those requests coming from Continuum.

+

Tomcat has 3 main ways to accomplish this (ordered by most recommended to least recommended)

+
  1. Creating a $CATALINA_HOME/webapps/continuum/META-INF/context.xml containing a <Context> element.
  2. +
  3. Creating a $CATALINA_HOME/conf/Catalina/localhost/continuum.xml containing a <Context> element.
  4. +
  5. Adding a <Context> Section into the $CATALINA_HOME/conf/server.xml

    The following are the JNDI names you will need to provide:

    +
    • mail/Session +
    • +
    • jdbc/continuum +
    • +
    • jdbc/users +

      The individual techniques for describing these resources, and the parameters associated with them are specific to the Tomcat version, resource type, and even jdbc implementation type.

      +

      For the purposes of this document, the following assumptions are made. [[1]] You are an Apache Tomcat administrator.

      +
      1. You have an SMTP Server on localhost, port 25, with no login / password.
      2. +
      3. You will be using the embedded Apache Derby database. (not an external database, that's another show)
      4. +
      5. Details specific to Apache Tomcat, Javamail, or Apache Derby are left for the reader to research on those projects websites.
      6. +
      +
    • +
    +
  6. +
+
+

The Javamail / Activation JAR files +

+

Note: + Continuum requires Javamail 1.5 (or later)

+

Apache Tomcat does not typically ship with a copy of the Javamail or Activation jar files. In your role as the Apache Tomcat administrator of your installation, you will need to obtain these jar files and place it into your preferred lib directory.

+

The appropriate lib directory to choose is a personal preference, and we do not encourage or enforce a specific location for it, as all installations of Apache Tomcat are different.

+

For the record, we personally put them in the $CATALINA_HOME/common/lib/ + directory.

+

Direct download links for these jar files.

+ +
+

The Apache Derby JAR files +

+

Note: +Continuum 1.1 has been tested with Apache Derby 10.1.3.1

+

Default installation of Continuum utilizes the Apache Derby 100% Java Database to maintain Continuum specific information, and also the Users / Security Database.

+

You will need to obtain the derby.jar and derbytools.jar and place them into your preferred lib directory.

+

We put them into the $CATALINA_HOME/common/lib/ + directory.

+

Direct download links for these jar files.

+ +
+

Configure the appserver.base java property +

+

The ${appserver.base} + java property is used by the Continuum internal logging configuration to determine where to output its logs to. It is important to define this property either in the $CATALINA_OPTS + system environment variable (if Tomcat is being launched via the command line) or the service properties (if being launched as a service or daemon).

+

The format typically expected is -Dappserver.base=<SOMEWHERE> +

+

You can utilize the $CATALINA_HOME/bin/setenv.sh + script to set this value in a tomcat specific way.

+
#!/bin/bash
+# Keep the appserver.home and appserver.base values the same when running under Tomcat
+
+export CATALINA_OPTS="-Dappserver.home=$CATALINA_HOME -Dappserver.base=$CATALINA_HOME"
+
+
+
+

Tomcat 5.0.x Specifics +

+

Tested on Tomcat v5.0.28

+

These instructions explain how to deploy the Continuum 1.1 web application in an existing installation of Tomcat 5.0.x.

+

Extra Jars: +

+
  • You will need the xalan-2.7.0.jar + copied into your $CATALINA_HOME/common/lib/ + directory.
  • +
  • The Xerces XML Implementation provided in Tomcat 5.0.x is old and will cause problems with Continuum and the internal JAXP implementation in JDK 1.5, we recommend that you remove the files in $CATALINA_HOME/common/endorsed/ +.
    <Context path="/continuum" docBase="/path/to/continuum-webapp-1.1.war" debug="0">
    +
    +  <!-- JNDI Datasource for User/Security Database (REQUIRED) -->
    +  <Resource name="jdbc/users" auth="Container" type="javax.sql.DataSource"/>
    +  <ResourceParams name="jdbc/users">
    +    <parameter>
    +      <name>driverClassName</name>
    +      <value>org.apache.derby.jdbc.EmbeddedDriver</value>
    +    </parameter>
    +    <parameter>
    +      <name>factory</name>
    +      <value>org.apache.commons.dbcp.BasicDataSourceFactory</value> <!-- Sets up Database Connection Pooling -->
    +    </parameter>
    +    <parameter>
    +      <name>url</name>
    +      <value>jdbc:derby:database/users;create=true</value> <!-- Adjust path to suit -->
    +    </parameter>
    +    <parameter>
    +      <name>username</name>
    +      <value>sa</value>
    +    </parameter>
    +    <parameter>
    +      <name>password</name>
    +      <value></value>
    +    </parameter>
    +  </ResourceParams>
    +
    +  <!-- JNDI Datasource for Continuum Database (REQUIRED) -->
    +  <Resource name="jdbc/continuum" auth="Container" type="javax.sql.DataSource"/>
    +  <ResourceParams name="jdbc/continuum">
    +    <parameter>
    +      <name>driverClassName</name>
    +      <value>org.apache.derby.jdbc.EmbeddedDriver</value>
    +    </parameter>
    +    <parameter>
    +      <name>factory</name>
    +      <value>org.apache.commons.dbcp.BasicDataSourceFactory</value> <!-- Sets up Database Connection Pooling -->
    +    </parameter>
    +    <parameter>
    +      <name>url</name>
    +      <value>jdbc:derby:database/continuum;create=true</value> <!-- Adjust path to suit -->
    +    </parameter>
    +    <parameter>
    +      <name>username</name>
    +      <value>sa</value>
    +    </parameter>
    +    <parameter>
    +      <name>password</name>
    +      <value></value>
    +    </parameter>
    +  </ResourceParams>
    +
    +  <Resource name="mail/Session" auth="Container" type="javax.mail.Session"/>
    +  <ResourceParams name="mail/Session">
    +    <parameter>
    +      <name>mail.smtp.host</name>
    +      <value>localhost</value>
    +    </parameter>
    + </ResourceParams>
    +</Context>
    
    +
    +
  • +
+
+

Tomcat 5.5.x Specifics +

+

Tested on Tomcat v5.5.17 and v5.5.25

+

This example <Context> assumes technique #2 in the Define JNDI Resource + list. (This example lists out the docBase + to the war file itself.)

+
<Context path="/continuum"
+         docBase="/path/to/continuum-webapp-1.1.war">
+
+  <Resource name="jdbc/users"
+            auth="Container"
+            type="javax.sql.DataSource"
+            username="sa"
+            password=""
+            driverClassName="org.apache.derby.jdbc.EmbeddedDriver"
+            url="jdbc:derby:database/users;create=true" />
+
+  <Resource name="jdbc/continuum"
+            auth="Container"
+            type="javax.sql.DataSource"
+            username="sa"
+            password=""
+            driverClassName="org.apache.derby.jdbc.EmbeddedDriver"
+            url="jdbc:derby:database/continuum;create=true" />
+
+  <Resource name="mail/Session"
+            auth="Container"
+            type="javax.mail.Session"
+            mail.smtp.host="localhost"/>
+</Context>
+
+

Warning: + The Tomcat 5.5.20 and 5.5.23 releases are missing MailSessionFactory and a few other classes. JNDI mail sessions will not + work. Use Tomcat 5.5.17 or see the workaround on Bug 40668 +.

+
+

Tomcat 6.0.x Specifics +

+

Tested on Tomcat v6.0.14

+
<Context path="/continuum"
+         docBase="/path/to/continuum-webapp-1.1.war">
+
+  <Resource name="jdbc/users"
+            auth="Container"
+            type="javax.sql.DataSource"
+            username="sa"
+            password=""
+            driverClassName="org.apache.derby.jdbc.EmbeddedDriver"
+            url="jdbc:derby:database/users;create=true" />
+
+  <Resource name="jdbc/continuum"
+            auth="Container"
+            type="javax.sql.DataSource"
+            username="sa"
+            password=""
+            driverClassName="org.apache.derby.jdbc.EmbeddedDriver"
+            url="jdbc:derby:database/continuum;create=true" />
+
+  <Resource name="mail/Session"
+            auth="Container"
+            type="javax.mail.Session"
+            mail.smtp.host="localhost"/>
+</Context>
+
+
+
+ +
+
+
+
+
+ + + Added: continuum/site-publish/docs/1.1/installation/upgrade.html URL: http://svn.apache.org/viewvc/continuum/site-publish/docs/1.1/installation/upgrade.html?rev=1414546&view=auto ============================================================================== --- continuum/site-publish/docs/1.1/installation/upgrade.html (added) +++ continuum/site-publish/docs/1.1/installation/upgrade.html Wed Nov 28 06:47:27 2012 @@ -0,0 +1,428 @@ + + + + + + + + + + + + + + + Apache Maven Continuum - Upgrade + + + + + + + + +
+ +
+
+
+

Upgrade

+

Goal

+

When upgrading continuum, it could have some database model changes. This tool exports data from old database model and imports the data into the new database model.

+

There are 2 databases that need to be converted, one for the builds and one for the users.

+
+

Download The Tool

+

The tool is a standalone jar that you can download from the central repo.

+

You will need to download 2 versions of the tool, one for the export out of the old version and one for the import into the new version:

+ +

The first version of this tool is 1.1-beta-2

+
+

Exporting Data from the old version

+

Follow these steps:

+
  • Stop the old version of continuum
  • +
  • Export the build and user data from the old version using the jar for the old version:
    java -Xmx512m -jar data-management-cli-1.1-beta-4-app.jar -buildsJdbcUrl jdbc:derby:${old.continuum.home}/data/continuum/database -mode EXPORT -directory backups
    +java -Xmx512m -jar data-management-cli-1.1-beta-4-app.jar -usersJdbcUrl jdbc:derby:${old.continuum.home}/data/users/database -mode EXPORT -directory backups
    
    +
    +
  • +
+
+

Importing Data to the new version

+

Follow these steps:

+
  • Start the new version continuum to create the new data model.
  • +
  • Stop continuum
  • +
  • Run the specific steps for your version, described below
  • +
  • Import the build and user data into the new version using the jar for the new version:
    java -Xmx512m -jar data-management-cli-1.1-app.jar -buildsJdbcUrl jdbc:derby:${new.continuum.home}/data/continuum/database -mode IMPORT -directory backups
    +java -Xmx512m -jar data-management-cli-1.1-app.jar -usersJdbcUrl jdbc:derby:${new.continuum.home}/data/users/database -mode IMPORT -directory backups
    
    +
    +
  • +
  • NEXT_VAL values in SEQUENCE_TABLE must be checked before restarting continuum +
    • Normally, the SEQUENCE_TABLE is ok but in some cases the values are wrong.
    • +
    • Before starting Continuum for the first time after the import, connect to the db with a client like Squirrel SQL + and check the values in the NEXT_VAL + column.
    • +
    • Values must be greater than the max id value in each table.
    • +
    • For example, the next value of "org.apache.maven.continuum.model.Project" must be greater than the greatest id in Project table.
    • +
    +
  • +
  • Start the new version of continuum.
  • +
+
+

Specific steps to do before to import

+

1.1 import

+

Before to import from an older version (before 1.1-beta-4 to 1.1 final, you must open the builds.xml file under backup directory and remove all 'testResults' + tags. You can remove them with the following XSL:

+
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
+<xsl:output method="xml"/>
+ <xsl:template match="testResult"/>
+  <xsl:template match="@*|node()">
+    <xsl:copy>
+      <xsl:apply-templates select="@*|node()"/>
+    </xsl:copy>
+  </xsl:template>
+</xsl:stylesheet>
+
+

And you can run it with this command:

+
xsltproc copy.xsl builds.xml > fixed-builds.xml
+
+
+
+
+ +
+
+
+
+
+ + + Added: continuum/site-publish/docs/1.1/knowledge_base/index.html URL: http://svn.apache.org/viewvc/continuum/site-publish/docs/1.1/knowledge_base/index.html?rev=1414546&view=auto ============================================================================== --- continuum/site-publish/docs/1.1/knowledge_base/index.html (added) +++ continuum/site-publish/docs/1.1/knowledge_base/index.html Wed Nov 28 06:47:27 2012 @@ -0,0 +1,338 @@ + + + + + + + + + + + + + + + Apache Maven Continuum - Knowledge Base + + + + + + + + +
+ +
+
+
+

Knowledge Base

+

Frequently Asked Questions +

+
+ +
+
+
+
+
+ + + Added: continuum/site-publish/docs/1.1/user_guides/building_project/index.html URL: http://svn.apache.org/viewvc/continuum/site-publish/docs/1.1/user_guides/building_project/index.html?rev=1414546&view=auto ============================================================================== --- continuum/site-publish/docs/1.1/user_guides/building_project/index.html (added) +++ continuum/site-publish/docs/1.1/user_guides/building_project/index.html Wed Nov 28 06:47:27 2012 @@ -0,0 +1,403 @@ + + + + + + + + + + + + + + + Apache Maven Continuum - Building Projects + + + + + + + + +
+ +
+
+
+

Building Projects

+

To write

+
+ +
+
+
+
+
+ + + Added: continuum/site-publish/docs/1.1/user_guides/index.html URL: http://svn.apache.org/viewvc/continuum/site-publish/docs/1.1/user_guides/index.html?rev=1414546&view=auto ============================================================================== --- continuum/site-publish/docs/1.1/user_guides/index.html (added) +++ continuum/site-publish/docs/1.1/user_guides/index.html Wed Nov 28 06:47:27 2012 @@ -0,0 +1,393 @@ + + + + + + + + + + + + + + + Apache Maven Continuum - User's Guides + + + + + + + + +
+ +
+
+
+

User's Guides

+

To write

+
+ +
+
+
+
+
+ + + Added: continuum/site-publish/docs/1.1/user_guides/managing_builddef/builddefGroup.html URL: http://svn.apache.org/viewvc/continuum/site-publish/docs/1.1/user_guides/managing_builddef/builddefGroup.html?rev=1414546&view=auto ============================================================================== --- continuum/site-publish/docs/1.1/user_guides/managing_builddef/builddefGroup.html (added) +++ continuum/site-publish/docs/1.1/user_guides/managing_builddef/builddefGroup.html Wed Nov 28 06:47:27 2012 @@ -0,0 +1,407 @@ + + + + + + + + + + + + + + + Apache Maven Continuum - Project Group Build Definition + + + + + + + + +
+ +
+
+
+

Project Group Build Definition

+

To write

+
+ +
+
+
+
+
+ + + Added: continuum/site-publish/docs/1.1/user_guides/managing_builddef/builddefProject.html URL: http://svn.apache.org/viewvc/continuum/site-publish/docs/1.1/user_guides/managing_builddef/builddefProject.html?rev=1414546&view=auto ============================================================================== --- continuum/site-publish/docs/1.1/user_guides/managing_builddef/builddefProject.html (added) +++ continuum/site-publish/docs/1.1/user_guides/managing_builddef/builddefProject.html Wed Nov 28 06:47:27 2012 @@ -0,0 +1,407 @@ + + + + + + + + + + + + + + + Apache Maven Continuum - Project Build Definition + + + + + + + + +
+ +
+
+
+

Project Build Definition

+

To write

+
+ +
+
+
+
+
+ + +