Deployit JBoass AS Plugin Manual
Preface
This manual describes the Deployit JBoss AS Plugin.
Introduction
The JBoss AS Plugin supports the deployment, re-deployment and undeployment of a deployment package to a JBoss Application Server.
JBoss AS Plugin Requirements
In addition to the requirements for Deployit, the JBoss AS Plugin has the following additional requirements:
Because the plugin executes its deployment and configuration tasks by connecting to the target host systems and executing Twiddle commands there, the following must be possible:
- creating a connection to the host on which the "deployment manager" is running, using the host's specified connection methods
- starting
_jboss-installation-dir_/bin/twiddle.sh (Unix) or twiddle.bat (Windows) on the target host server under the user Deployit uses to connect to the host (or the SUDO user, if specified)
Further, the following configuration settings must be applied to the JBoss AS instances being managed:
- the DeleteWorkDirOnContextDestroy attribute in
server-profile/deploy/jboss-web.deployer/META-INF/jboss-service.xml must be set to true - the ScanEnabled attribute in
_server-profile_/conf/jboss-service.xml must be set to false
Supported JBoss AS Versions
The JBoss AS plugin supports the following versions of JBoss AS:
Supported JBoss Features
- the initial deployment, re- and undeployment of deployment packages to/from JBoss environments
- via the {@link com.xebialabs.deployit.plugin.jbossas.runbook.JbossasDeploymentRunBook JBoss Deployment RunBook}
* * For details of the exact components supported, sequence in which steps are carried out, limitations * etc. please consult the documentation of the appropriate run book.
The JBoss AS Plugin supports the following features:
| WAR files | Deploy and undeploy WAR archives. |
| EAR files | Deploy and undeploy EAR archives. |
| Topics / Queues | Deploy and undeploy topics and queues. |
| Datasources | Deploy and undeploy datasources. |
| Libraries | Deploy and undeploy Java libraries. |
| Folders | Deploy and undeploy folders. |
| Configuration files | Deploy and undeploy configuration files. |
| SQL files | Deploy and undeploy SQL files. |
| SQL folders | Deploy and undeploy folders containing SQL files. |
Known Limitations
The plugin does not currently support the following:
- installation, maintenance or removal of JBoss installations and profiles.
JBoss AS Runbook
When the JBoss AS runbook is triggered, the plugin populates the steplist with steps based on the executed task. First, the JBoss AS runbook determines which servers are affected by the pending task. These are all the JBoss AS servers that are a target of one of the deployed items in the deployment or the JBoss AS server that a deployed application is running on in case of an undeploy.
The JBoss AS runbook adds steps in the following order:
- Undeploy EARs
- Undeploy WARs
- Destroy JBoss resources
- Deploy EARs
- Deploy WARs
- Create JBoss resources
- Undeploy libraries from the host
- Undeploy configuration files from the host
- Deploy libraries to the host
- Deploy configuration files to the host
JBoss AS Configuration Items (CIs)
The JBoss AS Plugin defines configuration items (CIs) needed to deploy to JBoss AS middleware. To get more information about these CIs, use Deployit's command line interface (CLI). See the Deployit Command Line Interface (CLI) Manual for more information.
JbossasDataSource
Description unavailable
Type: com.xebialabs.deployit.plugin.jbossas.ci.JbossasDataSource
Properties:
- connectionUrl(STRING): Connection Url
- driverClass(STRING): Driver Class
- jndiName(STRING): Jndi Name
- maxPoolSize(INTEGER): Max Pool Size
- minPoolSize(INTEGER): Min Pool Size
- password(STRING): Password
- useJavaContext(BOOLEAN): Use Java Context
- username(STRING): Username
JbossasEarMapping
A mapping of an EAR to a JBoss server
Type: com.xebialabs.deployit.plugin.jbossas.ci.JbossasEarMapping
Properties:
- source(java.io.Serializable): Source
- target(java.io.Serializable): Target
- deploymentStrategy(ENUM): Deployment Strategy
- Values: [ENABLED_HOT_DEPLOYMENT_STRATEGY, DISABLED_HOT_DEPLOYMENT_STRATEGY]
- keyValuePairs(List<com.xebialabs.deployit.ci.mapping.KeyValuePair>): Key Value Pairs
- placeholderFormat(ENUM): Placeholder Format
- Values: [SPRING, WINDOWS_SHELL, STARS, NONE]
- virtualHost(STRING): Virtual Host
JbossasEjbJarMapping
A mapping of an EJB JAR to a JBoss server
Type: com.xebialabs.deployit.plugin.jbossas.ci.JbossasEjbJarMapping
Properties:
- source(java.io.Serializable): Source
- target(java.io.Serializable): Target
- deploymentStrategy(ENUM): Deployment Strategy
- Values: [ENABLED_HOT_DEPLOYMENT_STRATEGY, DISABLED_HOT_DEPLOYMENT_STRATEGY]
- keyValuePairs(List<com.xebialabs.deployit.ci.mapping.KeyValuePair>): Key Value Pairs
- mdbListenerPortJndiNameBindings(List<com.xebialabs.deployit.ci.mapping.MdbListenerPortBinding>): Bindings of message driven beans JNDI names to the corresponding listener ports present on the target middleware
- placeholderFormat(ENUM): Placeholder Format
- Values: [SPRING, WINDOWS_SHELL, STARS, NONE]
JbossasPath
Description unavailable
Type: com.xebialabs.deployit.plugin.jbossas.ci.JbossasPath
Properties:
JbossasQueue
Description unavailable
Type: com.xebialabs.deployit.plugin.jbossas.ci.JbossasQueue
Properties:
- name(STRING): Name
- jndiName(STRING): Jndi Name
- maxDepth(INTEGER): Max. depth
JbossasResourceMapping
Description unavailable
Type: com.xebialabs.deployit.plugin.jbossas.ci.JbossasResourceMapping
Properties:
- source(java.io.Serializable): Source
- target(java.io.Serializable): Target
- sourcePropertyOverrides(List<com.xebialabs.deployit.ci.mapping.KeyValuePair>): Overrides for properties of the mapping's source. The key is the property name (consult the documentation or run 'describe' in the CLI), the value is the value to set. Only string, integer and enumerable properties can be overridden. Example: Key: redeliveryLimits, Value: 2
JbossasServer
JBoss Application Server instance
Type: com.xebialabs.deployit.plugin.jbossas.ci.JbossasServer
Properties:
- home(STRING): Place where JBoss is installed such as /usr/local/jboss-5.1.0.GA.
- host(com.xebialabs.deployit.ci.Host): Host on which the JBoss server is running.
- name(STRING): Name of the JBoss server instance, e.g. default or minimal.
- startCommand(STRING): Path to the script that should be executed to start the JBoss server in the background
- version(ENUM): Version of the JBoss server.
- Values: [JBOSSAS_40, JBOSSAS_50, JBOSSAS_60, JBOSSAS_UNKNOWN]
- ajpPort(INTEGER): AJP Port for the JBoss Server, default is 8009
- controlPort(INTEGER): ControlPort of the JBoss Server, default is 1099 for JBoss 5, 1090 for JBoss 6+
- deployDirectories(List<com.xebialabs.deployit.plugin.jbossas.ci.JbossasPath>): Deploy Directories
- deploymentCompletionWaitTime(INTEGER): Estimated time in miliseconds to wait for the deployment completion.
- restartCommand(STRING): Command that should be executed to restart the JBoss server.
- stopCommand(STRING): Command that should be executed to stop the JBoss server.
- strategy(ENUM): Strategy
- Values: [RESTART, STOP_START]
JbossasTopic
Description unavailable
Type: com.xebialabs.deployit.plugin.jbossas.ci.JbossasTopic
Properties:
- name(STRING): Name
- jndiName(STRING): Jndi Name
- maxDepth(INTEGER): Max. depth
JbossasWarMapping
A mapping of a WAR to a JBoss server
Type: com.xebialabs.deployit.plugin.jbossas.ci.JbossasWarMapping
Properties:
- source(java.io.Serializable): Source
- target(java.io.Serializable): Target
- contextRoot(STRING): Context root to deploy to
- deploymentStrategy(ENUM): Deployment Strategy
- Values: [ENABLED_HOT_DEPLOYMENT_STRATEGY, DISABLED_HOT_DEPLOYMENT_STRATEGY]
- ejbReferences(List<com.xebialabs.deployit.ci.mapping.EjbReference>): Specifies the mapping from ejb reference jndi names and locals used in the web.xml to bean jndi names available in middleware
- keyValuePairs(List<com.xebialabs.deployit.ci.mapping.KeyValuePair>): Key Value Pairs
- placeholderFormat(ENUM): Placeholder Format
- Values: [SPRING, WINDOWS_SHELL, STARS, NONE]
- resourceEnvironmentEntryReferences(List<com.xebialabs.deployit.ci.mapping.ResourceReference>): Specifies the mapping from resource environment references jndi names and types used in the web.xml to resource references jndi names available in middleware
- resourceReferences(List<com.xebialabs.deployit.ci.mapping.ResourceReference>): Specifies the mapping from resource references jndi names and types used in the web.xml to resource references jndi names available in middleware
- virtualHost(STRING): Virtual host to deploy to