Re: Unzip while excluding files doesn't seem to work

2009-07-23 Thread Alex Boisvert
Here's something that works for me:

  unzip(_(target/jetty)=_(jetty-6.1.17.zip)).tap do |t|
t.from_path(jetty-6.1.17).exclude('pom.xml', 'webapps/*',
'examples/*', 'javadoc/*','extras/*')
  end
  task :build = _(target/jetty)

I don't know if you're using the standard Jetty packaging (with root
directory in zip called jetty-6.x.x) and also it seems the trailing '/*'
are necessary to exclude directories.

alex

On Thu, Jul 23, 2009 at 3:24 AM, Antoine Toulme anto...@lunar-ocean.comwrote:

 Hi all,
 I am trying to unzip an artifact while excluding some resources:
 build unzip(_(target/jetty)=artifact(JETTY)).exclude('pom.xml',
 'webapps/*', 'examples', 'javadoc', 'extras')

 However it doesn't seem to work: all the resources that should be excluded
 are still present.

 What am I doing wrong here ? Any help is appreciated.

 Thanks,

 Antoine



Re: Unzip while excluding files doesn't seem to work

2009-07-23 Thread Antoine Toulme
It worked, thanks!

On Thu, Jul 23, 2009 at 19:08, Alex Boisvert boisv...@intalio.com wrote:

 Here's something that works for me:

   unzip(_(target/jetty)=_(jetty-6.1.17.zip)).tap do |t|
 t.from_path(jetty-6.1.17).exclude('pom.xml', 'webapps/*',
 'examples/*', 'javadoc/*','extras/*')
   end
   task :build = _(target/jetty)

 I don't know if you're using the standard Jetty packaging (with root
 directory in zip called jetty-6.x.x) and also it seems the trailing '/*'
 are necessary to exclude directories.

 alex


 On Thu, Jul 23, 2009 at 3:24 AM, Antoine Toulme 
 anto...@lunar-ocean.comwrote:

 Hi all,
 I am trying to unzip an artifact while excluding some resources:
 build unzip(_(target/jetty)=artifact(JETTY)).exclude('pom.xml',
 'webapps/*', 'examples', 'javadoc', 'extras')

 However it doesn't seem to work: all the resources that should be excluded
 are still present.

 What am I doing wrong here ? Any help is appreciated.

 Thanks,

 Antoine





Re: Running several jetty instances in different subprojects

2009-07-23 Thread Assaf Arkin
On Wed, Jul 22, 2009 at 6:48 AM, Martin Grotzke 
martin.grot...@javakaffee.de wrote:

 Hi Assaf,

 thanx a lot, now I got it - it's so easy :-)

 I also updated the wiki:
 http://cwiki.apache.org/confluence/display/BUILDR/How+to+run+jetty


Nice.

Assaf


 http://cwiki.apache.org/confluence/display/BUILDR/How+to+run+jetty

 Thanx  cheers,
 Martin



 On Wed, 2009-07-22 at 02:05 -0700, Assaf Arkin wrote:
  On Tue, Jul 21, 2009 at 1:46 PM, Martin Grotzke 
  martin.grot...@javakaffee.de wrote:
 
   On Tue, 2009-07-21 at 11:02 -0700, Assaf Arkin wrote:
On Tue, Jul 21, 2009 at 2:50 AM, Martin Grotzke 
martin.grot...@javakaffee.de wrote:
   
 Hi Assaf,

 thanx for your response! Unfortunately, I don't see how/where to
 use
   the
 Jetty.new exactly.

 When I just Jetty.new(foo, http://localhost:8090;) then buildr
 complains about
  uninitialized constant Jetty
   
   
Try Buildr::Jetty.new( …
   Sorry, but I just don't get it. Where shall this go to? I still want to
   be able to run jetty in two subprojects. What I'm using in one
   subproject until now is this:
  
  task(jetty=[package(:war), jetty.use]) do |task|
jetty.deploy(http://localhost:8080;, task.prerequisites.first)
puts 'Press CTRL-C to stop Jetty'
trap 'SIGINT' do
  jetty.stop
end
Thread.stop
  end
  
   What is required so that I can use different instances of jetty in
   different subprojects?
  
 
  When you call the jetty method, you get a single instance of the Jetty
 class
  [1].  That's clearly not what you want, so don't call the jetty method --
  create the instance directly and use that instance instead of the one
  returned by the jetty method.  It's just an object and all you need is a
  variable to reference it.
 
 
  Assaf
 
  [1]
 
 http://github.com/apache/buildr/blob/a25989f6aaa79a25e9727237977cde248918286e/addon/buildr/jetty.rb#L244-246
 
 
  
  
   Thanx  cheers,
   Martin
  
  
  
   
To limit namespace pollution, everything is defined in the Buildr
   namespace.
 A lot of stuff is also conveniently accessible from the global
   namespace,
so global namespace is good place to look for thing, if not there,
 try
   the
Buildr namespace.
   
Assaf
   
   


 Can you provide a more complete example?

 Thanx  cheers,
 Martin


 On Mon, 2009-07-20 at 20:04 -0700, Assaf Arkin wrote:
  On Mon, Jul 20, 2009 at 8:57 AM, Martin Grotzke 
  martin.grot...@javakaffee.de wrote:
 
   Hi,
  
   our project contains several subprojects. Two of them I want to
 run
 with
   jetty, both instances shall be running at the same time.
  
   To change the port for one of the instances, I use
jetty.url = http://localhost:8090;
   in the context of one subproject, but this seems to change also
 the
   url
   for the jetty task defined in the different subproject.
  
   That's how I define the jetty tasks:
  
   define myproj do
  
define subprojA do
  ...
  task(jetty=[package(:war), jetty.use]) do |task|
jetty.deploy(http://localhost:8080;,
   task.prerequisites.first)
puts 'Press CTRL-C to stop Jetty'
trap 'SIGINT' do
  jetty.stop
end
Thread.stop
  end
  
end
  
define subprojB do
  
  jetty.url = http://localhost:8090;
  task(jetty=[package(:war), jetty.use]) do |task|
jetty.deploy(http://localhost:8090;,
   task.prerequisites.first)
puts 'Press CTRL-C to stop Jetty'
trap 'SIGINT' do
  jetty.stop
end
Thread.stop
  end
  
end
  
   end
  
   When I run the first jetty with
buildr myproj:subprojA
   it fails with
   ...
   Starting Jetty at http://localhost:8090
   1 [main] INFO org.mortbay.log - Logging to
   org.slf4j.impl.SimpleLogger(org.mortbay.log) via
 org.mortbay.log.Slf4jLog
   15 [main] INFO org.mortbay.log - jetty-6.1.3
   74 [main] INFO org.mortbay.log - Started SocketConnector @
 0.0.0.0:8090
   Jetty started
   Buildr aborted!
   Connection refused - connect(2)
  
  
   Is it somehow possible to run several jetty instances for
 different
   subprojects?
 
 
  Each time you call the jetty method it will return the same one
   instance
 of
  jetty.  The jetty task is run after the buildfile, at which point
 the
 last
  value you set to jetty.url is the current value, which happens to
 be
 8090.
 
  If you want multiple instances, Jetty.new(name, url) and give
 each
   one a
  different URL.  Name is used to namespace the setup/teardown/use
   task, so
  you can use the same name for all instances, or pick different
 one.
 
  Assaf