Forge Home


Oracle Solaris Providers


13,663 latest version

4.1 quality score

We run a couple of automated
scans to help you access a
module's quality. Each module is
given a score based on how well
the author has formatted their
code and documentation and
modules are also checked for
malware using VirusTotal.

Please note, the information below
is for guidance only and neither of
these methods should be considered
an endorsement by Puppet.

Version information

  • 2.0.1 (latest)
  • 1.2.2
released Sep 13th 2017
This version is compatible with:

Start using this module

  • r10k or Code Manager
  • Bolt
  • Manual installation
  • Direct download

Add this module to your Puppetfile:

mod 'shawnferry-solaris_providers', '2.0.1'
Learn more about managing modules with a Puppetfile

Add this module to your Bolt project:

bolt module add shawnferry-solaris_providers
Learn more about using this module with an existing project

Manually install this module globally with Puppet module tool:

puppet module install shawnferry-solaris_providers --version 2.0.1

Direct download is not typically how you would use a Puppet module to manage your infrastructure, but you may want to download the module in order to inspect the code.



shawnferry/solaris_providers — version 2.0.1 Sep 13th 2017

solaris_providers Module for Puppet

Build Status

Table of Contents

  1. Overview
  2. Module Description - What the module does and why it is useful
  3. Setup - The basics of getting started with solaris_providers
  1. Usage - Configuration options and additional functionality
  2. Limitations - OS compatibility, etc.
  3. Development - Guide for contributing to the module


The Oracle Solaris Providers module includes Solaris-specific implementations of types and providers. These include some common features as well as features found exclusively on Oracle Solaris.

This is a direct fork of the presumably abandonded provider puboished by Oracle. Beyond simple naming and metadata changes this is identical to the provider expected to ship natively with Solaris 11.4/

Module Resource Type Reference

The Oracle Solaris Providers module currently enables configuration of the following:

  • Boot Environments via beadm
  • Naming Services via svccfg, svcprop
  • Image Pacakging System (IPS) configuration via pkg
  • Solaris Integrated Load Balancer (ILB) via ilbadm
  • Solaris Elastic Virtual Switch (EVS) via evsadm
  • Service Management Facility (SMF) Properties via svccfg, svcprop
  • IP Interface Configuration via ipadm
  • Datalink Management via dladm
  • ZFS ACLs and file Attributes via chmod

Oracle Solaris Providers override the core Puppet providers for:

  • Zones via zoneadm, zonecfg

See documentation index for details


For Solaris 11.x puppet module install oracle-solaris_providers

For Solaris 12.x pkg install puppet

No additional setup or configuration is required.

Beginning with solaris_providers

Common activities include modifying service properties

Two ways to change the domain configuration:

  1. Via svccfg

     # Service is provided by Core Puppet
     # Make sure dns/client:default is running
     # Required for notification of property change
     service { 'svc:/network/dns/client:default':
       ensure => 'running'
     # Set domain to oracle.lab, dns/client:default must be refreshed to
     # write the config to /etc/resolv.conf
     svccfg { 'svc:/network/dns/client:default/:properties/config/domain':
       ensure => 'present',
       type   => 'astring',
       value  => 'oracle.lab',
       notify => Service['svc:/network/dns/client:default'];
  2. Via the DNS provider

    # Set the domain to oracle.lab
    dns { 'current':
      domain => 'oracle.lab'

Set the server for puppet/agent

  # enable puppet:agent
  service { 'svc:/application/puppet:agent':
    ensure => 'running'
  # configure puppet:agent, refresh the service to write puppet.conf
  svccfg { 'svc:/application/puppet:agent/:properties/config/server':
    ensure => 'present',
    type   => 'astring',
    value  => 'puppet',
    notify => Service['svc:/application/puppet:agent'],


See links to extracted documents listed above.


These modules were created for use on Oracle Solaris 11 and 12.


Contributors should issue pull requests via Github see contributing and testing.


Package installation is via Puppet Core package provider

Solaris providers are shipped with Solaris in the oracle-solaris_providers IPS package and installed automatically with puppet. Use of the module from the Puppet Forge is possible. However, it will result in errors from pkg verify as the IPS oracle-solaris_providers package cannot be removed.