Oracle publishes official Chef and Puppet samples on GitHub by Mark Nelson and Edwin Biemond



Oracle official sample Chef cookbooks and Puppet modules are now available on Oracle’s official GitHub page at and for Java, WebLogic and Fusion Middleware.

Chef and Puppet are arguably the most popular provisioning frameworks and we would like to help you with your WebLogic and Fusion Middleware provisioning by publishing samples for Chef and Puppet.  The Chef and Puppet sample modules and cookbooks are almost the same and are using the same development frameworks.

We start this series of posts with an introduction what these cookbooks and modules can do and provide a simple quickstart how to create a WebLogic domain in Chef or Puppet on a Windows, Linux or Solaris host. In the following posts we will install FMW software, patch and extend a domain with FMW software.

These Chef cookbooks and Puppet modules allow you install WebLogic together with Fusion Middleware on any Linux, Solaris or Windows host. The cookbooks should work in Chef 11 & 12 and can be used with Chef server or with Chef Solo. The modules should work on Puppet 3 & 4 and it should not matter if you use Puppet Enterprise, an agent or just use puppet apply.

The first release on github will contain the following cookbooks and modules:

  • fmw_jdk, installs JDK 7 or 8 and optionally configures the urandom random number generator service for Linux distributions.
  • fmw_wls, installs WebLogic 11g or 12c and optionally create thes Oracle user and group on solaris and linux.
  • fmw_bsu, patches a WebLogic 11g middleware home.
  • fmw_opatch, patches WebLogic 12c or any Fusion Middleware 11g, 12c product.
  • fmw_inst, installs FMW 11g, 12c product including Oracle SOA Suite, Service Bus, MFT, OIM, ADF Runtime, and WebCenter.
  • fmw_rcu, creates a 11g, 12c Common or SOA Suite FMW repository on an Oracle Database.
  • fmw_domain, creates a domain in development mode, configures the node manager, start the admin server and extend the domain with ADF/JRF, Service Bus, SOA Suite and optionally with BAM and Enterprise Scheduler.

A couple of important notes about these cookbooks and modules:

  • They don’t download any (free or licensed) software from OTN, Oracle support or edelivery, this is the responsibility of the user/customer.
  • Oracle Support won’t support these cookbooks or modules but you can raise issues or send us pull requests on github.
  • Binaries should be locally accessible in a directory or a network share.
  • They will create a domain only in development mode.
  • They won’t do multi-node provisioning like pack/unpack of a domain on cluster nodes.
  • Passwords in Chef can be defined in databags and in Puppet you need to do it yourself in Hiera.
  • They have dependencies to each other and will automatically include or require the depended manifest or recipe.
  • The default recipe/manifest does not do anything, you have to use the specific recipes or manifests. In Puppet the default manifest will be used to set some module defaults.

Detailed overview

These cookbooks and modules contains recipes and manifests with resource/providers in Chef and type/providers for Puppet. The recipes and manifest are a quick way to get you started and these minimal recipes are just calling the matching resource/type providers. You can call these yourself in one of your own cookbooks. Read the complete article here.

WebLogic Partner Community

For regular information become a member in the WebLogic Partner Community please visit: ( OPN account required). If you need support with your account please contact the Oracle Partner Business Center.

Blog Twitter LinkedIn Forum Wiki

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.