openjpa-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Donald Woods (JIRA)" <j...@apache.org>
Subject [jira] Updated: (OPENJPA-876) Better test profiles for proprietary databases (DB2, Oracle) and continuous build
Date Fri, 06 Feb 2009 20:28:59 GMT

     [ https://issues.apache.org/jira/browse/OPENJPA-876?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Donald Woods updated OPENJPA-876:
---------------------------------

    Attachment: OPENJPA-876-trunk.patch

Patch which allows users to supply:
1) a local repo for non-public DB2 and Oracle artifacts (similar to what is used in docbook-profile)
2) override the groupId and version for the artifacts (additional attributes not added by
earlier commits)
This can be done on the command line or in .m2/settings.xml, like:
    <profile>
        <id>test-db2-jcc</id>
        <properties>
            <db2.maven.repo>http://my.local.repo/maven</db2.maven.repo>
            <db2.groupid>com.ibm.db2</db2.groupid>
            <db2.version>9.5</db2.version>
            <openjpa.db2.url>jdbc:db2://localhost:50000/OPENJPA</openjpa.db2.url>
            <openjpa.db2.username>guest</openjpa.db2.username>
            <openjpa.db2.password>guest</openjpa.db2.password>
        </properties>
    </profile>


> Better test profiles for proprietary databases (DB2, Oracle) and continuous build
> ---------------------------------------------------------------------------------
>
>                 Key: OPENJPA-876
>                 URL: https://issues.apache.org/jira/browse/OPENJPA-876
>             Project: OpenJPA
>          Issue Type: Improvement
>    Affects Versions: 1.0.3, 1.1.0, 1.2.0, 1.3.0, 2.0.0
>            Reporter: Michael Dick
>            Assignee: Donald Woods
>             Fix For: 1.3.0, 2.0.0
>
>         Attachments: OPENJPA-876-trunk.patch
>
>
> Currently we use the test-custom and test-custom2 profiles in openjpa-persistence-jdbc/pom.xml
to enable testing of a variety of databases. Basically anything that does not have a publicly
available JDBC drivers. 
> This support works well if you run the build manually, but isn't always perfect when
using a continuous build system.
> In many continuous build systems you want to have a single build definition which can
be run on any number of machines. Ideally each machine could store the database settings in
${user.home}/.m2/settings.xml. Where this becomes a problem is if a single machine wants to
use our test-custom profile in conjuction with another one. For example mvn -Ptest-custom,test-custom-oracle
clean install. In order to make this work Maven would have to set variables in test-custom-oracle
and then read them in the test-custom profile. Ensuring that the properties are handled in
the correct order is cumbersome and doesn't seem to work in recent versions of maven / surefire.

> To resolve the problem I propose creating specific profiles for testing with various
proprietary databases. These profiles rely on the user running mvn install:install-file ${maven
args} to install a copy of the jdbc drivers in a local repository prior to running, but after
that one time setup step it's a lot easier to run tests on various databases (manually or
on a build system).

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message