Puppet Class: wls_profile::admin_server

Inherits:
wls_profile
Defined in:
manifests/admin_server.pp

Summary

This is a highly customizable Puppet profile class to define a WebLogic Admin Server on your system.

Overview

+--+

wls_profile::admin_server

At its core just adding:

contain wls_profile::admin_server

Is enough to get a WebLogic 12.2.1.3. WebLogic domain running on your system.

But sometimes you have specific uses cases that are not handled well by the standard classes. This profile class allows you to add your own code to the execution.

Stages

Defining and starting a WebLogic Admin Server on your system goes through several stages(These are not puppet stages):

  • basic_domain Install the WebLogic software and create a basic (empty) domain

  • wls_servers Create the WebLogic machines, servers you want in your domain

  • wls_cluster Create the WebLogic cluster you want in your domain

  • wls_datasources Create the WebLogic datasources you want in your domain

  • wls_jms Setup your JMS configuration for your domain

  • wls_users_and_groups The WebLogic users and groups

  • pack_domain Pack the domain for transportation to an other WebLogic server

All these stages have a default implementation. This implementation is suitable to get started with. These classed all have parameters you can customize through hiera values. The defaults are specified in the module's data/default.yaml file.

before classes

But sometimes this is not enough, and you would like to add some extra definitions, you can, for example, add a Puppet class to be executed after the wls_datasources stage is done and before the wls_jms is done. You can do this by adding the next line to your yaml data:

wls_profile::admin_server::before_wls_jms:   my_profile::my_extra_class

after classes

You can do the same when you want to add code after one of the stage classes:

wls_profile::admin_server::after_wls_users_and_groups:   my_profile::my_extra_class

Skipping

Sometimes organizations use different modules and mechanisms to implement a feature, and you want to skip the class:

wls_profile::admin_server::pack_domain:   skip

Replacing

Or provide your own implementation:

wls_profile::admin_server::wls_datasources:   my_profile::my_own_implementation

This mechanism can be used for all named stages and makes it easy to move from an easy setup with a running standard WebLogic Admin server to a fully customized setup using a lot of your own classes plugged in.

Look at the description of the stages and their properties.

–++–

