ControlTier > controltier-elements
 

JBossAntBuilder

JBoss application Ant builder

Overview

Open in Workbench JBossAntBuilder: JBoss application Ant builder

Intent

To Provide an environment and set of standard build commands to build a jboss based application suitable for deployment to a jboss server.

  • Support java/ant based build environment.
  • Support jboss dependencies at build time.
  • Promote resuse of the AntBuilder build module.
  • Register built packages into the ControlTier package repository for future deployment.

Problem

In order to build a deployable jboss artifact, a jboss server dependency may be needed at compile time. This module provides integration between a dependent jboss server package and the standard Builder runBuildScript command.

Discussion

See AntBuilder module as this describes the general approach of automating builds.

Example

See AntBuilder#Example.

Check List

See AntBuilder#Check_List.

Design

Super Type
AntBuilder
Role Concrete. (Objects can be created.)
Instance Names Unique
Notification false
Template Directory
Data View Children, proximity: 1
Logger Name JBossAntBuilder

Constraints

Allowed Child Dependencies

  • AntBuilderAntArgs1
  • AntBuilderAntOpts1
  • AntZip 1
  • BuilderAntHome1
  • BuilderAutoUpdate1
  • BuilderBuildFile1
  • BuilderBuildstamp1
  • BuilderBuildTarget1
  • BuilderImportMax1
  • BuilderImportMin1
  • BuilderJavaHome1
  • BuilderJBossHome 1
  • BuilderNotificationList1
  • BuilderPackageBuildtimePattern1
  • BuilderPackageExtension1
  • BuilderPackageFilebase1
  • BuilderPackageInstallRank1
  • BuilderPackageInstallRank1
  • BuilderPackageInstallroot1
  • BuilderPackageRequireBuildstamp1
  • BuilderPackageSeparator1
  • BuilderPackageType1
  • BuilderPackageVendor1
  • BuilderPackageVersion1
  • BuilderPath1
  • BuilderScmBinding1
  • BuilderScmConnection1
  • BuilderScmLabel1
  • BuilderScmModule1
  • BuilderScmUser1
  • BuilderScmView1
  • BuilderVersionBuild1
  • BuilderVersionMajor1
  • BuilderVersionMinor1
  • BuilderVersionRelease1
  • BuilderVersionTag1
  • CruiseControlInterval1
  • CruiseControlMailHost1
  • CruiseControlReturnAddress1
  • JBossZip 1

1: These types have a Singleton constraint. Only one instance may be added as a resource.

Allowed Parent Dependencies

In addition to allowed parent Node and Updater objects, CruiseControl and Hudson are allowed in order to support Continous Integration.

Attributes

Exported Attributes

Name Property Description
basedir deployment-basedir root directory of the checkout workspace
targetdir deployment-install-root target directory containing built artifact(s)

Defaults for Imported Attributes

Name Default Description
antArgs default ANT_ARGS passed to the runBuildScript build command
antOpts default ANT_OPTS passed to the runBuildScript build command
autoUpdate false enabled automatic deployment to jboss server within if configured within a Continuous Integratinon loop such as via CruiseControl or Hudson
buildAntHome ${env.ANT_HOME} path to the ANT_HOME (installation root of ant)
buildFile build.xml default name of the build file
buildPath /bin:/usr/bin execution path used when building
buildTarget all default target name of the build file
cruiseControlInterval 300 set the continous integration loop build interval
importMax 1 maximum number of packages to import after artifacts are built
importMin 1 minimum number of packages to import after artifacts are built
javaHome ${env.JAVA_HOME} path to the JAVA_HOME (installation root of the jdk)
jboss_install_root ${env.JBOSS_HOME} default JBOSS_HOME, see BuilderJBossHome to override JBOSS_HOME from environment
packageExtension war default package file extension of produced artifact(s)
packageFilebase .*? default file base of produced artifact(s)
packageInstallRank 10 during package import, sets the package installation rank upon deployment
packageSeparator - default package separator character of produced artifact(s)
packageType war default package type of produced artifact(s)
requireBuildstamp false determines if a buildstamp is required, defaults to false
scmBinding cvs source code management system to use, defaults to cvs
scmLabel optional label to apply upon build
scmUser ${user.name} username used with the source code management system, defaults to effective user of the builder

Commands

Note
Commandline options displayed in square brackets "[]" are optional. If an option expects arguments, then angle brackets are shown after the option "<>". Any default value is shown within the brackets.

Related Types

The following types are defined for use with JBossAntBuilder.

BuilderJBossHome

Overview

Open in Workbench BuilderJBossHome: The value of JBOSS_HOME to use for the build

Used to identify the JBOSS_HOME at build time. See

Design

Super Type
BuilderSetting
Role Concrete. (Objects can be created.)
Instance Names Unique

Attributes

Exported Attributes
Name Property Description
jboss_install_root settingValue settingValue will override default location established by attribute-default in JBossAntBuilder