users@glassfish.java.net

Re: CARGO: A tool for easy manipulation of your Java EE server(s)

From: S. Ali Tokmen <java_at_alishomepage.com>
Date: Fri, 12 Nov 2010 22:05:20 +0100

Hello, Alexis

Well, the main difference between CARGO and Arquillian is that CARGO is
an API for configuring, starting, stopping and deploying to Java
containers, whereas Arquillian is more oriented as a test framework.

Therefore, in Arquillian, you can define a much tighter coupling between
your application and your tests. Moreover, if your application has a
packaging issue, Arquillian will probably be giving you hints or at
least more detailed view on what's wrong, whereas CARGO will only tell
you that "your application is not working, please check the container
logs for details".

When CARGO is used in a test environment, your Java EE server as well as
your application(s) look a lot more like a "blackbox". Moreover, CARGO
has more advanced capabilities for configuration, deployment and
packaging; it can for example preconfigure and later on package your
server's configuration. It can also remotely deploy your application on
a server domain.

Finally, what I find interesting in CARGO (probably due to its long
history) is that it supports a large number of servers: Glassfish 2.x
and 3.x; but also many JBoss versions from 3.x to the latest 6.0.0
milestones, Apache Geronimo, Jetty, Tomcat, OW2 JOnAS and WebLogic are
the most attractive ones. CARGO also supports many "fossilized"
application servers as well. As a result of this, many people use CARGO
for cross-server testing.

Cheers

S. Ali Tokmen
http://ali.tokmen.com/

GSM (fr): +33 66 43 00 555 [Orange]
GSM (tr): +90 555 266 52 73 [Avea]

My AIM, ICQ, MSN Messenger and Yahoo IM
contact details are on http://contact.ali.tokmen.com


On 12.11.2010 21:28, Alexis Moussine-Pouchkine wrote:
> Thanks Ali, this is great to see GlassFish 2.x and 3.x supported by CARGO.
> For my (and probably others) better understanding, can you explain the differences between CARGO and Arquillian?
> thanks!
> -Alexis
>
> On 10 nov. 2010, at 21:49, S. Ali Tokmen wrote:
>
>> Hello, Glassfish enthusiasts
>>
>> This is S. Ali Tokmen from the Codehaus CARGO team. I'm sending this short e-mail to tell you about the immediate availability of CARGO 1.0.4.
>>
>> First question, what is CARGO? CARGO is an open source application that can start, stop, configure and deploy applications as well as configuration files on many, many Java server containers. CARGO is available as a simple Java library, a set of ANT tasks as well as a Maven2 plugin.
>>
>> Of course, Glassfish is part of the servers supported by CARGO... In detail, CARGO supports both Glassfish 2.x and 3.x.
>>
>> Second question, what would you need CARGO for? Well, typical use cases for CARGO are:
>>
>> • Functional and integration testing on a real server environment: indeed, CARGO can be used to download, configure, start and stop Glassfish and also to deploy all your datasources and applications to it; so you can do real-world tests.
>> • JUnit lovers: See our short article showing you how to configure, start and stop one of the many application servers supported by CARGO with your application in order to run your real-world tests on http://cargo.codehaus.org/Functional+testing
>> • Maven2 users: Try out the CARGO archetypes that show you how to integrate server-based testing in your Maven2 builds: http://cargo.codehaus.org/Maven2+Archetypes
>> • Multi-server testing: since CARGO uses the exact same API whether you use Glassfish or any other server, you can reuse the exact same configuration to test your application on different servers.
>> • The list of supported servers and features supported on each server can be found on http://cargo.codehaus.org/Containers
>> • Automated deployment: CARGO supports remote deployment on many servers. You therefore can use CARGO to automatically deploy your applications (and their prerequisites) on your favorite servers.
>> • ... and more
>>
>> For more information, please visit http://cargo.codehaus.org/
>>
>> --
>>
>> S. Ali Tokmen
>>
>> http://ali.tokmen.com/
>>
>>
>> GSM (fr): +33 66 43 00 555 [Orange]
>> GSM (tr): +90 555 266 52 73 [Avea]
>>
>> My AIM, ICQ, MSN Messenger and Yahoo IM
>> contact details are on
>> http://contact.ali.tokmen.com
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe_at_glassfish.dev.java.net
> For additional commands, e-mail: users-help_at_glassfish.dev.java.net
>
>