Forge Home


Install, configure, and deploy applications on JBoss AS 7. Based on rji-jboss_as


9,768 latest version

2.3 quality score

We run a couple of automated
scans to help you access a
module's quality. Each module is
given a score based on how well
the author has formatted their
code and documentation and
modules are also checked for
malware using VirusTotal.

Please note, the information below
is for guidance only and neither of
these methods should be considered
an endorsement by Puppet.

Version information

  • 0.0.1 (latest)
released Sep 22nd 2014
This version is compatible with:

Start using this module

  • r10k or Code Manager
  • Bolt
  • Manual installation
  • Direct download

Add this module to your Puppetfile:

mod 'nixgadget-jboss_as', '0.0.1'
Learn more about managing modules with a Puppetfile

Add this module to your Bolt project:

bolt module add nixgadget-jboss_as
Learn more about using this module with an existing project

Manually install this module globally with Puppet module tool:

puppet module install nixgadget-jboss_as --version 0.0.1

Direct download is not typically how you would use a Puppet module to manage your infrastructure, but you may want to download the module in order to inspect the code.



nixgadget/jboss_as — version 0.0.1 Sep 22nd 2014


A Puppet module to manage the installation, configuration, and application deployments for JBoss Application Server 7. It is compatible with Enterprise Linux and Ubuntu.


  • Install and configure JBoss AS 7 on Enterprise Linux and Ubuntu; this has been tested on CentOS 6 and Ubuntu 12.04.
  • Deploy and undeploy multiple Java application packages, using either hot or cold deployment methods.
  • A starting point for Puppet/ERB templating to suit your environment.

Getting Started

rji-jboss_as was developed and tested using Puppet 2.7.x on CentOS 6.4 and Ubuntu 12.04.

  • The node that JBoss AS is being installed on should already have a working Java installation. If not, check out the puppetlabs-java module to manage OpenJDK.
  • Download the JBoss AS 7.1.1 tarball from and place it in the files/ directory.
  • A working knowledge of JBoss AS installation, configuration, and application deployments.
  • A healthy background with Puppet/ERB templating. Because JBoss AS is a very powerful application server, it is not realistic to manage every aspect of its configuration here. A certain level of customization is expected for each environment.


Basic usage to install and configure JBoss AS, and deploy an archive named helloworld.war:

node '' {
    include jboss_as
    jboss_as::deploy { 'helloworld.war': }

Installing and Configuring JBoss AS

To accept the default class parameters in manifests/init.pp, you can install and configure JBoss AS simply by including the class for a given node:

node '' {
    include jboss_as

Otherwise, you can override the default parameters. All (current) parameters that can be specified are listed in the example below:

node '' {
    class { 'jboss_as':
        jboss_dist     => 'jboss-as-7.1.1.Final.tar.gz',
        jboss_user     => 'jboss-as',
        jboss_group    => 'jboss-as',
        jboss_home     => '/usr/share/jboss-as',
        staging_dir    => '/tmp/puppet-staging/jboss_as',
        standalone_tpl => 'jboss_as/standalone.xml.erb'

Deploying Applications

This module defines a new type, jboss_as::deploy. To accept the default parameters in manifests/deploy.pp, you can deploy an application by including the type for a given node and specifying the package to deploy. Note that the package must be located in this module's files/ directory.

node '' {
    include jboss_as
    jboss_as::deploy { 'helloworld.war': }

You can override the default class parameters on a deployment-by-deployment basis:

node '' {
    include jboss_as
    jboss_as::deploy { 'helloworld':
        pkg         => 'helloworld.war',
        is_deployed => true,
        hot_deploy  => false

You can also use the jboss_as::deploy class to undeploy applications:

node '' {
    include jboss_as
    jboss_as::deploy { 'helloworld.war':
          is_deployed => false


The tests for this module were executed against Ruby 1.8.7. To download/install the required gems, run:

$ bundle install

There are several rspec-puppet tests that can be run with:

$ rake spec

And syntax checking can be performed with:

$ rake lint