Correct. On the pom where it defines all of the <module>s. in your case, you would specify "production/app/pom.xml" if that¹s where this exists.
Thanks, Roy Lyons Senior Configuration Engineer On 10/16/12 9:14 AM, "Matthew Adams" <matt...@matthewadams.me> wrote: >Stephen, > >It sounds like what you're referring to is what I've been calling the >"root" pom in my example, as opposed to what I've been calling the >"parent" pom. > >The root pom is sitting at the top of the maven project >(production/app relative to the git repo root directory), and >basically only contains the <modules> section. The parent pom is >sitting in production/app/parent-pom, and it's the pom that all of >other modules are inheriting from (via their <parent> sections). > >So you're saying to invoke "mvn release:prepare release:perform" on my >root pom, not my parent pom, right? > >-matthew > >On Tue, Oct 16, 2012 at 2:38 AM, Stephen Connolly ><stephen.alan.conno...@gmail.com> wrote: >> On 15 October 2012 22:24, Matthew Adams <matt...@matthewadams.me> wrote: >> >>> One of the questions in my original post was actually "which pom >>> should you execute 'mvn release:prepare release:perform' on?". I'm >>> guessing, based on nothing else but intuition, that it's the parent >>> pom, not the root pom, so, in my case, >> >> >> It should be the pom that aggregates everything you want to release. IOW >> the aggregation root of all projects that are to be released. That need >>not >> be the parent pom if aggregation does not follow inheritance >> >> >>> I suppose that'd be >>> production/app/parent-pom/pom.xml. However, that SO question was just >>> for poms that aren't at the repo root; my question is a touch more >>> specific than that, what with a parent-pom as a sibling to its >>> children, which is a common use case, IME. >>> >>> Thoughts? >>> >>> On Mon, Oct 15, 2012 at 4:03 PM, Lyons, Roy <roy.ly...@cmegroup.com> >>> wrote: >>> > >>> > The way I am reading this, you need to add it to the pom which you >>>are >>> > invoking maven on. So whichever pom file you are running maven >>>against >>> > for the call to the release plugin (not talking the submodules here, >>>but >>> > the pom closest to the invocation of maven), add this in -- basically >>> > pointing to the relative path (relative to your git repository root) >>>to >>> > the pom you are running maven against. >>> > >>> > >>> > Thanks, >>> > >>> > Roy Lyons >>> > Senior Configuration Engineer >>> > >>> > >>> > On 10/15/12 3:31 PM, "Matthew Adams" <matt...@matthewadams.me> wrote: >>> > >>> >>Thanks, Roy. The answer you pointed me to says "add the following to >>> >>your build/plugins section", but it doesn't tell me **which** pom to >>> >>add to...leaving me confused. Can you clarify for the answerer >>>(since >>> >>I don't have enough repu points to comment on the answer & ask for >>> >>clarification). >>> >> >>> >>On Mon, Oct 15, 2012 at 2:49 PM, Lyons, Roy <roy.ly...@cmegroup.com> >>> >>wrote: >>> >>> I had remembered looking this up and thought I would share my >>>finding >>> >>>with >>> >>> you: >>> >>> >>> >>> >>> >>>http://stackoverflow.com/questions/5558785/maven-release-plugin-git-and- >>>t >>> >>>he >>> >>> -poms-not-at-the-top >>> >>> >>> >>> Basically theres a >>> >>> <configuration> >>> >>> <pomFileName>subdir/pom.xml</pomFileName> >>> >>> </configuration> >>> >>> That you need to define as part of your plugin definition. >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> Thanks, >>> >>> >>> >>> Roy Lyons >>> >>> Senior Configuration Engineer >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> On 10/15/12 1:17 PM, "Matthew Adams" <matt...@matthewadams.me> >>>wrote: >>> >>> >>> >>>>Hi all, >>> >>>> >>> >>>>I'm trying to visualize how to perform a release properly, given >>>that >>> >>>> >>> >>>>* I'm using git with git-flow on a >>> >>>>* multi-module maven project with a >>> >>>>* parent pom module that is located in a sibling directory to the >>> >>>>other modules which are >>> >>>>* located in a directory other than the git repository's root >>> directory. >>> >>>> >>> >>>>The docs for using the maven-release-plugin seem a little sparse >>>when >>> >>>>used with multi-module maven projects like mine. For example, my >>>git >>> >>>>repo's root directory (the one containing the .git directory) has a >>> >>>>subdirectory called "production/app". The multi-module root pom >>>is at >>> >>>>production/app/pom.xml, and looks like this: >>> >>>> >>> >>>><project xmlns="http://maven.apache.org/POM/4.0.0" >>> >>>>xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" >>> >>>> xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 >>> >>>>http://maven.apache.org/maven-v4_0_0.xsd"> >>> >>>> <modelVersion>4.0.0</modelVersion> >>> >>>> <groupId>org.example</groupId> >>> >>>> <artifactId>app-root</artifactId> >>> >>>> <packaging>pom</packaging> >>> >>>> <version>0.2.0.BUILD-SNAPSHOT</version> >>> >>>> <name>Application Multimodule Root POM</name> >>> >>>> >>> >>>> <modules> >>> >>>> <module>parent-pom</module> >>> >>>> <module>test-support</module> >>> >>>> <module>support</module> >>> >>>> <module>domain</module> >>> >>>> <module>dto</module> >>> >>>> <module>service</module> >>> >>>> <module>rest</module> >>> >>>> <module>web</module> >>> >>>> </modules> >>> >>>></project> >>> >>>> >>> >>>>Note that it basically only contains <module> entries, one of >>>which is >>> >>>>the parent-pom module, which is in the directory >>> >>>>production/app/parent-pom (the parent pom is then >>> >>>>production/app/parent-pom/pom.xml) and all of the other modules in >>>the >>> >>>>project, then, declare the relative path to the parent pom to be >>> >>>>"<relativePath>../parent-pom/pom.xml</relativePath>". Now, I'm >>>trying >>> >>>>to use the maven-release-plugin with this project along with >>>git-flow. >>> >>>> I'm planning on using the following settings, which I've seen in >>> >>>>several posts on using it with git-flow: >>> >>>> >>> >>>> <plugin> >>> >>>> >>> >>>><groupId>org.apache.maven.plugins</groupId> >>> >>>> >>> >>>><artifactId>maven-release-plugin</artifactId> >>> >>>> <version>2.3.2</version> >>> >>>> <configuration> >>> >>>> >>> >>>><autoVersionSubmodules>true</autoVersionSubmodules> >>> >>>> >>> >>>><localCheckout>true</localCheckout> >>> >>>> >>><pushChanges>false</pushChanges> >>> >>>> >>> >>>><tagNameFormat>v@{project.version}</tagNameFormat> >>> >>>> </configuration> >>> >>>> </plugin> >>> >>>> >>> >>>>* Into which pom do I put this plugin configuration: the root pom >>> >>>>(production/app/pom.xml) or the parent pom >>> >>>>(production/app/parent-pom/pom.xml)? >>> >>>>* Into which root or parent's section should this <plugin> section >>>be >>> >>>>placed: <build><pluginManagement><plugins> or <build><plugins>? >>> >>>> >>> >>>>Here's my <scm> section (I'm using "xxx" & "yyy" protect the >>>innocent): >>> >>>> >>> >>>> <scm> >>> >>>> >>> >>>><connection>scm:git:g...@github.com:xxx/yyy.git</connection> >>> >>>> >>> >>>><developerConnection>scm:git:g...@github.com: >>> xxx/yyy.git</developerConnec >>> >>>>tion> >>> >>>> <url>https://github.com/xxx/yyy</url> >>> >>>> </scm> >>> >>>> >>> >>>>* How do I tell maven that this maven project is located off of the >>> >>>>repo's root, in production/app? Do I use >>> >>>>"scm:git:g...@github.com:xxx/yyy.git/production/app" or something >>>else? >>> >>>> >>> >>>>* Into which pom do I put the <scm> section: the root pom, the >>>parent >>> >>>>pom, or in each module's pom? If the root pom, do I use >>> >>>>"scm:git:g...@github.com:xxx/yyy.git/production/app"? If the parent >>> >>>>pom, do I use >>> >>>>"scm:git:g...@github.com:xxx/yyy.git/production/app/parent-pom"? >>> >>>> If in each module's pom, do I use >>> >>>>"scm:git:g...@github.com:xxx/yyy.git/production/app/module_name"? >>> >>>> >>> >>>>* Into which pom to I put the <distributionManagement> section: >>>the >>> >>>>root pom, the parent pom, or each module's pom? >>> >>>> >>> >>>>* After I issue my "git flow release start 0.2.0.RELEASE" in my dev >>> >>>>branch's production/app directory, in which directory (after >>>switching >>> >>>>to the release/0.2.0.RELEASE branch, of course) do I issue the >>>command >>> >>>>"mvn release:prepare release:perform": production/app or >>> >>>>production/app/parent-pom? >>> >>>> >>> >>>>-- >>> >>>>mailto:matt...@matthewadams.me >>> >>>>skype:matthewadams12 >>> >>>>googletalk:matt...@matthewadams.me >>> >>>>http://matthewadams.me >>> >>>>http://www.linkedin.com/in/matthewadams >>> >>>> >>> >>>>>>>-------------------------------------------------------------------- >>>>>>>- >>> >>>>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 >>> >>> >>> >> >>> >> >>> >> >>> >>-- >>> >>mailto:matt...@matthewadams.me >>> >>skype:matthewadams12 >>> >>googletalk:matt...@matthewadams.me >>> >>http://matthewadams.me >>> >>http://www.linkedin.com/in/matthewadams >>> >> >>> >>--------------------------------------------------------------------- >>> >>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 >>> > >>> >>> >>> >>> -- >>> mailto:matt...@matthewadams.me >>> skype:matthewadams12 >>> googletalk:matt...@matthewadams.me >>> http://matthewadams.me >>> http://www.linkedin.com/in/matthewadams >>> >>> --------------------------------------------------------------------- >>> To unsubscribe, e-mail: users-unsubscr...@maven.apache.org >>> For additional commands, e-mail: users-h...@maven.apache.org >>> >>> > > > >-- >mailto:matt...@matthewadams.me >skype:matthewadams12 >googletalk:matt...@matthewadams.me >http://matthewadams.me >http://www.linkedin.com/in/matthewadams > >--------------------------------------------------------------------- >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