Mission
Cargo is a thin wrapper that allows you to manipulate Java EE containers in a standard way.
Tools
Cargo provides the following Tools and APIs:
- A Java API to start/stop/configure Java Containers and deploy modules into them.
- A Java API to parse/create/merge Java EE Modules
- Ant tasks, Maven 1, Maven 2 plugins.
- Intellij IDEA and Netbeans plugins are in the sandbox.
Usage
Cargo is often used to deploy applications to containers from ant or maven builds. Cargo can install the container and dependencies needed for your deployment as well. Click here for a Maven 2 quick start!
For more use cases, please check the utilisation page.
Development Status
Current Versions
click in the status column to get release notes:
Version |
Status |
Comments |
|---|---|---|
Released on 26/03/09 |
All released versions are available here.
Container Support
List of supported containers and the extensions that are implemented for each container (Java API, Ant tasks and Maven2/Maven3 plugin). The specified version is the version of the associated Cargo module where the feature was first made available (for example 0.2 for the Maven2 plugin means version 0.2 of the Cargo Maven 2 extension release). Click on a container's name to see a detailed list of features it supports.Container | Java API (version) | Ant tasks (version) | Maven 2 plugin (version) |
|---|---|---|---|
|
|
| |
|
|
| |
| Geronimo 3.x | 1.2.4 | 1.2.4 | 1.2.4 |
|
|
| |
|
|
| |
| Glassfish 4.x | 1.4.0 | 1.4.0 | 1.4.0 |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
| Resin 3.1.x | 1.2.0 | 1.2.0 | 1.2.0 |
| Resin 4.x | 1.4.0 | 1.4.0 | 1.4.0 |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
| WebLogic 12.x | 1.2.4 | 1.2.4 | 1.2.4 |
| WebSphere 8.5.x | 1.3.0 | 1.3.0 | 1.3.0 |
| WildFly 8.x | 1.4.2 | 1.4.2 | 1.4.2 |
Some containers are tested dialy on the Codehaus Cargo Continous Integration System; for these the container's page also shows which version is tested.
News
We are happy to announce the immediate availability of CARGO 1.4.2. This version brings the below bug fixes, enhancements and new features:
- A new method for restarting containers has been added, in the Java API, ANT tasks and Maven2/Maven3 plugin [CARGO-1197]. This new method resembles
redeploy, i.e. it will try to stop the container and then start it, so that you can use it to start from scratch or restart a container. - WildFly 8.x's first alpha is out... So is the associated container. [CARGO-1200]
- The handling of configuration files is now aligned with the way deployables work, and these are deployed on standalone as well as existing configurations. [CARGO-1195, CARGO-1199]
- Finally, the bug fixes and new features for the CARGO Daemon:
- A Maven2/Maven3 Archetype for CARGO Daemon has been added. [CARGO-1193]
- Daemon now works if the Maven2/Maven3 client and Daemon server run different OSes [CARGO-1192]
- Deletion of
workspace-handleId-folderbeforestartrequests has been implemented [CARGO-1198]
To upgrade to this new version:
- Users of the Maven2/Maven3 plugin simply need to use the CARGO plugin version 1.4.2.
- Users of the Java API can download the new Uberjar from http://repo1.maven.org/maven2/org/codehaus/cargo/cargo-core-uberjar/1.4.2/cargo-core-uberjar-1.4.2.jar
- Similarly, users of the ANT tasks can download the new ANT tasks from http://repo1.maven.org/maven2/org/codehaus/cargo/cargo-ant/1.4.2/cargo-ant-1.4.2.jar
- Finally, the ones who want to use the Cargo Daemon can download the webapp from http://repo1.maven.org/maven2/org/codehaus/cargo/cargo-daemon-webapp/1.4.2/cargo-daemon-webapp-1.4.2.war
Almost two months after CARGO 1.3.3, we've gone a long way through CARGO 1.4.0. Major enhancements, changes and bug fixes include:
- Core:
- [CARGO-365] - CARGO should check status of application server before attempting to start container
- [CARGO-1068] - Add support for port offset for containers
- Containers - Glassfish:
- [CARGO-1189] - Glassfish
jvm-optionsshould not be quoted - [CARGO-1190] - Glassfish
<systemProperties>should be XML-encoded when added to domain.xml - [CARGO-1191] - Add support for Glassfish 4.x
- Containers - Resin:
- Daemon:
- [CARGO-1188] - Add
-nologgingoption to disable logging for standalone daemon war - [CARGO-1180] - Add support for continuously viewing logs
- [CARGO-1181] - Add support for restarting offline containers
- [CARGO-1182 and CARGO-1184] - Change the Daemon properties in the Maven2/Maven3 plugin configuration to have a proper configuration
- [CARGO-1187] - Daemon
start/stopmojos does not have dependency resolution - [CARGO-1185] - Add support for extra and shared classpaths
- [CARGO-1186] - Add support for adding classpath locations at verbatim
- [CARGO-1183] - Fix integration test Cargo Daemon Integration Tests - Browser
- [CARGO-1192] - Daemon doesn't work if the Maven2/Maven3 client and Daemon server run different OSes
- Extensions - ANT tasks:
- [CARGO-991] - Remove the
starttask'swaitargument - Extensions - Maven2/Maven3 plugin:
- [CARGO-1116] - Remove the deprecated
<deployable>elements under<deployer>and<configuration> - [CARGO-967] - Use the tested container downloadable as the default for the
ZipUrlInstaller - [CARGO-986] - Remove
cargo:start'swaitargument
To upgrade to this new version:
- Users of the Maven2/Maven3 plugin simply need to use the CARGO plugin version 1.4.0.
- Users of the Java API can download the new Uberjar from http://repo1.maven.org/maven2/org/codehaus/cargo/cargo-core-uberjar/1.4.0/cargo-core-uberjar-1.4.0.jar
- Similarly, users of the ANT tasks can download the new ANT tasks from http://repo1.maven.org/maven2/org/codehaus/cargo/cargo-ant/1.4.0/cargo-ant-1.4.0.jar
- Finally, the ones who want to use the Cargo Daemon can download the webapp from http://repo1.maven.org/maven2/org/codehaus/cargo/cargo-daemon-webapp/1.4.0/cargo-daemon-webapp-1.4.0.war
wait argument. If you want the container to start and keep on running, please use run instead of start.<deployable> elements under <deployer> and <configuration>. All <deployable> elements are now under the main <configuration> element.Enjoy!