Skip to content

Latest commit

 

History

History
3399 lines (1837 loc) · 89.9 KB

REFERENCE.md

File metadata and controls

3399 lines (1837 loc) · 89.9 KB

Reference

Table of Contents

Classes

Defined types

Resource types

Functions

Data types

Classes

wildfly

Main class, includes all other classes.

Parameters

The following parameters are available in the wildfly class:

config

Data type: Wildfly::Config_file

Sets Wildfly configuration file for initialization when you're using 'standalone' mode.

Default value: 'standalone.xml'

conf_file

Data type: Optional[Stdlib::Unixpath]

Sets a file to be used for service configuration.

Default value: undef

conf_template

Data type: Optional[String]

Sets a template file for service configuration.

Default value: undef

console_log

Data type: Stdlib::Unixpath

Configures service log file.

Default value: '/var/log/wildfly/console.log'

custom_init

Data type: Optional[String]

Sets a custom init script.

Default value: undef

distribution

Data type: Wildfly::Distribution

Sets the Wildfly distribution: 'wildfly' or 'jboss-eap'.

Default value: 'wildfly'

dirname

Data type: Stdlib::Unixpath

JBOSS_HOME. i.e. The directory where your Wildfly will live.

Default value: '/opt/wildfly'

domain_config

Data type: Wildfly::Config_file

Sets Wildfly configuration file for initialization when you're using 'domain' mode.

Default value: 'domain.xml'

external_facts

Data type: Boolean

Whether it should deploy external facts.

Default value: false

gid

Data type: Optional[Integer]

Sets managed group ID.

Default value: undef

group

Data type: String

Group to own JBOSS_HOME. If manage_user is true, this group will be managed.

Default value: 'wildfly'

host_config

Data type: Wildfly::Config_file

Sets Wildfly Host configuration file for initialization when you're using 'domain' mode.

Default value: 'host.xml'

install_cache_dir

Data type: Stdlib::Unixpath

The directory to be used for wget cache.

Default value: '/var/cache/wget'

deploy_cache_dir

Data type: Stdlib::Unixpath

The directory to be used for deployment cache.

Default value: '/opt'

install_download_timeout

Data type: Integer

Sets the timeout for installer download.

Default value: 500

install_source

Data type:

