Re: NSIS with maven and exe artifacts.

2009-09-16 Thread Ken Liu
I was using antrun before but realized that the maven-exec plugin is better
because maven is executing nsis directly instead of via an ant build.xml.

Ken

On Mon, Sep 14, 2009 at 10:55 AM, James Russo j...@halo3.net wrote:

 Will check those out. Thanks Stephen.

 -jr


 Stephen Connolly wrote:

 try antrun to package and then build-helper to attach the generated
 artifact to the reactor

 2009/9/14 James Russo j...@halo3.net:


 Hello,
I have a module where I would like to take the artifacts producted by
 a
 few other modules and combine them into an .EXE using NSIS. I see that
 there
 is a nsis for maven 1.x, but I don't see anything for 2.x? Anyone done
 this
 before care to explain how they accomplished it?

 Basically would like to have everything I need for NSIS in this module
 (other files, readme,  configuration, etc) and then have it grab
 dependencies from other modules include it in NSIS and generate EXE.
 Ultimately I'd like to deploy this .exe to archiva.

 thanks,

 -jr

 -
 To unsubscribe, e-mail: users-unsubscr...@maven.apache.org
 For additional commands, e-mail: users-h...@maven.apache.org





 -
 To unsubscribe, e-mail: users-unsubscr...@maven.apache.org
 For additional commands, e-mail: users-h...@maven.apache.org




 -
 To unsubscribe, e-mail: users-unsubscr...@maven.apache.org
 For additional commands, e-mail: users-h...@maven.apache.org




Re: NSIS with maven and exe artifacts.

2009-09-16 Thread Ken Liu
Julien -

When you did this, did you encounter a problem where test dependencies (e.g.
Junit) were also copied?

Ken

On Tue, Sep 15, 2009 at 2:20 AM, Julien Graglia jgrag...@netceler.comwrote:

 Le lundi 14 septembre 2009 à 16:17 -0400, James Russo a écrit :
  Hello Julien,
 
  In your ncsetup.nsi, how do you reference the artifacts to be
  included with the .exe build?
 My installer artifact is of type pom and depends of my war. Then I use
 the assembly plugin to retrieve dependencies and output them in folders.
 Ex :
dependencySets
!-- copy all deps in the libs subfolder. target only desps
 markes as
 provided in my war --
dependencySet
outputDirectorylibs/outputDirectory
scopeprovided/scope
excludes
excludexxx:*/exclude
/excludes
/dependencySet
 !-- copy all std deps in the libs subfolder. target only desps markes
 as provided in my war --
dependencySet
outputDirectorylibs/outputDirectory
excludes
exclude:*/exclude
/excludes
/dependencySet
 !--retreive all wars --
dependencySet
outputDirectorywebapps/outputDirectory


 outputFileNameMapping${artifact.artifactId}.${artifact.extension}/outputFileNameMapping
scoperuntime/scope
includes
!--

 http://maven.apache.org/plugins/maven-assembly-plugin/advanced-descriptor-topics.html--
include*:war:*/include
/includes
/dependencySet
 ...
 Then I just have to tell NSIS to include thats folders and install them

 Extract of nsis.script in src/main/nsis/
SetOutPath $INSTDIR\libs
; copy all jars retrieved from the assembly plugin
File /r ..\..\..\target\xxx-${VERSION}-base\libs\*
SetOutPath $INSTDIR\webapps
File /r ..\..\..\target\xxx-${VERSION}-base\webapps\*

 et voilà!

 
  thanks,
 
  -jr
 
  Julien Graglia wrote:
   Le lundi 14 septembre 2009 à 10:03 -0400, James Russo a écrit :
  
   Hello,
  
   I have a module where I would like to take the artifacts producted
   by a few other modules and combine them into an .EXE using NSIS. I see
   that there is a nsis for maven 1.x, but I don't see anything for 2.x?
   Anyone done this before care to explain how they accomplished it?
  
   Basically would like to have everything I need for NSIS in this module
   (other files, readme,  configuration, etc) and then have it grab
   dependencies from other modules include it in NSIS and generate EXE.
   Ultimately I'd like to deploy this .exe to archiva.
  
  
  
   Hi,
  
   Funny..., this morning, a guy on the maven irc just told me that a nsis
   plugin (1) exists for maven 2.
   today I use :
   assembly plugin to download dependencies
   maven exec (2) to run NSIS with some properties during package
 phase
   and build-helper-maven-plugin to attach generated .deb to my
 artifact
   (so that I can donwload the install from archiva (5))
   but all these plugins could be replaced by a single call to that nsis
   plugin. (see extract from my pom in (4))
  
   I will give it a try next week (well I will try to find some time...)
  
  
   1 : http://mojo.codehaus.org/nsis-maven-plugin/
   2 : http://mojo.codehaus.org/exec-maven-plugin/introduction.html
   3 : http://mojo.codehaus.org/build-helper-maven-plugin/howto.html
   4 : http://pastie.org/616361 ( but I told you, that nsis plugin could
   replace the exec+buildhelper part with a single (may be 4:=) ) line(s))
   5: BTW, If you use Archiva, don't forget to add .exe extension to the
   list of artifacts scanned in the repositories)
  
  
  --
 Julien Graglia
 NetCeler



 -
 To unsubscribe, e-mail: users-unsubscr...@maven.apache.org
 For additional commands, e-mail: users-h...@maven.apache.org




Re: NSIS Maven Plugin

2009-09-09 Thread Ken Liu
I've been looking at the same plugin recently and I think you can use the
maven dependency plugin to copy the jars to an output directory that will be
picked up by nsis.

