Configuration Reference Guide
AutoDeploy Configuration File
Hierarchical Index :<autodeploy>
<webautodeploylogwebservice/>
<autodeployagent/>
<remotenodeagent/>
<environment>
<applicationserver>
<connectionpool/>
<datasource/>
<jmsconnectionfactory/>
<jmsserver>
<jmsqueue/>
</jmserver>
<application>
<ear/>
<contentmanager/>
<configurationfile>
<mapping/>
</configurationfile>
<database>
<sqlscript/>
</database>
</application>
</applicationserver>
<publisher>
<email>
<destination/>
</email>
</publisher>
</environment>
</autodeploy>
<autodeploy>
The autodeploy element is the root element of the configuration, and acts as a container to the rest of the configuration elements.
Child elements :
- crontrigger (1..1) : define the scheduler launch interval
- environment (0..*) : define a complete environment
The crontrigger defines the frequency of AutoDeploy job launch. Attributes :
- seconds : define the seconds time. An integer indicates the exact launch time : for exemple seconds=10 means launch at xx:xx:10. You can use multi values, for exemple 0/30 means launch every 0 and 30 for seconds and * means launch each seconds.
- minuts : define the minuts time. The format is the same used for seconds : integer value (10 for exemple), interval value (0/30), * for each minuts.
- hours : define the hours time. The is the same used for seconds and muinuts : integer value (10 for exemple), interval value (0/5), * for each hours. For exemple, seconds=0, minuts=0, hours=2 means that autodeploy is launch every day at 2:00:00 am.
An environment is container, identified by a name. It's contain zone or more application servers which hosts applications.
An environment contains publisher which informs people about the update of the environment.
Attributes :
- name : the name of the environement
- applicationserver (0..*) : define the application servers used in the environment
- publisher (1..1) : define the different way to inform people about an environment update
The applicationserver element contains all informations needed to connect AutoDeploy to the application server using JMX. It's also a container of all components included in the application server such as connection pools, datasources, applications, etc.
Attributes :
- type : define the plugin class (implementing ASController AutoDeploy interface) used to connect to the application server. AutoDeploy provides three plugins by default :
- BEA Weblogic (8.1, 9.0) with net.sourceforge.buildprocess.autodeploy.jmx.WeblogicController
- IBM Websphere (5.1, 6.0) with net.sourceforge.buildprocess.autodeploy.jmx.WebsphereController
- JBoss (4.0) with net.sourceforge.buildprocess.autodeploy.jmx.JBossController
- jmxurl : define the URL used to connect to the application server MBean server. For exemple :
- t3://host:port is used for BEA Weblogic
- iiop://host:port is used for IBM Websphere
- jnp://host:port is used for JBoss
- adminuser is the user allowed to connect to the application server MBean server
- adminpassword is the user password to connect to the application server MBean server
- startupcommand is the complete command line (for exemple /opt/jboss/bin/run.sh -c my_server) used to start the application server. AutoDeploy uses this property to start dynamically the application server.
- name identify the application server. It's required by some application servers (such as Weblogic or Websphere) to plug to the right MBean server.
- connectionpool (0..*)
- datasource (0..*)
- jmsconnectionfactory (0..*)
- jmsserver (0..*)
- application (0..*)
This element represents a JDBC connection pool. Depending the target application server, the concept of connection pool and datasource can be encapsulated in a connection pool (it's the case for JBoss for exemple).
Attributes :
- name : the name (and JNDI name) of the connection pool
- driver : the driver class name used by the connection pool to connect to the database
- increment : the increment capacity of the connection pool when a new connection is required and that no connection is available
- initial : the initial connection pool capacity in terms of connection
- maximal : the maximal connection pool capacity in terms of connection
- user : the database schema username used by the connection pool
- password : the database schema password used by the connection pool
- url : the JDBC url used to connect to the database
- classpath : eventually add the directory or jar/zip file to the application server. This property allow the J2EE administrator to include the JDBC driver in the application classpath
This element represents a JDBC datasource. A datasource used an existing connection pool (identified by name).
Attributes :
- name : the name (and JNDI name) of the datasource
- pool : the name of the connection pool linked
This element represents a JMS connection factory.
Atributes :
- name : the name (and JNDI name) of the JMS connection factory
This element represents a JMS server deployed on the application server.
Attributes :
- name : the JMS server name
- storedirectory : the filesystems spool for the JMS server (required only for some application server such as BEA Weblogic)
- jmsqueue (0..*)
This element represents a JMS queue deployed in a JMS server.
Attributes :
- name : the name (and JNDI name) of the JMS queue
This element is a container for all component required to deploy a application.
Attributes :
- name : the name of the application
- uri : the complete URI of the application archive (tar.gz, zip, etc). This URI uses VFS, so you can use chain filesystems, such as for exemple tgz:http://host/file.tar.gz
- ear (0..*)
- contentmanager (0..*)
- configurationfile (0..*)
- database (0..*)
This element represents a J2EE application (ear, war, ejb-jar) to deploy.
Attributes :
- uri : it's the path inside the application uri where the ear is located. AutoDeploy concats application uri and ear uri
This element load a contentmanager plugin to eventually update a application CMS backend.
Attributes :
- type : the CMS plugin loaded
- uri : the URI of the CMS file import
- connectionfile : the URI of the file describing the connection to the CMS engine
- strategyfile : the URI of the file describing the import strategy
This element represent an application configuration file that will be copied in a special location of the application server.
Attributes :
- uri : the URI in the application archive where to find the configuration file. AutoDeploy concats application uri and configuration file uri
- local : the local directory where the configuration file will be copied
- mapping (0..*)
This element represents mapping from a key to the value in the configuration file. All keys found in the configuration file will be replaced by the value (it's a search and replace).
Attributes :
- key : the key identifier
- value : the replace value for the key
This element represents an access to the application database to launch some SQL scripts.
Attributes :
- driver : the JDBC driver classname used to connect to the database
- user : the database username
- password : the database password
- url : the JDBC URL used to connect to the database
- sqlscript (0..*)
This element represents a SQL script that will be executed on the database.
Attributes :
- uri : the URI in the application archive where to retrieve the SQL script. AutoDeploy concats application uri and sqlscript uri
This element is a container for all AutoDeploy deployment results publishing systems.
Child elements :
- email (1..1)
This element contains all properties to connect to a SMTP server.
Attributes :
- mailhost : the hostname (or IP) of the SMTP server
- from : the from address of the e-mail
- destination (0..*)
This element represents an e-mail destination address.
Attributes :
- address : the e-mail destination address