Quantcast

Automated deployments of multiple web-apps with Hudson

classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Automated deployments of multiple web-apps with Hudson

Barry Fitzgerald
Hi all,

I'm looking for a solution for deploying multiple web-apps and their
required config (database, content and apache).

My current preferred approach is to use a form of a parameterised
build for hudson to create the specification containing the required
versions of all the items (either svn paths or mvn versions).

Then a second parameterised build to select a pre-created
specification and deploy/execute it on a chosen environment.

To create the specification I think I'd have to add some custom types
to the parameterised build plugin - drop downs for choosing maven
artifacts and versions created by parsing repo metadata, dropdowns for
selecting svn tags for apache content, database scripts etc...

Executing the the specification would probably require less work - a
drop down to select a pre-existing spec and an environment then the
job would parse the spec and run each bit in turn.

Is this a valid approach or is there some other plugin/approach that
will help me achieve this? Does this functionality belong in Hudson at
all? Is this an automation step too far?

I've also created a question here with some further details -
http://stackoverflow.com/questions/1462334/automated-deployment-solution-for-multiple-java-web-apps

Thanks in advance for any suggestions.

Barry

---------------------------------------------------------------------
To unsubscribe, e-mail: [hidden email]
For additional commands, e-mail: [hidden email]

Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

AW: Automated deployments of multiple web-apps with Hudson

Jan.Materne
What do you mean with "multiple web-apps"?

a) a single web-app deployed onto several machines
I would use a deploy tool and start that from Hudson. (e.g.
SmartFrog (smartfrog.org). Of course you could start with
scripts (copy, Ant, ...) but that doesnt scale as they are
not designed for that scenario.

b) several web-apps deployed onto one machine
Basically this is one-web-to-one-machine and would be a post build action.
Lets have a look if there is one plugin ... (alternative copy/Ant:copy it)
http://wiki.hudson-ci.org/display/HUDSON/Deploy+Plugin
http://wiki.hudson-ci.org/display/HUDSON/CopyArchiver+Plugin
http://wiki.hudson-ci.org/display/HUDSON/Post+build+task


"Copy required config"
- database:
  Creating tables could be done with Ant:sql and ddl-scripts.
  Setting up a db is more complex. (Simplest "usage" would be calling
  a REST api of your cloud ;-) I heard Amazon EC2 has some images ...)
  Maybe using a VM and restoring to a snapshot could work.
  http://wiki.hudson-ci.org/display/HUDSON/VMware+plugin
- Apache
  I think you mean Apache httpd.
  Config is just copying the files.
  For setting up I would use the same technique as for the db.
- content
  DB import with db tools.
If this is for a test and you want to have the same setup+data for
all runs, I would investigate of using a VM. Then start it and after finishing
just restore it.


Jan



>-----Urspr√ľngliche Nachricht-----
>Von: Barry Fitzgerald [mailto:[hidden email]]
>Gesendet: Dienstag, 22. September 2009 22:33
>An: [hidden email]
>Betreff: Automated deployments of multiple web-apps with Hudson
>
>Hi all,
>
>I'm looking for a solution for deploying multiple web-apps and their
>required config (database, content and apache).
>
>My current preferred approach is to use a form of a parameterised
>build for hudson to create the specification containing the required
>versions of all the items (either svn paths or mvn versions).
>
>Then a second parameterised build to select a pre-created
>specification and deploy/execute it on a chosen environment.
>
>To create the specification I think I'd have to add some custom types
>to the parameterised build plugin - drop downs for choosing maven
>artifacts and versions created by parsing repo metadata, dropdowns for
>selecting svn tags for apache content, database scripts etc...
>
>Executing the the specification would probably require less work - a
>drop down to select a pre-existing spec and an environment then the
>job would parse the spec and run each bit in turn.
>
>Is this a valid approach or is there some other plugin/approach that
>will help me achieve this? Does this functionality belong in Hudson at
>all? Is this an automation step too far?
>
>I've also created a question here with some further details -
>http://stackoverflow.com/questions/1462334/automated-deployment
>-solution-for-multiple-java-web-apps
>
>Thanks in advance for any suggestions.
>
>Barry
>
>---------------------------------------------------------------------
>To unsubscribe, e-mail: [hidden email]
>For additional commands, e-mail: [hidden email]
>
>

---------------------------------------------------------------------
To unsubscribe, e-mail: [hidden email]
For additional commands, e-mail: [hidden email]

Loading...