You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@maven.apache.org by vcordaro <vc...@echostorm.net> on 2007/05/25 23:25:44 UTC

Deploying with Maven (Engineering a design)

Hi,


   I have picked up an interesting project at work.  My end goal is to deploy our latest code in SVN to our servers nightly.  Now we have a custom installer built
in izpack.  So ideally I would like to build the pieces that the installer needs, then build the installer, then deploy the installer.  Anyone ever done this?

So as I see it the first step is to get the nightly builds in a consistent and usable location.  We are using Continuum for our 
nightly builds, but it's output is to some randomly number directory in the working-directory.  So my idea was to just use maven tags to scp
the packaged to a http web server located on teh same machine.  So I started by using the distributionManagement tag and this worked, however I need
the output in a consistent format, including filename, so the installer can reference it.  The output from the distributionManagement was from snapshots
and the final file had the date and time appended onto it.  So I abandonded this method and moved to using the assembly tag.  This seems to be packaging and 
scp'ing to a location, along with consistently naming the output.   I took this assembly tag, wrapped it in a profile,  and moved it into a parent pom and the children, or pieces for the installer, reference it. So now continuum calls clean package deploy -P nightly.  Is this a good way of doing this?  Is there a better way?  Anyone have any ideas?

My next step will be a maven script that builds the installer referencing the assembled pieces from the http server.

Then once I have the installer built, i will most likely use ruby on rails and capistrano to deploy the installer to a remote server through ssh.

Any advice would be greatly appreciated... 

Thanks in advance,

Vince 


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


Re: Deploying with Maven (Engineering a design)

Posted by Napoleon Esmundo Ramirez <nr...@gmail.com>.
Hello Vince,

Nice way of doing it!  Though I think it would be better to do an
"installer-creator-mojo" instead of a script for the next step.

Cheers!
Nap

On 5/26/07, vcordaro <vc...@echostorm.net> wrote:
>
> Hi,
>
>
>    I have picked up an interesting project at work.  My end goal is to
> deploy our latest code in SVN to our servers nightly.  Now we have a custom
> installer built
> in izpack.  So ideally I would like to build the pieces that the installer
> needs, then build the installer, then deploy the installer.  Anyone ever
> done this?
>
> So as I see it the first step is to get the nightly builds in a consistent
> and usable location.  We are using Continuum for our
> nightly builds, but it's output is to some randomly number directory in
> the working-directory.  So my idea was to just use maven tags to scp
> the packaged to a http web server located on teh same machine.  So I
> started by using the distributionManagement tag and this worked, however I
> need
> the output in a consistent format, including filename, so the installer
> can reference it.  The output from the distributionManagement was from
> snapshots
> and the final file had the date and time appended onto it.  So I
> abandonded this method and moved to using the assembly tag.  This seems to
> be packaging and
> scp'ing to a location, along with consistently naming the output.   I took
> this assembly tag, wrapped it in a profile,  and moved it into a parent pom
> and the children, or pieces for the installer, reference it. So now
> continuum calls clean package deploy -P nightly.  Is this a good way of
> doing this?  Is there a better way?  Anyone have any ideas?
>
> My next step will be a maven script that builds the installer referencing
> the assembled pieces from the http server.
>
> Then once I have the installer built, i will most likely use ruby on rails
> and capistrano to deploy the installer to a remote server through ssh.
>
> Any advice would be greatly appreciated...
>
> Thanks in advance,
>
> Vince
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
> For additional commands, e-mail: users-help@maven.apache.org
>
>

Re: Deploying with Maven (Engineering a design)

Posted by James Abley <ja...@gmail.com>.
On 27/05/07, Stephane Nicoll <st...@gmail.com> wrote:
> Hi,
>
> On 5/25/07, vcordaro <vc...@echostorm.net> wrote:
> > Hi,
> >
> >
> >    I have picked up an interesting project at work.  My end goal is to deploy our latest code in SVN to our servers nightly.  Now we have a custom installer built
> > in izpack.  So ideally I would like to build the pieces that the installer needs, then build the installer, then deploy the installer.  Anyone ever done this?
>
> Yes, we do that. Basically it is as follows:
>
> * The components of the application are continuously integrated with Continuum
> * We have a "bundle" project that gathers all the pieces of the
> applications. Some of these pieces are the above components
> * The bundle is also deployed as a dependency which is used by the
> "installer" project that generates an InstallAnywhere distro based on
> the bundle
>
> We use the dependency and assembly plugins for step2 and a custom mojo
> for step3 based on the InstallAnywhere ant task.
>

izpack has ANT tasks, so you should be able to use that from within
Maven as a first step.

Cheers,

James

> Since continuum is able to fire a build when a dependency changes, the
> whole chain is always up to date.
>
> HTH,
> Stéphane
>
> >

<snip/>

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


Re: Deploying with Maven (Engineering a design)

Posted by Stephane Nicoll <st...@gmail.com>.
Hi,

On 5/25/07, vcordaro <vc...@echostorm.net> wrote:
> Hi,
>
>
>    I have picked up an interesting project at work.  My end goal is to deploy our latest code in SVN to our servers nightly.  Now we have a custom installer built
> in izpack.  So ideally I would like to build the pieces that the installer needs, then build the installer, then deploy the installer.  Anyone ever done this?

Yes, we do that. Basically it is as follows:

* The components of the application are continuously integrated with Continuum
* We have a "bundle" project that gathers all the pieces of the
applications. Some of these pieces are the above components
* The bundle is also deployed as a dependency which is used by the
"installer" project that generates an InstallAnywhere distro based on
the bundle

We use the dependency and assembly plugins for step2 and a custom mojo
for step3 based on the InstallAnywhere ant task.

Since continuum is able to fire a build when a dependency changes, the
whole chain is always up to date.

HTH,
Stéphane

>
> So as I see it the first step is to get the nightly builds in a consistent and usable location.  We are using Continuum for our
> nightly builds, but it's output is to some randomly number directory in the working-directory.  So my idea was to just use maven tags to scp
> the packaged to a http web server located on teh same machine.  So I started by using the distributionManagement tag and this worked, however I need
> the output in a consistent format, including filename, so the installer can reference it.  The output from the distributionManagement was from snapshots
> and the final file had the date and time appended onto it.  So I abandonded this method and moved to using the assembly tag.  This seems to be packaging and
> scp'ing to a location, along with consistently naming the output.   I took this assembly tag, wrapped it in a profile,  and moved it into a parent pom and the children, or pieces for the installer, reference it. So now continuum calls clean package deploy -P nightly.  Is this a good way of doing this?  Is there a better way?  Anyone have any ideas?
>
> My next step will be a maven script that builds the installer referencing the assembled pieces from the http server.
>
> Then once I have the installer built, i will most likely use ruby on rails and capistrano to deploy the installer to a remote server through ssh.
>
> Any advice would be greatly appreciated...
>
> Thanks in advance,
>
> Vince
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
> For additional commands, e-mail: users-help@maven.apache.org
>
>

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