Variant[Pattern[/^file:\/\//],
    Pattern[/^puppet:\/\//],
    Stdlib::Httpsurl, Stdlib::Httpurl,
    Undef
  ]

Custom source of Wildfly tarball installer. Defaults to standard Wildfly repositories.

Default value: undef

java_home

Data type: Stdlib::Unixpath

Sets the JAVA_HOME for Wildfly.

Default value: '/usr/java/default'

java_opts

Data type: Variant[Undef, String, Array]

Sets JAVA_OPTS, allowing to override several Java params, like Xmx, Xms and MaxMetaspaceSize,

Default value: undef

java_xmx

Data type: String

Sets Java's -Xmx parameter.

Default value: '512m'

java_xms

Data type: String

Sets Java's -Xms parameter.

Default value: '256m'

java_maxmetaspace_size

Data type: String

Sets Java's -XX:MaxMetaspaceSize parameter.

Default value: '128m'

jboss_opts

Data type: Optional[String]

Sets JBOSS_OPTS, allowing to override several JBoss properties. It only works with Wildfly 8.2+.

Default value: undef

manage_user

Data type: Boolean

Whether this module should manage wildfly user and group.

Default value: true

mgmt_user

Data type: Struct[{ username => String, password => String }]

Hash containing a Wildfly's management user to be used internally.

Default value:

{
    username => 'puppet',
    password => fqdn_rand_string(30),
  }
mgmt_create_keystores

Data type: Boolean

Enables or disables the creation of keystores for TLS enabled ManagementRealm.

Default value: true

mgmt_keystore

Data type: Stdlib::Unixpath

Path to a pre-defined keystore to be used for a TLS enabled ManagementRealm.

Default value: "${dirname}/${mode}/configuration/mgmt.jks"

mgmt_keystore_alias

Data type: String

The java keystore 'alias' to be used for a TLS enabled ManagementRealm.

Default value: 'mgmt'

mgmt_keystore_pass

Data type: String

The java keystore password to be used for a TLS enabled ManagementRealm.

Default value: 'changeit'

mgmt_ssl_cert

Data type: Optional[Stdlib::Unixpath]

Path to the certificate used for setting up the ManagementRealm keystore.

Default value: undef

mgmt_ssl_key

Data type: Optional[Stdlib::Unixpath]

Path to the private key used for setting up the ManagementRealm keystore.

Default value: undef

mode

Data type: Wildfly::Mode

Sets Wildfly execution mode will run, 'standalone' or 'domain'.

Default value: 'standalone'

mode_template

Data type: String

Sets epp template for standalone.conf or domain.conf.

Default value: "wildfly/${mode}.conf"

overlay_class

Data type: Optional[String]

Sets a class to be applied between 'install' and 'setup' classes.

Default value: undef

package_ensure

Data type: String

Wheter it should manage required packages.

Default value: 'present'

package_name

Data type: Optional[String]

Sets Wildfly package name.

Default value: undef

package_version

Data type: Optional[String]

Sets Wildfly package version.

Default value: undef

properties

Data type: Hash[Pattern[/^\w*(\.\w*-?\w*)*$/], String]

Sets properties for your service.

Default value:

{
    'jboss.bind.address' => '0.0.0.0',
    'jboss.bind.address.management' => '127.0.0.1',
    'jboss.management.http.port' => '9990',
    'jboss.management.https.port' => '9993',
    'jboss.http.port' => '8080',
    'jboss.https.port' => '8443',
    'jboss.ajp.port' => '8009',
  }
remote_debug

Data type: Boolean

Whether remote debug should be enabled.

Default value: false

remote_debug_port

Data type: Integer

Sets the port to be used by remote debug.

Default value: 8787

remote_username

Data type: Optional[String]

Sets remote username in host config.

Default value: undef

secret_value

Data type: Optional[String]

Sets the secret value in host config.

Default value: undef

secure_mgmt_api

Data type: Boolean

Setup and use HTTPS calls to the management API.

Default value: false

service_ensure

Data type: Boolean

Sets Wildfly's service 'ensure'.

Default value: true

service_enable

Data type: Boolean

Sets Wildfly's service 'enable'.

Default value: true

service_file

Data type: Optional[Stdlib::Unixpath]

Sets a file to be used for service management.

Default value: undef

service_name

Data type: Optional[String]

Sets Wildfly's service 'name'.

Default value: undef

service_manage

Data type: Boolean

Reload Wildfly's service when changed config.

Default value: true

shutdown_wait

Data type: Integer

Sets the time to wait for the process to be shutdown - sysvinit scripts only.

Default value: 30

startup_wait

Data type: Integer

Sets the time to wait for the process to be up - sysvinit scripts only.

Default value: 30

systemd_template

Data type: Optional[String]

Sets a custom systemd template.

Default value: undef

uid

Data type: Optional[Integer]

Sets managed user ID.

Default value: undef

user

Data type: String

User to own JBOSS_HOME. If manage_user is true, this user will be managed.

Default value: 'wildfly'

user_home

Data type: Stdlib::Unixpath

User home directory. Defaults to '/home/wildfly'

Default value: '/home/wildfly'

version

Data type: Pattern[/^(\d{1,}\.\d{1,}(\.\d{1,})?$)/]

Sets the Wildfly version managed in order to handle small differences among versions.

Default value: '9.0.2'

process_controller_java_opts

Data type: Variant[Undef, String, Array]

Default value: undef

host_controller_java_opts

Data type: Variant[Undef, String, Array]

Default value: undef

wildfly::external_facts

Set external wildflty facts

wildfly::install

Downloads and installs Wildfly from a remote source or a system package.

wildfly::prepare

Manages Wildfly requirements (user, group, dirs and packages)

wildfly::secure_mgmt_api

Manages secure management api

wildfly::service

Manages Wildfly service.

wildfly::service::systemd

Wildfly systemd configuration

wildfly::setup

Manages Wildfly configuration required to run in service mode.

Defined types

wildfly::cli

Executes an arbitrary JBoss-CLI command [node-type=node-name (/node-type=node-name)*] : operation-name ['('[name=value [, name=value]*]')'] [{header (;header)*}]. This define is a wrapper for wildfly_cli that defaults to your local Wildfly installation.

Parameters

The following parameters are available in the wildfly::cli defined type:

command

Data type: String

The actual command to execute.

Default value: $title

unless

Data type: Optional[String]

If this parameter is set, then this cli will only run if this command condition is met.

Default value: undef

onlyif

Data type: Optional[String]

If this parameter is set, then this cli will run unless this command condition is met.

Default value: undef

username

Data type: String

Wildfly's management user to be used internally.

Default value: $wildfly::mgmt_user['username']

password

Data type: String

The password for Wildfly's management user.

Default value: $wildfly::mgmt_user['password']

host

Data type: String

The IP address or FQDN of the JBoss Management service.

Default value: $wildfly::properties['jboss.bind.address.management']

port

Data type: String

The port of the JBoss Management service.

Default value: $wildfly::properties['jboss.management.http.port']

secure

Data type: Boolean

Use https port or http port.

Default value: $wildfly::secure_mgmt_api

refreshonly

Data type: Optional[Boolean]

Default value: undef

wildfly::config::app_user

Manages an Application User (application-users.properties) for Wildfly.

Parameters

The following parameters are available in the wildfly::config::app_user defined type:

password

Data type: String

The user password.

wildfly::config::mgmt_user

Manages a Management User (mgmt-users.properties) for Wildfly.

Parameters

The following parameters are available in the wildfly::config::mgmt_user defined type:

password

Data type: String

The user password.

wildfly::config::module

Manages a Wildfly module ($WILDFLY_HOME/modules).

Parameters

The following parameters are available in the wildfly::config::module defined type:

source

Data type:

Variant[
    Pattern[/^\./],
    Pattern[/^file:\/\//],
    Pattern[/^puppet:\/\//],
    Stdlib::Httpsurl,
    Stdlib::Httpurl
  ]

Sets the source for this module, either a local file file://, a remote one http:// or puppet://.

template

Data type: String

Sets the EPP template to module.xml file. Default to 'wildfly/module.xml'.

Default value: 'wildfly/module.xml'

dependencies

Data type: Array

Sets the dependencies for this module e.g. javax.transaction.

Default value: []

system

Data type: Boolean

Whether this is a system (system/layers/base) module or not.

Default value: true

custom_file

Data type: Optional[String]

Sets a file source for module.xml. If set, template is ignored.

Default value: undef

wildfly::config::user

Generic Wildfly user management.

Parameters

The following parameters are available in the wildfly::config::user defined type:

password

Data type: String

User password.

file_name

Data type: String

Name of config file.

wildfly::config::user_groups

Manages groups for a Management User (mgmt-groups.properties).

Parameters

The following parameters are available in the wildfly::config::user_groups defined type:

groups

Data type: String

List of groups to associate with this user.

wildfly::config::user_roles

Manages roles for an Application User (application-roles.properties).

Parameters

The following parameters are available in the wildfly::config::user_roles defined type:

roles

Data type: String

List of roles to associate with this user.

wildfly::datasources::datasource

Configures a datasource

Parameters

The following parameters are available in the wildfly::datasources::datasource defined type:

config

Data type: Optional[Hash]

datasource config

Default value: undef

target_profile

Data type: Optional[String]

for domain mode you need to set this parameter

Default value: undef

wildfly::datasources::db_property

Configures connection property in a database

Parameters

The following parameters are available in the wildfly::datasources::db_property defined type:

database

Data type: String

datasource database

value

Data type: Optional[String]

datasource db property value

Default value: undef

target_profile

Data type: Optional[String]

for domain mode you need to set this parameter

Default value: undef

wildfly::datasources::driver

Configures a driver

Parameters

The following parameters are available in the wildfly::datasources::driver defined type:

driver_name

Data type: String

datasource driver

driver_module_name

Data type: String

datasource driver module name

driver_class_name

Data type: Optional[String]

datasource driver class name

Default value: undef

driver_xa_datasource_class_name

Data type: Optional[String]

datasource driver xa class name

Default value: undef

target_profile

Data type: Optional[String]

for domain mode you need to set this parameter

Default value: undef

wildfly::datasources::xa_datasource

Configures a xa_datasource

Parameters

The following parameters are available in the wildfly::datasources::xa_datasource defined type:

config

Data type: Optional[Hash]

xa_datasource config

Default value: undef

target_profile

Data type: Optional[String]

for domain mode you need to set this parameter

Default value: undef

wildfly::deployment

Manages a deployment (JAR, EAR, WAR) in Wildfly. This define is a wrapper for wildfly_deployment that defaults to your local Wildfly installation.

Parameters

The following parameters are available in the wildfly::deployment defined type:

ensure

Data type: Enum[present, absent]

Whether the deployment should exist (present) or not (absent).

Default value: present

source

Data type:

Variant[
    Pattern[/^file:\/\//],
    Pattern[/^puppet:\/\//],
    Stdlib::Httpsurl,
    Stdlib::Httpurl
  ]

Sets the source for this deployment, either a local file file:// or a remote file http://.

timeout

Data type: Optional[Integer]

Sets the timeout to deploy this resource.

Default value: undef

server_group

Data type: Optional[String]

Sets the target server-group for this deployment.

Default value: undef

operation_headers

Data type: Hash

Sets operation-headers (e.g. { 'allow-resource-service-restart' => true, 'rollback-on-runtime-failure' => false, 'blocking-timeout' => 600}) to be used when creating/destroying this deployment.

Default value: {}

username

Data type: String

Wildfly's management user to be used internally.

Default value: $wildfly::mgmt_user['username']

password

Data type: String

The password for Wildfly's management user.

Default value: $wildfly::mgmt_user['password']

host

Data type: String

The IP address or FQDN of the JBoss Management service.

Default value: $wildfly::properties['jboss.bind.address.management']

port

Data type: String

The port of the JBoss Management service.

Default value: $wildfly::properties['jboss.management.http.port']

secure

Data type: Boolean

Use https port or http port.

Default value: $wildfly::secure_mgmt_api

wildfly::domain::server_group

Manages a domain server group.

Parameters

The following parameters are available in the wildfly::domain::server_group defined type:

ensure

Data type: Enum[present, absent]

Whether the resource should exist (present) or not (absent).

Default value: present

profile

Data type: Optional[String]

Sets profile referenced by the server-group.

Default value: undef

socket_binding_group

Data type: Optional[String]

Sets socket-binding-group referenced by the server-group.

Default value: undef

socket_binding_port_offset

Data type: Integer

Sets socket-binding-port-offset server-config port offset.

Default value: 0

jvm_name

Data type: String

Sets jvm name configured to the server-group.

Default value: 'default'

jvm_config

Data type: Hash

Sets jvm configurations like , etc.

Default value: {}

wildfly::host::server_config

Manages a host server-config. This defined type should be used at a slave machine (considering domain mode). You can use this resource to remove default servers server-one and server-two (present at default host-slave.xml). If you removed the default server-groups in the domain controller (main-server-group and other-server-group) you'll need to ensure that the resources are applied after the Wildfly installation and before the module starts to setup Wildfly to enable and run the service (or the host controller service will not run at all because the servers are associated to server-groups that doesn't exist). For this case, use a overlay_class (wildfly::overlay_class param) or the following snippet:

wildfly::host::server_config { ['server-one', 'server-two']: ensure => absent, hostname => $hostname, username => $username, password => $password, require => Class['wildfly::install'], before => Class['wildfly::setup'], }

Parameters

The following parameters are available in the wildfly::host::server_config defined type:

ensure

Data type: Enum[present, absent]

Whether the resource should exist (present) or not (absent).

Default value: present

server_group

Data type: Optional[String]

Sets server-group associated to server-config.

Default value: undef

offset

Data type: Integer

Sets server-config port offset.

Default value: 0

auto_start

Data type: Boolean

Sets server to autostart with JBoss Service.

Default value: true

wildfly_dir

Data type: Stdlib::Unixpath

JBOSS_HOME. i.e. The directory where your Wildfly will live.

Default value: $wildfly::dirname

host_config

Data type: Optional[Wildfly::Config_file]

Sets Wildfly Host configuration file used for initialization in 'domain' mode.

Default value: $wildfly::host_config

hostname

Data type: Optional[String]

Name used to identify host using JBoss CLI (/host=${hostname}).

Default value: undef

username

Data type: Optional[String]

Username to connect to domain controller.

Default value: undef

password

Data type: Optional[String]

Password to connect to domain controller.

Default value: undef

controller_address

Data type: Optional[String]

Domain controller address where the host will connect to configure the server-config.

Default value: $wildfly::properties['jboss.domain.master.address']

controller_mgmt_port

Data type: Integer

Sets domain controller management port.

Default value: 9990

start_server_after_created

Data type: Boolean

Sets if the server should be started right after created.

Default value: true

wildfly::jgroups::stack

Configures jgroups stacks

Parameters

The following parameters are available in the wildfly::jgroups::stack defined type:

protocols

Data type: Array[Variant[Hash, String]]

List of protocols to use

transport

Data type: Hash

Transport config hash.

wildfly::jgroups::stack::tcp

Configures jgroups TCP-based stacks.

Parameters

The following parameters are available in the wildfly::jgroups::stack::tcp defined type:

properties

Data type: Hash

TCP properties hash.

wildfly::jgroups::stack::tcpgossip

Configures a tcpgossip stack.

Parameters

The following parameters are available in the wildfly::jgroups::stack::tcpgossip defined type:

initial_hosts

Data type: String

Comma delimited list of hosts to be contacted for initial membership.

num_initial_members

Data type: Integer

Number of initial members.

timeout

Data type: Integer

Max time for socket creation. Default is 3000 msec.

Default value: 3000

wildfly::jgroups::stack::tcpping

Configures a tcpping stack.

Parameters

The following parameters are available in the wildfly::jgroups::stack::tcpping defined type:

initial_hosts

Data type: String

Comma delimited list of hosts to be contacted for initial membership.

num_initial_members

Data type: Integer

Number of initial members.

timeout

Data type: Integer

Max time for socket creation. Default is 3000 msec.

Default value: 3000

port_range

Data type: Integer

Number of additional ports to be probed for membership. A port_range of 0 does not probe additional ports. Example: initial_hosts=A[7800] port_range=0 probes A:7800, port_range=1 probes A:7800 and A:7801.

Default value: 0

wildfly::logging::category

Configures a log category

Parameters

The following parameters are available in the wildfly::logging::category defined type:

level

Data type: Enum['DEBUG', 'INFO', 'ERROR']

Log level

Default value: 'INFO'

use_parent_handlers

Data type: Boolean

Wheter to use parent handlers or not

Default value: false

handlers

Data type: Optional[Array[String[1]]]

List of log handlers to use

Default value: undef

target_profile

Data type: Optional[String]

For domain mode you need to set this parameter

Default value: undef

wildfly::messaging::activemq::connection_factory

Configures a connection factory

Parameters

The following parameters are available in the wildfly::messaging::activemq::connection_factory defined type:

entries

Data type: Any

Default value: undef

connectors

Data type: Any

Default value: undef

target_profile

Data type: Any

Default value: undef

wildfly::messaging::activemq::queue

Configures a queue

Parameters

The following parameters are available in the wildfly::messaging::activemq::queue defined type:

entries

Data type: Any

Default value: undef

durable

Data type: Any

Default value: undef

selector

Data type: Any

Default value: undef

target_profile

Data type: Any

Default value: undef

wildfly::messaging::activemq::topic

Configures a topic

Parameters

The following parameters are available in the wildfly::messaging::activemq::topic defined type:

entries

Data type: Any

target_profile

Data type: Any

Default value: undef

wildfly::messaging::queue

Configures a queue

Parameters

The following parameters are available in the wildfly::messaging::queue defined type:

entries

Data type: Any

Default value: undef

durable

Data type: Any

Default value: undef

selector

Data type: Any

Default value: undef

target_profile

Data type: Any

Default value: undef

wildfly::messaging::topic

Configures a topic

Parameters

The following parameters are available in the wildfly::messaging::topic defined type:

entries

Data type: Any

target_profile

Data type: Any

Default value: undef

wildfly::modcluster::config

Configures modcluster subsystem

Parameters

The following parameters are available in the wildfly::modcluster::config defined type:

advertise_socket

Data type: Any

Default value: 'modcluster'

connector

Data type: Any

Default value: 'ajp'

type

Data type: Any

Default value: 'busyness'

excluded_contexts

Data type: Any

Default value: undef

balancer

Data type: Any

Default value: undef

load_balancing_group

Data type: Any

Default value: undef

proxy_list

Data type: Any

Default value: undef

proxies

Data type: Any

Default value: undef

proxy_url

Data type: Any

Default value: undef

sticky_session

Data type: Any

Default value: undef

target_profile

Data type: Any

Default value: undef

wildfly::patch::offline

Applies patches offline.

Parameters

The following parameters are available in the wildfly::patch::offline defined type:

source

Data type: Stdlib::Unixpath

path to patch file.

override_all

Data type: Boolean

Whether it should solve all conflicts by overriding current files.

Default value: false

override

Data type: Array

List of files to be overridden.

Default value: []

preserve

Data type: Array

List of files to be preserved.

Default value: []

wildfly::patch::online

Applies patches online. Requires server restart.

Parameters

The following parameters are available in the wildfly::patch::online defined type:

source

Data type: Stdlib::Unixpath

path to patch file.

override_all

Data type: Boolean

Whether it should solve all conflicts by overriding current files.

Default value: false

override

Data type: Array

List of files to be overridden.

Default value: []

preserve

Data type: Array

List of files to be preserved.

Default value: []

wildfly::reload

Performs a system reload when a reload is required server-state=reload-required. This define is a wrapper for wildfly_restart that defaults to your local Wildfly installation. It is commonly used as a subscriber of a resource that requires reload.

Parameters

The following parameters are available in the wildfly::reload defined type:

retries

Data type: Integer

Sets the number of retries to check if service is available.

Default value: 3

wait

Data type: Integer

Sets the amount of time in seconds that this resource will wait for the service to be available before a attempt.

Default value: 10

username

Data type: String

Wildfly's management user to be used internally.

Default value: $wildfly::mgmt_user['username']

password

Data type: String

The password for Wildfly's management user.

Default value: $wildfly::mgmt_user['password']

host

Data type: String

The IP address or FQDN of the JBoss Management service.

Default value: $wildfly::properties['jboss.bind.address.management']

port

Data type: String

The port of the JBoss Management service.

Default value: $wildfly::properties['jboss.management.http.port']

secure

Data type: Boolean

Use https port or http port.

Default value: $wildfly::secure_mgmt_api

wildfly::resource

Manages a Wildfly configuration resource: e.g /subsystem=datasources/data-source=MyDS or /subsystem=datasources/jdbc-driver=postgresql. Virtually anything in your configuration XML file that can be manipulated using JBoss-CLI could be managed by this defined type. This define is a wrapper for wildfly_resource that defaults to your local Wildfly installation.

Parameters

The following parameters are available in the wildfly::resource defined type:

ensure

Data type: Enum[present, absent]

Whether the resource should exist (present) or not (absent).

Default value: present

recursive

Data type: Boolean

Whether it should manage the resource recursively or not.

Default value: false

undefine_attributes

Data type: Boolean

Whether it should undefine attributes with undef value.

Default value: false

content

Data type: Hash

Sets the content/state of the target resource.

Default value: {}

operation_headers

Data type: Hash

Sets operation-headers (e.g. { 'allow-resource-service-restart' => true, 'rollback-on-runtime-failure' => false, 'blocking-timeout' => 600}) to be used when creating/destroying this resource.

Default value: {}

profile

Data type: Optional[String]

Sets the target profile to prefix resource name. Requires domain mode.

Default value: undef

username

Data type: String

Wildfly's management user to be used internally.

Default value: $wildfly::mgmt_user['username']

password

Data type: String

The password for Wildfly's management user.

Default value: $wildfly::mgmt_user['password']

host

Data type: String

The IP address or FQDN of the JBoss Management service.

Default value: $wildfly::properties['jboss.bind.address.management']

port

Data type: String

The port of the JBoss Management service.

Default value: $wildfly::properties['jboss.management.http.port']

secure

Data type: Boolean

Use https port or http port.

Default value: $wildfly::secure_mgmt_api

wildfly::restart

Performs a full restart system when a restart is required server-state=restart-required. This define is a wrapper for wildfly_restart that defaults to your local Wildfly installation. It is commonly used as a subscriber of a resource that requires restart.

Parameters

The following parameters are available in the wildfly::restart defined type:

retries

Data type: Integer

Sets the number of retries to check if service is available.

Default value: 3

wait

Data type: Integer

Sets the amount of time in seconds that this resource will wait for the service to be available before a attempt.

Default value: 20

username

Data type: String

Wildfly's management user to be used internally.

Default value: $wildfly::mgmt_user['username']

password

Data type: String

The password for Wildfly's management user.

Default value: $wildfly::mgmt_user['password']

host

Data type: String

The IP address or FQDN of the JBoss Management service.

Default value: $wildfly::properties['jboss.bind.address.management']

port

Data type: String

The port of the JBoss Management service.

Default value: $wildfly::properties['jboss.management.http.port']

secure

Data type: Boolean

Use https port or http port.

Default value: $wildfly::secure_mgmt_api

wildfly::security::domain

This is a defined resource type for creating a security domain Please also see: https://docs.jboss.org/author/display/WFLY9/Security+subsystem+configuration

[domain_name] Name of the security domain to be created on the Wildfly server.

[login_modules] A hash with a specification of all login-modules to add to the domain. Also see the documentation of wildfly::security::login_module Example: { 'login-module-1' => { domain_name => 'my-security-domain', code => 'DirectDomain', flag => 'required', module_options => { realm => 'my-security-realm' } }, 'login-module-2' => { ... } }

Parameters

The following parameters are available in the wildfly::security::domain defined type:

domain_name

Data type: String

Default value: $title

login_modules

Data type: Hash

Default value: {}

wildfly::security::group_role_mapping

The wildfly::security::group_role_mapping class.

Parameters

The following parameters are available in the wildfly::security::group_role_mapping defined type:

role

Data type: Any

group

Data type: Any

Default value: $title

realm

Data type: Any

Default value: undef

wildfly::security::ldap_realm

This defined resource configures a (opiniated!!) LDAP security realm.

Based on (among others):

The realm created is a security realm that can be associated with a management interface and used to control access to the management and/or application services. This LDAP security realm uses LDAP as the user repository to determine who is trying to log in (authentication). The authorization in this LDAP realm performs a group search in the LDAP server, where the group entry contains an attribute referencing it's members (member attribute). A simple filter configuration to identify the users distinguished name from their username is then used to create the mapping between user and LDAP groups. This configuration assumes the 'group-to-principal' and 'username-filter' to be used. Future versions of this type might also allow 'principal-to-group' and 'advanced-filter'/'username-is-dn'. It does not at this time. Also this module assumes the same type of cache to be used for both group and username searches.

When using this security realm, you should also create group mappings in order to map LDAP group names to the default Wildfly roles. See: wildfly_wrapper::ldap_group_mapping.

[ldap_url] URL to connect to the LDAP server. E.g.: 'ldap://ldap.my.org:389'

[ldap_search_dn] DN to use to connect to LDAP. E.g. 'uid=appserver,cn=users,ou=services,o=my,c=org'

[ldap_search_credential] Password (plain text) to use to connect to LDAP. This is the password for the user specified in ldap_search_dn.

[ldap_user_base_dn] The context from where to start searching users. E.g. 'cn=users,ou=services,o=my,c=org'

[authorization_group_base_dn] The context from where to start searching for groups. E.g. 'cn=groups,ou=services,o=my,c=org'

[realm_name] The name of this LDAP Security Realm. Default: $title of this resource

[authentication_user_dn] The name of the attribute which is the user's distinguished name. Default: dn

[authentication_username_attribute] The name of the attribute to search for the user. This filter will then perform a simple search where the username entered by the user matches the attribute specified here.

[authentication_username_load] The name of the attribute that should be loaded from the authenticated users LDAP entry to replace the username that they supplied, e.g. convert an e-mail address to an ID or correct the case entered. Default: undef

[authentication_recursive] Whether the search should be recursive. Default: false

[authentication_allow_empty_passwords] Should empty passwords be accepted from the user being authenticated. Default: false

[authorization_group_name] An enumeration to identify if groups should be referenced using a simple name or their distinguished name. Defalt value: SIMPLE

[authorization_group_name_attribute] Which attribute on a group entry is it's simple name. Default: cn When setting to undef the Wildfly default is used, which is: uid

[authorization_group_dn_attribute] Which attribute on a group entry is it's distinguished name. Default: dn

[authorization_group_search_by] Should searches be performed using simple names or distinguished names? Default: DISTINGUISHED_NAME

[authorization_principal_attribute] The attribute on the group entry that references the principal. Default value: member

[authorization_group_recursive] Should levels below the starting point be recursively searched? Default: true. When setting to undef the Wildfly default will be used which is: false

[authorization_group_iterative] Should further searches be performed to identify groups that the groups identified are a member of (groups of groups)? Default: false

[authorization_prefer_original_conn] After following a referral should subsequent searches prefer the original connection or use the connection of the last referral. Default: true

[authorization_user_name_attribute] The attribute on the user entry that is their username. Default: uid

[authorization_user_dn_attribute] The attribute on the user entry that contains their distinguished name. Default value: dn

[authorization_user_force] Authentication may have already converted the username to a distinguished name, force this to occur again before loading groups. Default: false

[authorization_user_recursive] Should levels below the starting point be recursively searched (e.g. sub ou's)? Default: false

[apply_to_management_interface] Apply the created security realm to the Wildfly management interface? Default: false

[cache_type] Defines which type of cache to use for previous username-filter results. Valid values: by-search-time or by-access-time. Default: by-access-time.

[max_cache_size] The maximum size of the cache before the oldest items are removed to make room for new entries. Default: 1000 When setting to undef the Wildfly default will be used which is 0 (unlimited)

[cache_eviction_time] The time in seconds until an entry should be evicted from the cache. Default: 900

[cache_failures] Should failures be cached? Default: false

Parameters

The following parameters are available in the wildfly::security::ldap_realm defined type:

ldap_url

Data type: String

ldap_search_dn

Data type: String

ldap_search_credential

Data type: String

ldap_user_base_dn

Data type: String

authorization_group_base_dn

Data type: String

realm_name

Data type: String

Default value: $title

authentication_username_attribute

Data type: String

Default value: 'uid'

authentication_recursive

Data type: Boolean

Default value: true

authentication_allow_empty_passwords

Data type: Boolean

Default value: false

authorization_group_name

Data type: String

Default value: 'SIMPLE'

authorization_group_name_attribute

Data type: String

Default value: 'cn'

authorization_group_dn_attribute

Data type: String

Default value: 'dn'

authorization_group_search_by

Data type: String

Default value: 'DISTINGUISHED_NAME'

authorization_principal_attribute

Data type: String

Default value: 'member'

authorization_group_recursive

Data type: Boolean

Default value: true

authorization_group_iterative

Data type: Boolean

Default value: false

authorization_prefer_original_conn

Data type: Boolean

Default value: true

authorization_user_name_attribute

Data type: String

Default value: 'uid'

authorization_user_dn_attribute

Data type: String

Default value: 'dn'

authorization_user_force

Data type: Boolean

Default value: false

authorization_user_recursive

Data type: Boolean

Default value: false

apply_to_management_interface

Data type: Boolean

Default value: false

cache_type

Data type: Enum['by-search-time', 'by-access-time']

Default value: 'by-access-time'

max_cache_size

Data type: Integer[0]

Default value: 1000

cache_eviction_time

Data type: Integer[0]

Default value: 900

cache_failures

Data type: Boolean

Default value: false

authentication_user_dn

Data type: Optional[String]

Default value: undef

authentication_username_load

Data type: Optional[String]

Default value: undef

wildfly::security::login_module

This is the login-module configuration for a security domain Multiple login-modules can be specified for a single security domain.

[domain_name] Name of the security domain to be created on the Wildfly server.

[code] Login module code to use. See: https://docs.jboss.org/author/display/WFLY9/Authentication+Modules

[flag] The flag controls how the module participates in the overall procedure. Allowed values are: requisite, required, sufficient or optional. Default: required.

[module_options] A hash of module options containing name/value pairs. E.g.: { 'name1' => 'value1', 'name2' => 'value2' } or in Hiera:

 module_options:
  name1: value1
  name2: value2

Parameters

The following parameters are available in the wildfly::security::login_module defined type:

code

Data type: String

domain_name

Data type: String

Default value: $title

flag

Data type: Enum['requisite', 'required', 'sufficient', 'optional']

Default value: 'required'

module_options

Data type: Hash

Default value: {}

wildfly::security::user_role_mapping

The wildfly::security::user_role_mapping class.

Parameters

The following parameters are available in the wildfly::security::user_role_mapping defined type:

role

Data type: Any

username

Data type: Any

Default value: $title

realm

Data type: Any

Default value: undef

wildfly::system::property

Configures a system property

Parameters

The following parameters are available in the wildfly::system::property defined type:

value

Data type: Any

Default value: undef

target_profile

Data type: Any

Default value: undef

wildfly::undertow::https

Configures a connector

Parameters

The following parameters are available in the wildfly::undertow::https defined type:

socket_binding

Data type: Any

Default value: undef

keystore_path

Data type: Any

Default value: undef

keystore_relative_to

Data type: Any

Default value: undef

keystore_password

Data type: Any

Default value: undef

key_alias

Data type: Any

Default value: undef

key_password

Data type: Any

Default value: undef

target_profile

Data type: Any

Default value: undef

enabled_protocols

Data type: Any

Default value: undef

enabled_cipher_suites

Data type: Any

Default value: undef

wildfly::web::connector

The wildfly::web::connector class.

Parameters

The following parameters are available in the wildfly::web::connector defined type:

scheme

Data type: Any

protocol

Data type: Any

socket_binding

Data type: Any

enable_lookups

Data type: Any

secure

Data type: Any

wildfly::web::ssl

The wildfly::web::ssl class.

Parameters

The following parameters are available in the wildfly::web::ssl defined type:

connector

Data type: Any

password

Data type: Any

protocol

Data type: Any

cipher_suite

Data type: Any

key_alias

Data type: Any

certificate_key_file

Data type: Any

ca_certificate_file

Data type: Any

Default value: undef

Resource types

wildfly_cli

Executes JBoss-CLI commmands

Properties

The following properties are available in the wildfly_cli type.

executed

Whether the command should be executed or not

Default value: true

Parameters

The following parameters are available in the wildfly_cli type.

command

The actual commmand to execute

host

Host of Management API. Defaults to 127.0.0.1

Default value: 127.0.0.1

onlyif

If this parameter is set, then CLI command will only run if this command returns false

password

JBoss Management User Password

port

Management port. Defaults to 9990

Default value: 9990

provider

The specific backend to use for this wildfly_cli resource. You will seldom need to specify this --- Puppet will usually discover the appropriate provider for your platform.

refreshonly

Valid values: true, false, yes, no

If this parameter is set, then CLI command will only run if the resource was notified

Default value: false

secure

Use TLS to connect with the management API

Default value: false

skip_absent

Valid values: true, false, yes, no

If this parameter is set, then CLI command will only run if resource is present

Default value: false

unless

If this parameter is set, then CLI command will only run if this command returns true

username

JBoss Management User

wildfly_deployment

Manages JBoss deployment

Properties

The following properties are available in the wildfly_deployment type.

content

SHA1 of deployed content

Default value: ''

ensure

Valid values: present, absent

The basic property that the resource should be in.

Default value: present

Parameters

The following parameters are available in the wildfly_deployment type.

host

Host of Management API. Defaults to 127.0.0.1

Default value: 127.0.0.1

name

namevar

Deployable name

operation_headers

Operation headers.

password

JBoss Management User Password

port

Management port. Defaults to 9990

Default value: 9990

provider

The specific backend to use for this wildfly_deployment resource. You will seldom need to specify this --- Puppet will usually discover the appropriate provider for your platform.

secure

Use TLS to connect with the management API

Default value: false

server_group

Deployment target server-group. Domain mode only.

source

Deployment source file. (e.g. /tmp/file.war)

timeout

Operation timeout. Defaults to 120

Default value: 300

username

JBoss Management User

wildfly_resource

Manages JBoss resources like datasources, messaging, ssl, modcluster, etc

Properties

The following properties are available in the wildfly_resource type.

ensure

Valid values: present, absent

The basic property that the resource should be in.

Default value: present

state

Resource state

Parameters

The following parameters are available in the wildfly_resource type.

host

namevar

Host of Management API. Defaults to 127.0.0.1

Default value: 127.0.0.1

operation_headers

Operation headers.

password

JBoss Management User Password

path

namevar

JBoss Resource Path

port

namevar

Management port. Defaults to 9990

Default value: 9990

provider

The specific backend to use for this wildfly_resource resource. You will seldom need to specify this --- Puppet will usually discover the appropriate provider for your platform.

recursive

Recursively manage resource. Defaults to false

Default value: false

secure

Use TLS to connect with the management API

Default value: false

username

JBoss Management User

wildfly_restart

Manage JBoss restarts.

Properties

The following properties are available in the wildfly_restart type.

pending

Whether the restart should be executed or not

Default value: true

Parameters

The following parameters are available in the wildfly_restart type.

host

Host of Management API. Defaults to 127.0.0.1

Default value: 127.0.0.1

name

namevar

Informational name

password

JBoss Management User Password

port

Management port. Defaults to 9990

Default value: 9990

provider

The specific backend to use for this wildfly_restart resource. You will seldom need to specify this --- Puppet will usually discover the appropriate provider for your platform.

reload

Whether the server should only reload instead of restarting.

Default value: false

retries

Number of times it will check if server is running after a restart

Default value: 3

secure

Use TLS to connect with the management API

Default value: false

username

JBoss Management User

wait

Amount of time (in seconds) that it will wait before next attempt

Default value: 10

Functions

os_config

Type: Puppet Language

Default OS configuration for a specific distribution and version.

os_config(String $distribution, String $version)

Default OS configuration for a specific distribution and version.

Returns: Hash[String, String] OS configuration: user, group, dirname and console_log.

distribution

Data type: String

Wildfly distribution: 'wildfly' or 'jboss-eap'.

version

Data type: String

Wildfly version.

wildfly::objectify

Type: Ruby 4.x API

Converts a LIST of STRINGs and OBJECTs into an OBJECT of OBJECTs.

wildfly::objectify(Array[Variant[String, Hash[String, Any]]] $input_list)

Converts a LIST of STRINGs and OBJECTs into an OBJECT of OBJECTs.

Returns: Hash

input_list

Data type: Array[Variant[String, Hash[String, Any]]]

wildfly::patch_args

Type: Puppet Language

Generate args for JBoss-CLI patch command.

wildfly::patch_args(Stdlib::Unixpath $source, Boolean $override_all, Array $override, Array $preserve)

Generate args for JBoss-CLI patch command.

Returns: String args for patch command.

source

Data type: Stdlib::Unixpath

path to patch file.

override_all

Data type: Boolean

Whether it should solve all conflicts by overriding current files.

override

Data type: Array

List of files to be overridden.

preserve

Data type: Array

List of files to be preserved.

wildfly::profile_path

Type: Puppet Language

Transform a profile name to a JBoss-CLI profile path.

wildfly::profile_path(Optional[String] $profile)

Transform a profile name to a JBoss-CLI profile path.

Returns: String a profile path or an empty path.

profile

Data type: Optional[String]

name of the profile (e.g. full, full-ha, ha)

wildfly::service_config

Type: Puppet Language

Default service configuration for a specific distribution, version execution mode and initsystem.

wildfly::service_config(String $distribution, String $version, String $mode)

Default service configuration for a specific distribution, version execution mode and initsystem.

Returns: Hash[String, String] service configuration: name, configuration file and template and bundled init scripts.

distribution

Data type: String

Wildfly distribution: 'wildfly' or 'jboss-eap'.

version

Data type: String

Wildfly version.

mode

Data type: String

Wildfly execution mode will run, 'standalone' or 'domain'.

Data types

Wildfly::Config_file

The Wildfly::Config_file data type.

Alias of Pattern[/^\w*(-?\w*)*\.xml$/]

Wildfly::Distribution

The Wildfly::Distribution data type.

Alias of Enum['wildfly', 'jboss-eap']

Wildfly::Mode

The Wildfly::Mode data type.

Alias of Enum['standalone', 'domain']