Giter Club home page Giter Club logo

fatmcgav-glassfish's Introduction

Puppet Glassfish module

Puppet Forge Build Status Coverage Status

Original puppet-glassfish author - Lars Tobias Skjong-Børsting [email protected]
Copyright - Gavin Williams [email protected]

License: GPLv3

####Table of Contents

##Overview This module adds support for installing and managing the Glassfish J2EE application server. It supports Glassfish J2EE version 3.1 and 4.0, running on EL and Debian linux distributions.

##Features This module can do the following:

  • Install Glassfish J2EE Application server, either by downloading a Zip file or installing from a package.
  • Install and configure Java if appropriate.
  • Manage user accounts if appropriate.
  • Configure PATH to support Glassfish.
  • Create Linux service to run Glassfish on system startup.
  • Create asadmin password files for different users or locations.
  • Install additional JARs if appropriate.
  • Create and manage Glassfish clusters, including:
  • Domain Administration Service (DAS)
  • Nodes
  • Instances
  • Manage various configuration elements of Glassfish, including:
  • Applications
  • Auth Realm
  • Custom Resources
  • Log Attribute properties
  • Javamail Resources
  • JDBC Connection Pools
  • JDBC Resources
  • JMS Resources
  • JVM Options
  • Network Listeners
  • Resource references
  • Set options
  • System properties

Further features that are likely to be added include:

  • Additional support for Cluster environments, such as targeting resources at cluster.

##Requirements This module requires the Puppetlabs-Stdlib module >= 3.2.0.

##Usage Glassfish can be installed and configured with a default configuration with:

include glassfish

This will install Java 7 OpenJDK, create a Glassfish group and user account, download and install Glassfish J2EE v3.1.2.2 using a Zip file. No domains are created by default.

To install Glassfish using a package manager, such as yum or apt, you could do:

class { 'glassfish':
  install_method => 'package', 
  package_prefix => 'glassfish'
}

package_prefix can be used to change the package naming structure. The required version is appended to the end to form the package name, e.g.: glassfish3-3.1.2.2

To create and configure a domain upon installation, you could do:

class { 'glassfish': 
  create_domain => true, 
  domain_name   => 'gf_domain', 
  portbase      => '8000'
}

This will install Glassfish and create a domain called 'gf_domain' using portbase 8000, with a default username/password of 'admin/adminadmin'.

If you are using other means to manage user accounts on this host, then you can stop this module managing user accounts by doing:

class { 'glassfish':
  manage_accounts => false 
}

This module also provides several defined types which can be used to simplify other tasks, such as creating a domain using glassfish::create_domain to create a new domain, or glassfish::create_cluster to create a new cluster.

It is also possible to use the types directly.
E.g.

  jdbcconnectionpool { 'ConPool':
    ensure       => present,
    resourcetype => 'javax.sql.ConnectionPoolDataSource',
    dsclassname  => 'oracle.jdbc.pool.OracleConnectionPoolDataSource',
    properties   => {
      'user'     => 'con_user', 
      'password' => 'con_password',
      'url'      => 'jdbc\:oracle\:thin\:@localhost\:1521\:XE'
    },
    portbase     => '8000',
    asadminuser  => 'admin',
    user         => 'glassfish'
  }

  jdbcresource { 'jdbc/ConPool':
    ensure         => present,
    connectionpool => 'ConPool',
    portbase       => '8000',
    target         => 'aCluster',
    asadminuser    => 'admin',
    user           => 'glassfish'
  }

##Limitations This module has primarily been developed and tested on CentOS 6. It has also been lightly tested on Debian and Ubuntu, so should support most common Linux distributions.

##Contributors Thanks to the following people who have helped with this module:

  • Stepan Stipl - Features and testing
  • Jon Black - Testing
  • Alex Jennings - Features
  • joliveira - Bug fixes
  • Jesse Cotton - Features
  • Bjoern Lippert - Bug fixes
  • Doug Neal - Features
  • Svante Paldan - Features and bug fixes

##Development If you have any features that you feel are missing or find any bugs for this module, feel free to raise an issue on Github, or even better submit a PR and I will review as soon as I can.

##Testing This module has been written to support Rspec testing of both the manifests and types/providers. In order to execute the tests, run the following from the root of the module: bundle install && bundle exec rake spec

fatmcgav-glassfish's People

Contributors

fatmcgav avatar joliveira avatar stepanstipl avatar zwant avatar dougneal avatar jcotton1123 avatar larstobi avatar slamont avatar superseb avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.