RE: Version Numbers with Scrum
We are doing something similar. I am guessing that you are putting the various sprint teams on separate branches and merging them in when you need to create a combined release. Or are you actually producing alternative versions of you product? If the former, then the first blush response might be to use classifiers but that did not work for us because we have several artifacts in each component and are already using classifiers for other purposes. Classifiers also do not allow for the isolation of POM changes. So we decided to use a versioning scheme where each branch had their own moniker added to the version number. Our project is currently at 4.12.0-SNAPSHOT. I am working on a project with the initials tc so my branch is on 4.12.0-tc-SNAPSHOT. When we merge the branches together they become 4.12.0-SNAPSHOT and then we release it as 4.12.0. This allows the development and QA for each project to proceed independently. When we release, we merge everything back to the trunk, deploy everything to an integration environment and smoke test the applications. Then we move the code to a nearly production like environment for final QA. I do not like the idea of using numbers to represent concepts. It makes the version numbers hard to understand and there is nothing in Maven that says your versions have to contain only numbers. -Original Message- From: kroe [mailto:[EMAIL PROTECTED] Sent: Wed 8/27/2008 11:02 AM To: users@maven.apache.org Subject: Version Numbers with Scrum We have recently switched to the scrum development process, and are forced to rethink our maven versioning scheme. There will be multiple scrum teams working with the same code-base. Each team will aim to have a release each sprint, but occasionally a release will be planned for one sprint but pushed back to the next. Can anyone reccomend a maven versioning scheme that fits the scrum development process well? The first scheme that comes to mind is Development Group Identifier.Sprint Number.Candidate Number. Development Group Identifier: Identifies which scrum team owns the version. Sprint number: Specifies which sprint the code is intended to be released in. This may change if a release gets postponed, for instance a project may be developed as 1.3.0-SNAPSHOT and end up being released in sprint 4 so the release version would be 1.4.0. Candidate number: Each release to QA has a distinct candidate number. If QA rejects the candidate then development works on the next candidate (incrementing number), and releases this candidate to QA when it is ready. This will give QA a permanent version number for each artifact they perform a test cycle on. Thanks for the input -- View this message in context: http://www.nabble.com/Version-Numbers-with-Scrum-tp19182915p19182915.html Sent from the Maven - Users mailing list archive at Nabble.com. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
RE: site:deploy URL issue?
Under most versions of SSHD that I have used using scp://bcterwinlinux/~/website/Remora4 would do the trick. The ~ indicates the home directory. Dana H. P'Simer Transaction Platform Development Revenue Guest Technology IHG - InterContinental Hotels Group Dana.P'[EMAIL PROTECTED] -Original Message- From: Marose, Justin (GE EntSol, Security) [mailto:[EMAIL PROTECTED] Sent: Monday, March 24, 2008 12:05 PM To: users@maven.apache.org Subject: site:deploy URL issue? All, When doing a site:deploy to a Linux machine, I get the following error message: [INFO] [site:deploy] scp://bcterwinlinux/website/Remora4 - Session: Opened Executing command: mkdir -p /website/myFolder/. scp://bcterwinlinux/website/myFolder - Session: Disconnecting scp://bcterwinlinux/website/myFolder - Session: Disconnected [INFO] -- -- [ERROR] BUILD ERROR [INFO] -- -- [INFO] Error uploading site Embedded error: Error performing commands for file transfer Exit code: 1 - mkdir: cannot create directory `/website': Permission denied It appears that mkdir attempts to create the folder in the root of the file system (/website/myFolder), to which we obviously don't have access. Three questions: 1. Is there a way to get rid of the leading '/' in the directory name?, or 2. Is there an scp version on RH FC3 that does a chroot? 3. Am I missing something obvious? Thanks in advance, Justin - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
RE: Real World User Issues with Maven
It sounds like you are struggling with some of the same issues I am. I was asked recently to change our build system from ant to maven. In fact, I did not want to use maven. I felt that our needs did not warrant it and thought that Ivy would do well to solve our biggest problem, dependency management. I have since changed my mind and feel that the move to maven was a good one. When someone tells me to go work with a new technology, the first thing I do is learn everything I can about it. So I read Better Builds with Maven and I read the POM and Settings reference on the web site and I started researching plugins and what they do for us. Now, I work on a team of developers that puts out a framework that the client applications use to access business services ( standard stateless session fascade interface implemented in a Spring container using hibernate and some ejb services provided by another group on the back end ), so when I was tasked with switching to maven it was for the framework, not all the client apps. I assumed that other engineers on the client teams ( they were all made aware of the schedule for the transition ) would pick up maven, like I did, and learn it and start asking questions pertaining to how to integrate the framework with their new maven builds ( we use AspectJ to instrument the client code so our integration is a little more complex then a simple dependency. ) What I got was a bunch of questions about how to use maven. I kept having to explain to people what plugins are and how to configure them. How maven inheritance works and how it is unrelated to multi module builds. How properties can be used to trigger profiles. What profiles are good for and what they are not good for. Keep in mind I have only been using this tool for a few months and I would not call myself an expert by any streatch of the imagination. I have also been hearing a lot of compaints. Some from the developers but a bunch from management. Mostly, I think, because the developers are blaming maven for delays. The blame really should be put on the fact that they did not bother to learn maven. So, I think the barrier to adopting maven in my organization is the learning curve and it sounds like the same thing in yours. I also have some comments below: -Original Message- From: Joshua ChaitinPollak [mailto:[EMAIL PROTECTED] We've been living with parallel Ant and Maven build systems for 6 to 9 months now, and most developers are mostly onto Maven, but some still use Ant from time to time. I just polled the rest of my development team for who still uses our ant build system and why. So Maven core developers, Here are some of the reasons I heard: 1) I can't do the equivalent of ant -projecthelp Pointing out that all the common maven commands are documented on the wiki doesn't seem to alleviate this concern, which I admit really puzzles me. Has anyone else encountered this complaint about maven? I think the ability to easy get a list of configured plugins within the pom would be really handy. Until a fix is available from the maven team, maybe maintain a readme.txt in the directory next to each POM. 2) We have lots of ant run-* targets I like to use. My response: Letting them know of the mvnrun script I've checked into our source tree that effectively runs the following: mvn compile exec:java $MVNOPT -Dexec.mainClass=$CLASSNAME - Dexec.args=$ARG This allows the user to type: mvnrun MyMainClass --args The script searches for the MyMainClass.java file, figures out the full package name, and fills in the parameters above. 3) We use the ant tags target to run etags to create emacs TAGS files I pointed these developers to a mktags script that does the same thing. I also added 'mvn generate-sources' to the script first, to make sure the tags catch those generated java files. A plugin that generates this would be great. But a in the meantime you could use the antrun plugin to get the tags generated with each compile. If you add it to a profile, then developers that don't use the tags files can turn it off in their settings.xml. Dana H. P'Simer Dana.P'[EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
SOLVED: TestNG Listeners
Thanks, Wayne. I figured this list would be good because it was clearly in the surefire plugin where the breakdown was. However, I finally figured it out. Turns out that the properties tag in the configuration was not formatted correctly. Is this a maven thing or specific to each plugin that wants to use map's as input for its configuration? Anyway, for future reference the properties tag is formatted with property tags containing name and value tags. So my properties tag below would be : properties property namelistener/name valueorg.uncommons.reportng.JUnitXMLReporter/value /property /properties I had assumed that it followed the format of the properties tag at the top level of the POM and since there is absolutely no documentaion on the internal format of the properties configuration parameter for the surefire plugin I had nothing to disabuse me of this notion. Thanks, Dana H. P'Simer Dana.P'[EMAIL PROTECTED] -Original Message- From: Wayne Fay [mailto:[EMAIL PROTECTED] Sent: Wednesday, March 19, 2008 7:46 PM To: Maven Users List Subject: Re: TestNG Listeners You will probably have better luck with this question on the TestNG list. Everyone there uses TestNG and many use Maven, whereas here, we all use Maven and only some use TestNG. Wayne On 3/19/08, P'Simer, Dana (Matrix) Dana.P'[EMAIL PROTECTED] wrote: Hello, I am attempting to add a listener to the testng run for my project. It is the JUnitXMLReporter by the ReportNG project. I added ReportNG as a dependency in the test scope (they don't have a pom so I created one and deployed it to our private repository ) and added the listener to the properties: plugin groupIdorg.apache.maven.plugins/groupId artifactIdmaven-surefire-plugin/artifactId configuration parallelfalse/parallel argLine-DstartAll=${startAll} -Xmx768m -Xms256m -XX:PermSize=128m -XX:MaxPermSize=384m/argLine excludeGroupsdisabledTests,generateTestFile/excludeGroups excludes exclude**/Test*.java/exclude exclude**/JBossAndPersistentTwoPhaseCacheManagerTestCase.java/exclu de /excludes properties listenerorg.uncommons.reportng.JUnitXMLReporter/listener /properties /configuration /plugin ... dependency groupIdorg.uncommons/groupId artifactIdreportng/artifactId version0.9.4/version scopetest/scope /dependency But when I run the tests I get no output from the JUnitXMLReporter. There are no errors and the tests complete successfully. When I run 'mvn help:describe -Dplugin=surefire' I get: $ mvn help:describe -Dplugin=surefire [INFO] Scanning for projects... [INFO] Searching repository for plugin with prefix: 'help'. [INFO] [INFO] Building commons [INFO]task-segment: [help:describe] (aggregator-style) [INFO] [INFO] [help:describe] [INFO] Plugin: 'org.apache.maven.plugins:maven-surefire-plugin:2.4.2' --- Group Id: org.apache.maven.plugins Artifact Id: maven-surefire-plugin Version: 2.4.2 Goal Prefix: surefire Description: Surefire is a test framework project. [INFO] [INFO] BUILD SUCCESSFUL [INFO] [INFO] Total time: 1 second [INFO] Finished at: Wed Mar 19 13:25:45 EDT 2008 [INFO] Final Memory: 3M/6M [INFO] -- -- BTW, the reason I am doing this is so that I can get a Junit Style report for Hudson to display. If there is a better way to do this, I would appreciate any suggestions. Dana H. P'Simer Dana.P'[EMAIL PROTECTED] - 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] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
RE: surefire and testng integration issues with surefire-2.4.2
I have recently been dealing with a similar issue. I wanted Junit style reports and did not want to use ant run to run the JunitConverter task, so I added reportng as a test scoped dependency and configured a listener. As an interim solution, you could write a listener that does what you want. It could just be in your src/test/java dir as classes there will be available to TestNG when it is running so there is no need to create a separate jar, unless you want to. To configure it you would do something like this: ... plugin artifactIdmaven-surefire-plugin/artifactId ... configuration ... properties namelistener/name valuex.y.z.MyNiftyProgressOutputter/value /properties ... /configuration ... /plugin ... The listener properties's value can be a comma separated list of classes so if you have more than one, you can do that. Good Luck, Dana H. P'Simer Dana.P'[EMAIL PROTECTED] -Original Message- From: Jason Chaffee [mailto:[EMAIL PROTECTED] Sent: Thursday, March 20, 2008 5:32 AM To: Maven Developers List Cc: Maven Users List Subject: surefire and testng integration issues with surefire-2.4.2 I brought this up in the past the maven guys were adamant that they were not able to get per test information to output on the console unless testng changed. I felt all along that this was not correct and I finally had a chance to look into it. Surefire could simply register a listener to get call backs during the execution and could output the results. TestNG does support this functionality with the ITestListener. For example, onStart() will give the start of running a particular class configuration and test methods and onFinish() will be called after all of the configuration and test methods have been run. I took a look at the Surefire code and there is a TestNGReporter that does implement the ITestListener, but it does not implement these methods, they are all no-ops. So, it seems like these could be implemented and then we could see progress output on the console. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
RE: surefire and testng integration issues with surefire-2.4.2
I think part of the disconnect might be in the understanding of what TestNG calls a test. A test, in testNG terminology, is a logical grouping of testMethods within a suite. A single test will span all of the classes in the src/test/java directory unless something is done to break them up. There is no notification based on class unless the test methods for each class are included in separate tests. The default behavior for TestNG in the surefire plugin is to lump all the test methods from all the test classes into one test. That is why only one onStart is called. I have only been using testNG since v5.6 so I don't know when this changed, if it did. However there are ways around this. We use @Test annotations on our test classes with suiteName and testName set so that the methods in each class are segregated into separate tests. Hope this helps clear up any confusion. Thanks, Dana H. P'Simer Dana.P'[EMAIL PROTECTED] -Original Message- From: Dan Fabulich [mailto:[EMAIL PROTECTED] Sent: Thursday, March 20, 2008 1:25 PM To: Maven Developers List Cc: [EMAIL PROTECTED]; Maven Users List Subject: Re: surefire and testng integration issues with surefire-2.4.2 Jason Chaffee wrote: Maybe our disconnect is about callbacks after the class vs. the method. That could be where the misunderstanding is coming from. Sure, that could be. I claim that logging per-method is *way* too much logging. Don't you agree? In JUnit we can log per-class or per-method, but in TestNG we can only log per-method. I think that means we should complain to the TestNG team! :-) What do you think? -Dan - 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]
TestNG Listeners
Hello, I am attempting to add a listener to the testng run for my project. It is the JUnitXMLReporter by the ReportNG project. I added ReportNG as a dependency in the test scope (they don't have a pom so I created one and deployed it to our private repository ) and added the listener to the properties: plugin groupIdorg.apache.maven.plugins/groupId artifactIdmaven-surefire-plugin/artifactId configuration parallelfalse/parallel argLine-DstartAll=${startAll} -Xmx768m -Xms256m -XX:PermSize=128m -XX:MaxPermSize=384m/argLine excludeGroupsdisabledTests,generateTestFile/excludeGroups excludes exclude**/Test*.java/exclude exclude**/JBossAndPersistentTwoPhaseCacheManagerTestCase.java/exclude /excludes properties listenerorg.uncommons.reportng.JUnitXMLReporter/listener /properties /configuration /plugin ... dependency groupIdorg.uncommons/groupId artifactIdreportng/artifactId version0.9.4/version scopetest/scope /dependency But when I run the tests I get no output from the JUnitXMLReporter. There are no errors and the tests complete successfully. When I run 'mvn help:describe -Dplugin=surefire' I get: $ mvn help:describe -Dplugin=surefire [INFO] Scanning for projects... [INFO] Searching repository for plugin with prefix: 'help'. [INFO] [INFO] Building commons [INFO]task-segment: [help:describe] (aggregator-style) [INFO] [INFO] [help:describe] [INFO] Plugin: 'org.apache.maven.plugins:maven-surefire-plugin:2.4.2' --- Group Id: org.apache.maven.plugins Artifact Id: maven-surefire-plugin Version: 2.4.2 Goal Prefix: surefire Description: Surefire is a test framework project. [INFO] [INFO] BUILD SUCCESSFUL [INFO] [INFO] Total time: 1 second [INFO] Finished at: Wed Mar 19 13:25:45 EDT 2008 [INFO] Final Memory: 3M/6M [INFO] BTW, the reason I am doing this is so that I can get a Junit Style report for Hudson to display. If there is a better way to do this, I would appreciate any suggestions. Dana H. P'Simer Dana.P'[EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]