Your nsis maven project will have to declare your wars as dependencies.

This is basically how I do it now without the NSIS plugin; I am calling NSIS
through maven-antrun (pretty convoluted).

Ken

On Wed, Aug 12, 2009 at 4:13 PM, Harper, Brad brad.har...@fiserv.comwrote:



 It isn't clear how, with this plugin, the installer project would 'pull
 these artifacts in' for inclusion in the installer payload.



 Has anyone yet attempted to use this plugin in a non-trivial way?
 Thanks.



 Brad



 [1]  http://mojo.codehaus.org/nsis-maven-plugin/index.html

 [2]
 http://mojo.codehaus.org/nsis-maven-plugin/examples/sample-nsis-project.
 htmlhttp://mojo.codehaus.org/nsis-maven-plugin/examples/sample-nsis-project.%0Ahtml






Re: [ANNOUNCE] Continuum 1.2 Released

2008-09-22 Thread Ken Liu
The date on the release page is wrong, it says November 23, 2007.

Ken

On Mon, Sep 22, 2008 at 3:37 PM, Olivier Lamy [EMAIL PROTECTED] wrote:

 The Apache Continuum team is pleased to announce Apache Continuum 1.2.

 The latest release is now available here:

 http://continuum.apache.org/download.html

 If you have any questions, please consult:

  - the web site: http://continuum.apache.org
  - the continuum-user mailing list:
 http://continuum.apache.org/mail-lists.html

 New in Continuum 1.2
 

 * Using Spring
 Continuum now uses the Spring Framework as it's underlying container
 instead of Plexus. This results in a boost in performance and
 stability for the web application in particular.

 *Repository Purge
 It's now possible to add purges which will cleanup :
  - m2 repositories (now it's possible to configure a local m2
 repository per project group)
  - build output directory

 * Maven plugin groupId and artifactId change Now the maven plugin has
 the new groupId:artifactId org.apache.continuum:continuum-maven-plugin

 * New SCMs support
 Now continuum have two new scm providers : git and accurev.

 Change Log in Continuum 1.2
 ===

 ** Bug
* [CONTINUUM-860] - multiple email addresses delimited with commas
 causes AddressException
* [CONTINUUM-1054] - IllegalStateException stack adding pom
* [CONTINUUM-1200] - Password Characters Not Supported in SCM Checkout
* [CONTINUUM-1322] - Attempt to store value with more than 256 chars
* [CONTINUUM-1336] - upgrade quartz - we use a very old version
* [CONTINUUM-1360] - Prepended semicolon in svn password does not work
* [CONTINUUM-1371] - NullPointer when Releasing with Ant and
 Default Project Group
* [CONTINUUM-1433] - Wrong path in descripton on how to allow the
 file protocol.
* [CONTINUUM-1489] - replace use of MungedHttpsURL with apache
 httpclient (4.0-beta1)
* [CONTINUUM-1515] - SCM Tag does not have a default value
* [CONTINUUM-1521] - NullPointerException in StarTeam changelog command
* [CONTINUUM-1525] - Can't release project with Continuum on Geronimo
 2.0.1
* [CONTINUUM-1528] - Continuum gets slower over time and eventually
 crashes
* [CONTINUUM-1549] - LDAP Authenticated Continuum -
 NullPointerException when trying to see Members of a project group
* [CONTINUUM-1575] - Confusing behavior when continuum can't
 construct MavenProject from pom
* [CONTINUUM-1589] - updateBuildDefinitionForProjectGroup remove
 the description of the build definition
* [CONTINUUM-1590] - updateBuildDefinitionForProjectGroup leads to
 a StackOverflowError
* [CONTINUUM-1593] - Requires Javamail 1.5? Should be 1.4?
* [CONTINUUM-1596] - The release perform doesn't work when a scm
 password is required
* [CONTINUUM-1601] - Email address with '+' is not accepted in mail
 notifier
* [CONTINUUM-1610] - Deployment Repository Directory does not work at
 all
* [CONTINUUM-1623] - Checkbox not displaying when validation error
 in add Instalaction-Tool form
* [CONTINUUM-1630] - Error attempting to delete project group
* [CONTINUUM-1643] - Perform release page results to a blank page
 after submitted
* [CONTINUUM-1644] - Test failures occur in tagged sources
* [CONTINUUM-1646] - Empty recipient is allowed in mail notifier
* [CONTINUUM-1647] - Incorrect alt and title text for
 releaseproject_disabled.gif
* [CONTINUUM-1649] - Move Build Definition Template guide to
 Administrator's Guides
* [CONTINUUM-1651] - Unable to delete user-created build definitions
* [CONTINUUM-1659] - project admin cannot assign project roles to users
* [CONTINUUM-1660] - Download page does not have source archives
* [CONTINUUM-1672] - continuum plugin doesn't fails to add maven
 two projects
* [CONTINUUM-1676] - deleting a project or group should cancel any
 current or scheduled builds, and prevent any from being queued
* [CONTINUUM-1679] - Adding Null values for Project's Build
 Definition directs to a blank page
* [CONTINUUM-1688] - Maximum length for name column in object
 ChangeFile is too small
* [CONTINUUM-1693] - Continuum fills our server disk with SNAPSHOTs.
* [CONTINUUM-1701] - No field validation when adding Ant and Shell
 projects
* [CONTINUUM-1713] - JDOFatalUserException '.-..column NAME
 that has maximum length of 255. Please correct your data!'