Parameters:

  • basic_domain (Optional[String]) (defaults to: undef)

    Use this value if you want to skip or use your own class for stage basic_domain.

    Use your own class

    You can use hiera to set this value. Here is an example: yaml wls_profile::admin_server::basic_domain: my_module::my_class

    Skip

    You can use hiera to set this value. Here is an example: yaml wls_profile::admin_server::basic_domain: skip

  • wls_servers (Optional[String]) (defaults to: undef)

    Use this value if you want to skip or use your own class for stage wls_servers.

    Use your own class

    You can use hiera to set this value. Here is an example: yaml wls_profile::admin_server::wls_servers: my_module::my_class

    Skip

    You can use hiera to set this value. Here is an example: yaml wls_profile::admin_server::wls_servers: skip

  • wls_cluster (Optional[String]) (defaults to: undef)

    Use this value if you want to skip or use your own class for stage wls_cluster.

    Use your own class

    You can use hiera to set this value. Here is an example: yaml wls_profile::admin_server::wls_cluster: my_module::my_class

    Skip

    You can use hiera to set this value. Here is an example: yaml wls_profile::admin_server::wls_cluster: skip

  • wls_datasources (Optional[String]) (defaults to: undef)

    Use this value if you want to skip or use your own class for stage wls_datasources.

    Use your own class

    You can use hiera to set this value. Here is an example: yaml wls_profile::admin_server::wls_datasources: my_module::my_class

    Skip

    You can use hiera to set this value. Here is an example: yaml wls_profile::admin_server::wls_datasources: skip

  • wls_jms (Optional[String]) (defaults to: undef)

    Use this value if you want to skip or use your own class for stage wls_jms.

    Use your own class

    You can use hiera to set this value. Here is an example: yaml wls_profile::admin_server::wls_jms: my_module::my_class

    Skip

    You can use hiera to set this value. Here is an example: yaml wls_profile::admin_server::wls_jms: skip

  • wls_users_and_groups (Optional[String]) (defaults to: undef)

    Use this value if you want to skip or use your own class for stage wls_users_and_groups.

    Use your own class

    You can use hiera to set this value. Here is an example: yaml wls_profile::admin_server::wls_users_and_groups: my_module::my_class

    Skip

    You can use hiera to set this value. Here is an example: yaml wls_profile::admin_server::wls_users_and_groups: skip

  • pack_domain (Optional[String]) (defaults to: undef)

    Use this value if you want to skip or use your own class for stage pack_domain.

    Use your own class

    You can use hiera to set this value. Here is an example: yaml wls_profile::admin_server::pack_domain: my_module::my_class

    Skip

    You can use hiera to set this value. Here is an example: yaml wls_profile::admin_server::pack_domain: skip

  • before_basic_domain (Optional[String]) (defaults to: undef)

    The name of the class you want to execute directly before the basic_domain class. You can use hiera to set this value. Here is an example: yaml wls_profile::admin_server::before_basic_domain: my_module::my_class

  • before_wls_servers (Optional[String]) (defaults to: undef)

    The name of the class you want to execute directly before the wls_servers class. You can use hiera to set this value. Here is an example: yaml wls_profile::admin_server::before_wls_servers: my_module::my_class

  • before_wls_cluster (Optional[String]) (defaults to: undef)

    The name of the class you want to execute directly before the wls_cluster class. You can use hiera to set this value. Here is an example: yaml wls_profile::admin_server::before_wls_cluster: my_module::my_class

  • before_wls_datasources (Optional[String]) (defaults to: undef)

    The name of the class you want to execute directly before the wls_datasources class. You can use hiera to set this value. Here is an example: yaml wls_profile::admin_server::before_wls_datasources: my_module::my_class

  • before_wls_jms (Optional[String]) (defaults to: undef)

    The name of the class you want to execute directly before the wls_jms class. You can use hiera to set this value. Here is an example: yaml wls_profile::admin_server::before_wls_jms: my_module::my_class

  • before_wls_users_and_groups (Optional[String]) (defaults to: undef)

    The name of the class you want to execute directly before the wls_users class. You can use hiera to set this value. Here is an example: yaml wls_profile::admin_server::before_wls_users: my_module::my_class

  • before_pack_domain (Optional[String]) (defaults to: undef)

    The name of the class you want to execute directly before the pack_domain class. You can use hiera to set this value. Here is an example: yaml wls_profile::admin_server::before_pack_domain: my_module::my_class

  • after_basic_domain (Optional[String]) (defaults to: undef)

    The name of the class you want to execute directly after the basic_domain class. You can use hiera to set this value. Here is an example: yaml wls_profile::admin_server::basic_domain: my_module::my_class

  • after_wls_servers (Optional[String]) (defaults to: undef)

    The name of the class you want to execute directly after the wls_servers class. You can use hiera to set this value. Here is an example: yaml wls_profile::admin_server::after_wls_servers: my_module::my_class

  • after_wls_cluster (Optional[String]) (defaults to: undef)

    The name of the class you want to execute directly after the wls_cluster class. You can use hiera to set this value. Here is an example: yaml wls_profile::admin_server::after_wls_cluster: my_module::my_class

  • after_wls_datasources (Optional[String]) (defaults to: undef)

    The name of the class you want to execute directly after the wls_datasources class. You can use hiera to set this value. Here is an example: yaml wls_profile::admin_server::after_wls_datasources: my_module::my_class

  • after_wls_jms (Optional[String]) (defaults to: undef)

    The name of the class you want to execute directly after the wls_jms class. You can use hiera to set this value. Here is an example: yaml wls_profile::admin_server::after_wls_jms: my_module::my_class

  • after_wls_users_and_groups (Optional[String]) (defaults to: undef)

    The name of the class you want to execute directly after the wls_users_and_groups class. You can use hiera to set this value. Here is an example: yaml wls_profile::admin_server::after_wls_users_and_groups: my_module::my_class

  • after_pack_domain (Optional[String]) (defaults to: undef)

    The name of the class you want to execute directly after the pack_domain class. You can use hiera to set this value. Here is an example: yaml wls_profile::admin_server::after_pack_domain: my_module::my_class



256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
# File 'manifests/admin_server.pp', line 256

class wls_profile::admin_server(
  Optional[String] $basic_domain = undef,
  Optional[String] $wls_servers = undef,
  Optional[String] $wls_cluster = undef,
  Optional[String] $wls_datasources = undef,
  Optional[String] $wls_jms = undef,
  Optional[String] $wls_users_and_groups = undef,
  Optional[String] $pack_domain = undef,
  Optional[String] $before_basic_domain = undef,
  Optional[String] $before_wls_servers = undef,
  Optional[String] $before_wls_cluster = undef,
  Optional[String] $before_wls_datasources = undef,
  Optional[String] $before_wls_jms = undef,
  Optional[String] $before_wls_users_and_groups = undef,
  Optional[String] $before_pack_domain = undef,
  Optional[String] $after_basic_domain = undef,
  Optional[String] $after_wls_servers = undef,
  Optional[String] $after_wls_cluster = undef,
  Optional[String] $after_wls_datasources = undef,
  Optional[String] $after_wls_jms = undef,
  Optional[String] $after_wls_users_and_groups = undef,
  Optional[String] $after_pack_domain = undef,
) inherits wls_profile {
  easy_type::staged_contain([
    'wls_profile::basic_domain',
    'wls_profile::admin_server::wls_servers',
    'wls_profile::admin_server::wls_cluster',
    'wls_profile::admin_server::wls_datasources',
    'wls_profile::admin_server::wls_jms',
    'wls_profile::admin_server::wls_users_and_groups',
    'wls_profile::admin_server::pack_domain',
  ])
}