Here is a quick glossary of some terms that will be used in this tutorial.
Bundle: Third-party or custom software packaged for deployment. A bundle includes the software itself and any associated scripts and configuration.
Loadable Bundle: A bundle that is loaded and not executed. Loadable bundles set environment variables in the current shell, including variables like PATH to influence what software is available. An example of a loadable bundle is a developer tool like 'ant' or 'junit'.
Executable Bundle: A bundle that is executed. Executable bundles have scripts that perform various actions like install, start, and stop. Examples of executable bundles include the Apache web server and Tomcat application server.
Bundle Inventory: The list of bundles available for deployment. A bundle must be added to inventory before it can be deployed.
Environment: A directory containing deployed bundles (both loadable and executable). Environments can be loaded to allow deployed bundles to be executed.
Deployment (or Deployed Bundle): An instance of a bundle deployed within an environment. For loadable bundles, this is simply a reference to the original bundle within the environment's 'uses' directory. For executable bundles, a deployment includes a directory containing a bundle reference as well as a work directory.
Work Directory: A directory used by a deployed bundle for configuration files, logs, and other files that need to be written. This directory is named 'work' and is stored inside the deployment directory within an environment. Note that this directory needs to be writable, while the original bundle directory should be able to function as read-only.
For more information about these terms, see Chapter 3, User's Guide