* [CONTINUUM-1715] - no response when adding a project
* [CONTINUUM-1725] - Using the Cancel Button without an selected
 project will produce NPE
* [CONTINUUM-1734] - Loop in getProjects methode
* [CONTINUUM-1738] - Add schedule page doesn't use its properties file
* [CONTINUUM-1739] - Import of Maven2 project fails if 2.0.9
 feature depMgm. scopeimport used
* [CONTINUUM-1742] - Duplicate installations (environment
 variables) in Profile are accepted
* [CONTINUUM-1746] - Duplicate Profile  names are accepted
* [CONTINUUM-1748] - 

Re: Maven 'deploy' relationship to large-scale software deployment

2008-08-06 Thread Ken Liu
The best practice is to externalize all environment specific configuration.
A single ear should be deployable to any environment without rebuilding.
This is not just to simplify configuration, it is also beneficial from a QA
standpoint because a binary can be moved between different environments
dev-qa-uat-prod without the possibility of introducing defects as a
result of a bad build.

In my workplace, we build a single EAR that can be deployed in one of many
(half dozen) environments, and then the specific configurations for each
environment are managed/packaged separately using assemblies. At deployment
time, these assemblies are unzipped (we don't automatically deploy apps for
various reasons), and the EAR is dropped into the app server deploy
directory.

We do have the problem you mentioned of copy/paste between configuration
files. It's not enough of a problem for us to warrant a more sophisticated
approach, but if we did need it, we would probably use filtering or some
similar mechanism to generate the configuration/property files from a
template.

Ken

