Understanding How the PeopleSoft DPKs Use Puppet

The PeopleSoft DPKs use Puppet to automate the process of deploying and configuring a PeopleSoft environment. Oracle has created custom modules and types to deploy and configure a PeopleSoft environment. These modules make use of pre-built modules from Puppet Forge. All the PeopleSoft developed modules and types along with the pre-built modules are packaged with PeopleTools server DPKs as well as PeopleSoft application DPKs. In addition, the PeopleSoft and PeopleTools DPKs package Hiera YAML files with default data values that can be used to set up a fully working PeopleSoft environment out-of-the-box.

The modules delivered with the PeopleSoft DPKs adhere to the following Puppet design patterns:

  • Use Hiera as an external data store

    See Understanding Hiera.

  • Do not use Hiera at any point in component modules

  • Apply the Puppet Roles and Profiles pattern

    See Understanding PeopleSoft Puppet Profiles and Roles Modules.

  • Ensure idempotency in component modules so that your modules create the same result regardless of the initial state of the underlying resource

  • Follow the module naming and documentation guidelines from Puppet Labs.

PeopleSoft Puppet modules are broadly divided into the following three categories. These modules are described in more detail in the following sections.

  • Component Modules

    • Atomic — building block modules that work on a single abstraction

    • Low-level — contain minimal dependencies on other modules

  • Profiles Modules

    • Assemble data from Hiera to be used for configuring the hosts

    • Do not operate on single artifacts such as files or users

  • Roles Modules

    Focus on operational responsibilities of the hosts