On 7/31/08, EJ Ciramella [EMAIL PROTECTED] wrote:

 This only hints at solutions to #2 below:

  2 - How does one deploy said generated application zip/tar file?
  There's nothing I can see supplied in any plugin to support large
 scale
  deployments (say, six app servers, four web servers, a db server, a
  utils server and another half dozen or so third party servers).  We've
  been using ant and an internally written shell script.

 Yes, we drop maven once the build is headed anywhere other than the
 local machine - but even within this developer environment, how do you
 share properties/configuration/etc across different applications without
 massive copy/paste duplication?  How does anyone build to support
 multiple environments?  Are you really rebuilding the ear with a
 different configuration?  Is your ear over say, 20 mb?

 Are people just NOT building this level of complexity within maven?

 Even if the configuration/profiles was pushed out into a corporate pom
 (something outside of the general project structure), if/when that
 changed, you'd have a million poms to update to point them to a new
 parent version.

 -Original Message-
 From: Brett Porter [mailto:[EMAIL PROTECTED]
 Sent: Thursday, July 31, 2008 4:48 PM
 To: Maven Users List
 Subject: Re: Maven 'deploy' relationship to large-scale software
 deployment

 I think you'll find that Maven itself stops at the repository. So the
 best thing to do is to use tools that can take artifacts from the
 repository and deploy them.

 There are lots of other solutions around for doing this sort of thing
 beyond that point and they specialise in handling the new set of
 problems it brings. I've generally found those doing the deployment
 are very separate from the rest of the development team and often have
 their own chosen set of tooling.

 You could use Maven itself to do this - though I'm not aware of any
 plugins that focus on this. While Cargo is generally used for test
 setups, it could serve this purpose as well, but it's mostly a space
 for a new piece of work.

 Cheers,
 Brett

 2008/8/1 EJ Ciramella [EMAIL PROTECTED]:
  No, I don't understand how to do it either.  I just stepped out of a
  meeting where we were discussing how we can deploy the same set of
  applications (which _some_ share properties) across 10 - 15 different
  environments.  Some environments have different configurations, some
 are
  carbon copies.
 
  There doesn't seem to be any maven solution to either/all of these
  problems:
 
  1 - Where does a property go (say db connection string) that's shared
  between different applications such that there isn't duplication?  No
  one wants to have to search/replace values in various profiles.xml or
  pom.xml files (I don't mind, but others in the organization have
  objected).  Here, since there are so many applications pointed at the
  same db, that could be a dozen or so files that have the same db
 string.
 
  2 - How does one deploy said generated application zip/tar file?
  There's nothing I can see supplied in any plugin to support large
 scale
  deployments (say, six app servers, four web servers, a db server, a
  utils server and another half dozen or so third party servers).  We've
  been using ant and a internally written shell script.
 
  3 - How do people configure these things?  I've heard every answer
 from
  we generate a zipped/tarred up application file for every
 environment
  to we use installshield and don't have to worry and everything in
  between.  We have in one environment alone, 6 jboss servers for ONE
  application.  That ear that gets deployed there (and all it's
 supporting
  files) even compressed in a zip takes close to 200 mb.  I'm not about
 to
  generate 1200 mb worth of ear files with each build (sometimes there's
  three or more built in a single day).
 
  I feel like either there are different terms to describe these things
 or

Re: Maven 'deploy' relationship to large-scale software deployment

2008-08-06 Thread Ken Liu
Forgot to mention -

I have a coworker who came from a company where they had a very complex
deployment with clusters and many different applications sharing
configuration. There they had a central configuration server where all the
applications programmatically could look up configuration parameters.
Something like this takes a lot of commitment across development teams, but
maybe something like this would work for you.


On 8/6/08, Ken Liu [EMAIL PROTECTED] wrote:

 The best practice is to externalize all environment specific configuration.
 A single ear should be deployable to any environment without rebuilding.
 This is not just to simplify configuration, it is also beneficial from a QA
 standpoint because a binary can be moved between different environments
 dev-qa-uat-prod without the possibility of introducing defects as a
 result of a bad build.

 In my workplace, we build a single EAR that can be deployed in one of many
 (half dozen) environments, and then the specific configurations for each
 environment are managed/packaged separately using assemblies. At deployment
 time, these assemblies are unzipped (we don't automatically deploy apps for
 various reasons), and the EAR is dropped into the app server deploy
 directory.

 We do have the problem you mentioned of copy/paste between configuration
 files. It's not enough of a problem for us to warrant a more sophisticated
 approach, but if we did need it, we would probably use filtering or some
 similar mechanism to generate the configuration/property files from a
 template.

 Ken

  On 7/31/08, EJ Ciramella [EMAIL PROTECTED] wrote:

 This only hints at solutions to #2 below:

  2 - How does one deploy said generated application zip/tar file?
  There's nothing I can see supplied in any plugin to support large
 scale
  deployments (say, six app servers, four web servers, a db server, a
  utils server and another half dozen or so third party servers).  We've
  been using ant and an internally written shell script.

 Yes, we drop maven once the build is headed anywhere other than the
 local machine - but even within this developer environment, how do you
 share properties/configuration/etc across different applications without
 massive copy/paste duplication?  How does anyone build to support
 multiple environments?  Are you really rebuilding the ear with a
 different configuration?  Is your ear over say, 20 mb?

 Are people just NOT building this level of complexity within maven?

 Even if the configuration/profiles was pushed out into a corporate pom
 (something outside of the general project structure), if/when that
 changed, you'd have a million poms to update to point them to a new
 parent version.

 -Original Message-
 From: Brett Porter [mailto:[EMAIL PROTECTED]
 Sent: Thursday, July 31, 2008 4:48 PM
 To: Maven Users List
 Subject: Re: Maven 'deploy' relationship to large-scale software
 deployment

 I think you'll find that Maven itself stops at the repository. So the
 best thing to do is to use tools that can take artifacts from the
 repository and deploy them.

 There are lots of other solutions around for doing this sort of thing
 beyond that point and they specialise in handling the new set of
 problems it brings. I've generally found those doing the deployment
 are very separate from the rest of the development team and often have
 their own chosen set of tooling.

 You could use Maven itself to do this - though I'm not aware of any
 plugins that focus on this. While Cargo is generally used for test
 setups, it could serve this purpose as well, but it's mostly a space
 for a new piece of work.

 Cheers,
 Brett

 2008/8/1 EJ Ciramella [EMAIL PROTECTED]:
  No, I don't understand how to do it either.  I just stepped out of a
  meeting where we were discussing how we can deploy the same set of
  applications (which _some_ share properties) across 10 - 15 different
  environments.  Some environments have different configurations, some
 are
  carbon copies.
 
  There doesn't seem to be any maven solution to either/all of these
  problems:
 
  1 - Where does a property go (say db connection string) that's shared
  between different applications such that there isn't duplication?  No
  one wants to have to search/replace values in various profiles.xml or
  pom.xml files (I don't mind, but others in the organization have
  objected).  Here, since there are so many applications pointed at the
  same db, that could be a dozen or so files that have the same db
 string.
 
  2 - How does one deploy said generated application zip/tar file?
  There's nothing I can see supplied in any plugin to support large
 scale
  deployments (say, six app servers, four web servers, a db server, a
  utils server and another half dozen or so third party servers).  We've
  been using ant and a internally written shell script.
 
  3 - How do people configure these things?  I've heard every answer
 from
  we generate a zipped/tarred up application file for every

generate bat/cmd with classpath?

2008-07-07 Thread Ken Liu
Hi all -

Is there any easy way to have maven generate a cmd or bat file with the java
command line populated with the classpath from the maven dependencies?

Ken


Re: How to better manage cascading releases

2008-06-13 Thread Ken Liu
This is a great question...I have wondered the same thing myself.

I am working on a complex project that involves simultaneously releasing 6
ears.  The whole build consists of 25+ maven projects (not counting
modules) that are built and released together (relax, many of them are
purely assemblies).  The dependency tree between all of these projects is at
least 5 deep.

The way we have solved the problem is to always declare SNAPSHOT
dependencies (for internal dependencies). At release time, there is a
script that tags the trunk, checks out the tag, updates the pom versions,
updates the scm path, updates the dependency versions (changes the SNAPSHOTs
to released numbers), then commits the changes and builds the release. This
is basically the same as what the release-plugin does. The script does this
once for each project in the correct dependency order.

The script is driven by a yml file that is the metadata for the super
build - it contains the list of projects, svn locations, and target version
numbers, and dependencies between projects.  The script is around 200 lines
of ruby code.

The script is run manually, which is ok since we do this official release
only once every few weeks. (Each individual project is built in Continuum
during normal development.)

I justified the cost/time of developing these scripts to my manager by
explaining that it took me around two days in the beginning to do the entire
build, now it takes about two hours (some artifacts take a long time to run
the unit tests) from start to finish.  I spent a little bit of time before
each release working on the script so now there is a net cost savings :)

AFAIK, there is no easy way to do this.  I suspect many organizations don't
do anything so complex and others do not attempt to _simultaneously_ release
so many projects, so the cost of releasing is spread out, and is not
noticed.

Ken


On 5/31/08, Stephen Connolly [EMAIL PROTECTED] wrote:

 We have a four uber project set of releases.

 We use scripts to check out the latest released pom.xml for each from svn,
 pull out the version number, step back if it's a -SNAPSHOT, update our
 module's dependencies to this version, run maven with the integration tests
 and check in the updated pom.xml if the tests pass before doing mvn
 release:prepare release:perform -B

 This is set up as a number of release jobs in Hudson.

 Just kick off a build and you get the release when it's all done, or an
 email telling you what broke...

 I would like to do a bit more work and make it keep trying less new
 versions
 of the dependency until it falls back to the one it started with... but
 that's getting too fancy... the script is currently only 100 or so lines
 long

 -Stephen

 On Fri, May 30, 2008 at 9:12 AM, Bracewell, Robert [EMAIL PROTECTED]
 wrote:

  In our organization it depends on the project but I have projects that
  release twice a week internally. Other groups or projects that are
  reliant on such artifacts can then decide as and when they want to
  depend on the new artifacts that were deployed.
 
  -Original Message-
  From: Geoffrey Wiseman [mailto:[EMAIL PROTECTED]
  Sent: 30 May 2008 03:35
  To: Maven Users List
  Subject: Re: How to better manage cascading releases
 
  On Thu, May 29, 2008 at 6:39 PM, Michael McCallum [EMAIL PROTECTED]
  wrote:
 
   release early release often... we don't use snapshot dependencies and
   release
   artifacts early. So if you are working on one of the 13 dependent
  libraries
   as soon as you - the dev - is happy the change is ready for use then
  you
   release it. why leave it as a snapshot? If the change would break
  anything
   useing it we bump the major version up so its not pulled in until
   downstream
   users are ready.
  
   if you use version ranges and manage codelines by major version then
  you
   can
   easily have the trunk of a project being actively developed and
  released
   without pulling it into a deliverable.
 
 
  Hmm, interesting perspective.
 
  I still find it takes an hour or two to pull off a release, between the
  dry-run, the actual prepare and the perform -- do you find that cost
  goes
  down if you release a lot, or have tricks for reducing the cost of
  releasing?
 
   - Geoffrey
  --
  Geoffrey Wiseman
 
  -
  To unsubscribe, e-mail: [EMAIL PROTECTED]
  For additional commands, e-mail: [EMAIL PROTECTED]
 
 



read scm connection url using svn info?

2008-04-07 Thread Ken Liu
Hi all -

Is there any way that the scm connection URL can automatically be read using
svn info instead of putting it into the pom?

For example, instead of writing:

scm
connectionscm:svn:http://my.svn.server/trunk/connection
/scm

You could just write something like:
 scm
connectionscm:svn:auto/connection
/scm

and then the maven svn impl could just execute svn info and extract the
URL string from the output.  This would be very handy because you would
never have to worry about whether the scm url is correct in the POM, in case
the POM file is moved or copied/tagged in the repo.

Ken


Re: scm plugin

2008-03-11 Thread Ken Liu
Maven scm does not implement the svn client software, it calls the
command-line svn executable instead. You will need to install the command
line client available at http://subversion.tigris.org, and have it available
in the path.

Ken

On 3/11/08, [EMAIL PROTECTED] [EMAIL PROTECTED] wrote:

  That error means that svn is not installed on your home machine.

 Of course, svn isn't installed on my pc -
 I just got a svn client - tortoise ( http://tortoisesvn.tigris.org/)
 to connect to a svn server. Isn't that what scm is used for?! Why would
 anyone install a svn server on a developer pc?!

 Thanks in advance,

 Stefanie
 --
 GMX startet ShortView.de. Hier findest Du Leute mit Deinen Interessen!
 Jetzt dabei sein: http://www.shortview.de/[EMAIL PROTECTED]

 -
 To unsubscribe, e-mail: [EMAIL PROTECTED]
 For additional commands, e-mail: [EMAIL PROTECTED]




maven2 jira plugin?

2008-03-11 Thread Ken Liu
Hi all -

I am looking for a plugin that can query a jira repository and produce a
report.  I found an existing plugin, but that appears to be for maven 1.
Anyone know of a plugin that is compatible with maven2?

Ken


Re: [POLL] Why are you not able to use the most recent maven release?

2008-03-10 Thread Ken Liu
I'm sort of in the same boat, but for different reasons. The maven version
is considered to be part of the configuration for each project, so projects
are tied to whatever version of Maven was used at release time.  Upgrades
are considered to be changes to the build environment, which are out of
scope in certain projects (small patch releases, for example). We play it
safe in these cases because changes to Maven versions can cause
build-related regressions.

We also use Continuum as our CI environment, and Continuum is tied to
whatever Maven version the Continuum unix account uses, which means that we
are forced to use the same Maven version for all projects in
Continuum. Upgrading the maven that Continuum uses forces all projects to
upgrade Maven versions.  Until I can figure out a way to get Continuum to
run with different Maven versions, we're stuck with the current one.  Either
that, or I get the entire development team to upgrade simultaneously to a
new Maven version.  (Which might not really be such a big deal, IMO.)

We're currently stuck on 2.0.4 but are starting to plan to upgrade to 2.0.9.
2.1 is not even on the radar yet.

Ken

On 3/7/08, EJ Ciramella [EMAIL PROTECTED] wrote:

 We're currently stuck on 2.0.5 - the problem is getting an entire
 organization to upgrade.  Aside from the, it works better response,
 typically, there needs to be a financial reason explaining why we are
 asking everyone to stop what they are doing and upgrade.



 -Original Message-
 From: Brian E. Fox [mailto:[EMAIL PROTECTED]
 Sent: Friday, March 07, 2008 4:45 PM
 To: Maven Users List
 Subject: [POLL] Why are you not able to use the most recent maven
 release?

 I get the sense that lots of people are using older versions of Maven
 due to various regressions.  As we get closer to 2.1 alpha, we need to
 ensure that we identify the regressions across the 2.0 line so that we
 can make sure they are fixed in 2.1 and so that users can upgrade to a
 recent 2.0.x before trying out 2.1.



 If this is the case for you, please reply and state the version you're
 using and why (preferably referring to a Jira). We will use this
 information to prioritize issues for 2.0.10 and beyond.



 Thanks.






 -
 To unsubscribe, e-mail: [EMAIL PROTECTED]
 For additional commands, e-mail: [EMAIL PROTECTED]




Re: SNAPSHOT checking plugin?

2008-02-29 Thread Ken Liu
This looks great, but I would prefer not to add additional configuration to
my POMs just to do a check for SNAPSHOT versions.  Is there any way to
achieve this without adding stuff to POMs? (I would have to add
configuration to all of my POMs, of which there are many).

Thanks,

Ken


On 2/28/08, Jason Chaffee [EMAIL PROTECTED] wrote:

 maven-enforcer-plugin

 you might have to build the latest from source to get all the documented
 functionality as the current released one doesn't support everything on
 the Web site.

 -Original Message-
 From: Ken Liu [mailto:[EMAIL PROTECTED]
 Sent: Thursday, February 28, 2008 3:06 PM
 To: Maven Users List
 Subject: SNAPSHOT checking plugin?

 Hi all -

 I really like that the release-plugin checks the project for any
 SNAPSHOT
 dependencies, but I am not so crazy about the release-plugin itself.  Is
 there any plugin available that will only do the check for SNAPSHOT
 dependencies, or is there any other way to do this?

 Thanks,

 Ken

 -
 To unsubscribe, e-mail: [EMAIL PROTECTED]
 For additional commands, e-mail: [EMAIL PROTECTED]




Re: SNAPSHOT checking plugin?

2008-02-29 Thread Ken Liu
Ok. The problem is that I would like to do the check for the SNAPSHOT
versions only at release-time, just like the release plugin does.  Normally,
the developers depend on SNAPSHOT dependencies during day to day
development, but at release time, we update all the dependencies to depend
on specific versions.

Is there a way I can use profiles to add the configuration for the enforcer
so that it only gets run when a special release profile is activated?

Ken


On 2/29/08, Brian E. Fox [EMAIL PROTECTED] wrote:

 This is the only way to do it. You should have a common pom that all
 your stuff shares and you would just put the config in that one place.

 -Original Message-
 From: Ken Liu [mailto:[EMAIL PROTECTED]
 Sent: Friday, February 29, 2008 11:19 AM
 To: Maven Users List
 Subject: Re: SNAPSHOT checking plugin?

 This looks great, but I would prefer not to add additional configuration
 to
 my POMs just to do a check for SNAPSHOT versions.  Is there any way to
 achieve this without adding stuff to POMs? (I would have to add
 configuration to all of my POMs, of which there are many).

 Thanks,

 Ken


 On 2/28/08, Jason Chaffee [EMAIL PROTECTED] wrote:
 
  maven-enforcer-plugin
 
  you might have to build the latest from source to get all the
 documented
  functionality as the current released one doesn't support everything
 on
  the Web site.
 
  -Original Message-
  From: Ken Liu [mailto:[EMAIL PROTECTED]
  Sent: Thursday, February 28, 2008 3:06 PM
  To: Maven Users List
  Subject: SNAPSHOT checking plugin?
 
  Hi all -
 
  I really like that the release-plugin checks the project for any
  SNAPSHOT
  dependencies, but I am not so crazy about the release-plugin itself.
 Is
  there any plugin available that will only do the check for SNAPSHOT
  dependencies, or is there any other way to do this?
 
  Thanks,
 
  Ken
 
  -
  To unsubscribe, e-mail: [EMAIL PROTECTED]
  For additional commands, e-mail: [EMAIL PROTECTED]
 
 

 -
 To unsubscribe, e-mail: [EMAIL PROTECTED]
 For additional commands, e-mail: [EMAIL PROTECTED]




SNAPSHOT checking plugin?

2008-02-28 Thread Ken Liu
Hi all -

I really like that the release-plugin checks the project for any SNAPSHOT
dependencies, but I am not so crazy about the release-plugin itself.  Is
there any plugin available that will only do the check for SNAPSHOT
dependencies, or is there any other way to do this?

Thanks,

Ken


Re: Surefire 2.4.1 classpath order

2008-02-18 Thread Ken Liu
Dan -

Do you know if that bug was introduced in 2.0.7 (or some other earlier
release)?  My team is using 2.0.4 and we encountered a problem with the
classpath ordering recently that caused builds to that were previously
working to suddenly start failing.

Thanks,

Ken

On 2/15/08, Dan Fabulich [EMAIL PROTECTED] wrote:

 Ben Lidgey wrote:

  We are running tests using Surefire 2.4.1 and Maven 2.0.8.
 [...]

  Looking at the debug output shows:
 
  [DEBUG] Test Classpath :
  [DEBUG]   C:\Documents and
 Settings\benl\.m2\repository\junit\junit\4.2\junit-4.2.jar
 
  [more jars]
 
  [DEBUG]   c:\Development\Projects\MyProject\target\classes
  [DEBUG]   c:\Development\Projects\MyProject\target\test-classes
 
  Which would explain it. Is there anyway to get the test-classes before
  classes in the classpath order? Setting childDelegation to true doesn't.

 I'm not 100% certain you're using the software you think you're using;
 here's some debugging/analysis tips.

 Take a look at http://jira.codehaus.org/browse/MNG-3118.  That bug was
 fixed in Maven 2.0.8 and called out in the release announcement as a
 backwards compatibility risk:

 http://www.mail-archive.com/[EMAIL PROTECTED]/msg00432.html

 As noted in MNG-3118, Surefire 2.3 had a bizarre classpath ordering bug
 that made the test classpath appear to be correct (test-classes first)
 under Maven 2.0.7 for some users with large classpaths:

 http://jira.codehaus.org/browse/SUREFIRE-61

 SUREFIRE-61 was fixed in Surefire 2.3.1.  Notably, it would make the Test
 Classpath output in -X look correct, while secretly under the hood it
 would munge the classpath incorrectly!

 As a result, for at least one project here at my work, we've seen:

 Maven 2.0.7 + Surefire 2.3: test-classes before classes
 Maven 2.0.8 + Surefire 2.3: classes before test-classes
 Maven 2.0.7 + Surefire 2.3.1 or higher: classes before test-classes
 Maven 2.0.8 + Surefire 2.3.1 or higher: test-classes before classes

 Benjamin checked in a classpath ordering test in the Surefire trunk that
 we now run with every release.  It's currently passing for me with
 Surefire 2.4.1 (and 2.4.2-SNAPSHOT) and Maven 2.0.8, and failing with
 Maven 2.0.7.

 Finally, note that your real classpath is being output in your
 target/surefire-reports/*.xml files as the surefire.test.classpath
 property; that may be useful for debugging purposes.

 -Dan

 -
 To unsubscribe, e-mail: [EMAIL PROTECTED]
 For additional commands, e-mail: [EMAIL PROTECTED]




Re: Dependency Order, src/test/resources not overriding src/main/resources

2008-01-29 Thread Ken Liu
I experienced the same problem with Maven 2.0.4 and Surefire 2.3 and 2.4.  I
solved the problem by reverting the Surefire plugin version back to 2.2.

I believe the latest version of Maven 2.0.8 and Surefire 2.3 and 2.4 do not
have this problem.

Ken


On 1/29/08, Andrew Seales [EMAIL PROTECTED] wrote:

 Hi,

 I recently updated maven using mvn -U command and since yesterday
 projects which have properties files of the same name in
 src/test/resources and src/main/resources now no longer have the version
 in src/test/resources taking precedence over the ones in
 src/main/resources when running mvn test(for example database properties
 files).

 Is this an intentional change or is there a bug in a recent plugin
 version?

 Thank you,
 --
 Andrew Seales

 EDINA   tel: +44 (0) 131 650 3022
 Edinburgh Universityfax: +44 (0) 131 650 3308
 Causewayside House  url: http://edina.ac.uk
 160 Causewaysideemail: [EMAIL PROTECTED]
 Edinburgh EH9 1PR

 -
 To unsubscribe, e-mail: [EMAIL PROTECTED]
 For additional commands, e-mail: [EMAIL PROTECTED]




how to manually change a jar from SNAPSHOT to release?

2008-01-22 Thread Ken Liu
Hi all -

I am getting close to releasing a project and am trying to nail down all the
SNAPSHOT dependencies. I have one plugin (jboss-sar), which was never
released, and only has a 2.0-SNAPSHOT version available.  I want to take
this jar and assign a release number to it to be installed in our internal
maven repo.

Is there an official way to do this?  I have been manually doing the
following:
1) in the jar, editing plugin.xml and replacing the version 2.0-SNAPSHOT
with 2.0-MINE
2) in the jar, editing pom.properties and changing the property 
2.0-SNAPSHOT with 2.0-MINE
3) in the jar, editing pom.xml and replacing the version 2.0-SNAPSHOT with
2.0-MINE
4) renaming the jar from jboss-sar-maven-plugin-2.0-SNAPSHOT.jar to 
jboss-sar-maven-plugin-2.0-MINE.jar
5) using mvn install:install-file to add the jar to my internal repository

Is this sufficient?  Did I miss any steps?  Is there an easier way to do
this?


Re: how to manually change a jar from SNAPSHOT to release?

2008-01-22 Thread Ken Liu
Hi Stephen -

Thanks for your reply. Those euro-cents are worth a a lot more than my $.02.

I'm leaning toward option #1.

To clarify, I wasn't planning on rebuilding the jar from the source, just
taking the SNAPSHOT jar from the public repo.  In fact, I don't intend to
ever have to do this again because the particular plugin is no longer under
development (there was never an official, non SNAPSHOT release).  But point
taken, if we were using a different SNAPSHOT plugin, then we might want to
version a newer SNAPSHOT.  I plan on using the version 2.0-mycompany-1.

Are the steps that I described sufficient for changing the version number in
the jar, or is it really necessary to build from the source?  I would rather
not spend time/effort rebuilding something from the source when the artifact
is already being used.

Ken

On 1/22/08, Stephen Connolly [EMAIL PROTECTED] wrote:

 There are two ways:

 1. Give it a new version number (e.g. 2.0-yourcompany-1) because you may
 want to re-build it if/WHEN you find issues with your build, and if you
 don't attach a build/version to the version number you'll be in trouble.
 Also you should prefix the build/version with yourcompany so people know
 it's you as what did it.

 2. Alternatively, change the groupId to com.yourcompany.yourproduct... now
 you can have any version number you like.  For that kind of change I would
 strongly recommend importing the source code into your SCM, as in reality
 this is a fork

 For both 1  2 I would ensure that you have a snapshot of the source code
 in
 SCM, but with option 2, you really will need that snapshot.  Also #2 is
 probably better suited to when you need to patch the source heavily in
 order
 to get it to build, whereas #1 is for when they just have not pushed a
 release as recently as you'd like.

 Just my €0.02

 On Jan 22, 2008 7:54 PM, Ken Liu [EMAIL PROTECTED] wrote:

  Hi all -
 
  I am getting close to releasing a project and am trying to nail down all
  the
  SNAPSHOT dependencies. I have one plugin (jboss-sar), which was never
  released, and only has a 2.0-SNAPSHOT version available.  I want to take
  this jar and assign a release number to it to be installed in our
 internal
  maven repo.
 
  Is there an official way to do this?  I have been manually doing the
  following:
  1) in the jar, editing plugin.xml and replacing the version 
 2.0-SNAPSHOT
  with 2.0-MINE
  2) in the jar, editing pom.properties and changing the property 
  2.0-SNAPSHOT with 2.0-MINE
  3) in the jar, editing pom.xml and replacing the version 2.0-SNAPSHOT
  with
  2.0-MINE
  4) renaming the jar from jboss-sar-maven-plugin-2.0-SNAPSHOT.jar to 
  jboss-sar-maven-plugin-2.0-MINE.jar
  5) using mvn install:install-file to add the jar to my internal
  repository
 
  Is this sufficient?  Did I miss any steps?  Is there an easier way to do
  this?
 



Re: Pre-release Testing Best Practices?

2007-12-17 Thread Ken Liu
Eric,

I agree with this procedure. I would not recommend handing over a SNAPSHOT
build to a QA group as a release candidate.  It is safer to build off of a
branch and treat that branch as a release candidate if there is
ongoing development work in the trunk. If developers are putting
changes into the trunk at the same time that QA is testing your build, then
the trunk is considered unstable and you could potentially introduce bad
code into your build at any time. This is fine for a snapshot or CI build,
but it's not something you would want to risk for a set of code that has
already gone through a QA process.

Ken


On 12/13/07, Kalle Korhonen [EMAIL PROTECTED] wrote:

 In your situation, whenever you think you are ready for a release, I'd
 just
 run release:prepare to create the tag, but not run release:perform
 immediately. Then check out the tag, and run your manual regression etc.
 testing suites against it. If minor things - like configuration or
 versions
 are wrong, fix directly in the tag, otherwise just abandon the tag and
 never
 release that version, fix the build and and release:prepare a new one -
 you
 got unlimited number of versions at your disposal. Once you are confident
 the tag's good, only then release:perform or just deploy from the tag.
 Basically you always consider a tag a normally versioned release candidate
 until you publish it into your distribution repository. This is what we do
 in one projects and generally works well. After all, this is why the
 release
 is a two-step process.

 Kalle


 On 12/13/07, Eric Minick [EMAIL PROTECTED] wrote:
 
  Thanks Marco,
 
  I also tend to agree here as well and I think this would be a
 no-brainier
  if
  I was going to production quarterly. This particular project has minor
  updates going into production every week or three. That's border-line
  insane, but that matches the business needs. I've been at a number of
  organizations that work the same way.
 
  My concern is that branch explosion could be difficult to manage from a
 CI
  perspective as well as for developers.
 
  I again find myself asking for best practices without giving all the
  details. My apologies. Best practices always change a bit as you face
  different problems.
 
  -- Eric
 
  On 12/13/07, Beelen, M. - SPLXL [EMAIL PROTECTED] wrote:
  
   Eric,
  
   When I read your email I think it's more an issue for source code
   management and versioning, then that it should be for maven.
  
   If you start the process of releasing a module, you could create a
   branch for that version and then release some beta or milestones (M1,
   M2, M3, ., M10) from that branch and send it to QA. If QA approves
 a
   certain milestone, you could check it out and adjusted the
   version-number to remove the milestone identifier and release the
 actual
   version.
  
   Changes to mainline code should be performed on the trunk so they
 won't
   get in the way of you release and QA proces. Upon your release, you
   should merge the changes from the branch to the trunk and continue to
   work on the next release.
  
   With kind regards,
   Marco
  
  
  
  
  
  
   -Original Message-
   From: Eric Minick [mailto:[EMAIL PROTECTED]
   Sent: Wednesday, December 12, 2007 11:25 PM
   To: users@maven.apache.org
   Subject: Pre-release Testing Best Practices?
  
   I'm looking at doing some releases using the maven release plugin. Our
   environment is a set of pretty typical in house development projects
 for
   some web-apps. So we have things like dev, qa and production
   environments for deployment and frequent releases.
  
   We don't want to cut a release before doing QA on it. So an ideal
   scenario is to put a snapshot build into QA, and get it approved. Once
   approved, we would want to release that code, verify that dependency
   changes didn't break things with regression tests, then move on to
   staging and production.
  
   A natural concern here is that there are likely more changes to the
   mainline code base that come in during testing and we would not want
 to
   release those. Getting the code that went into the tested build out of
   source control at release time is not a problem though.
  
   I have two questions:
  
   1) Are there common \ recommended strategies for dealing with this
 type
   of scenerio?
   2) If I just pull the old code out and run a release, is the SVN label
   (copy) command a local copy (which would only include the files in my
   release space) or a remote copy (which would include my newly checked
 in
   pom as well as any changes committed since we went to QA)?
  
   Thanks,
  
   Eric
  
   -
   To unsubscribe, e-mail: [EMAIL PROTECTED]
   For additional commands, e-mail: [EMAIL PROTECTED]
  
   **
   For information, services and offers, please visit our web site:
   http://www.klm.com.