components/puppet/patches/puppet-03-zonetype.patch
author Drew Fisher <drew.fisher@oracle.com>
Wed, 06 Mar 2013 14:19:46 -0700
changeset 1198 f9a4100102d8
permissions -rw-r--r--
PSARC/2013/005 Puppet 3.0.1 15846284 Integrate the Puppet CM
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
1198
f9a4100102d8 PSARC/2013/005 Puppet 3.0.1
Drew Fisher <drew.fisher@oracle.com>
parents:
diff changeset
     1
The puppet zone type changes that enable basic functionality with Solaris 11
f9a4100102d8 PSARC/2013/005 Puppet 3.0.1
Drew Fisher <drew.fisher@oracle.com>
parents:
diff changeset
     2
zones. Includes the type changes to fix a bug introduced by the putback of
f9a4100102d8 PSARC/2013/005 Puppet 3.0.1
Drew Fisher <drew.fisher@oracle.com>
parents:
diff changeset
     3
15886 into the puppet gate that prevented zones networking from being created.  
f9a4100102d8 PSARC/2013/005 Puppet 3.0.1
Drew Fisher <drew.fisher@oracle.com>
parents:
diff changeset
     4
f9a4100102d8 PSARC/2013/005 Puppet 3.0.1
Drew Fisher <drew.fisher@oracle.com>
parents:
diff changeset
     5
--- puppet-3.0.1/lib/puppet/type/zone.rb.orig	2013-02-15 16:08:16.530618507 -0700
f9a4100102d8 PSARC/2013/005 Puppet 3.0.1
Drew Fisher <drew.fisher@oracle.com>
parents:
diff changeset
     6
+++ puppet-3.0.1/lib/puppet/type/zone.rb	2013-02-15 08:24:18.530373776 -0700
f9a4100102d8 PSARC/2013/005 Puppet 3.0.1
Drew Fisher <drew.fisher@oracle.com>
parents:
diff changeset
     7
@@ -133,6 +133,12 @@
f9a4100102d8 PSARC/2013/005 Puppet 3.0.1
Drew Fisher <drew.fisher@oracle.com>
parents:
diff changeset
     8
     isnamevar
f9a4100102d8 PSARC/2013/005 Puppet 3.0.1
Drew Fisher <drew.fisher@oracle.com>
parents:
diff changeset
     9
   end
f9a4100102d8 PSARC/2013/005 Puppet 3.0.1
Drew Fisher <drew.fisher@oracle.com>
parents:
diff changeset
    10
 
f9a4100102d8 PSARC/2013/005 Puppet 3.0.1
Drew Fisher <drew.fisher@oracle.com>
parents:
diff changeset
    11
+  newparam(:config_profile) do
f9a4100102d8 PSARC/2013/005 Puppet 3.0.1
Drew Fisher <drew.fisher@oracle.com>
parents:
diff changeset
    12
+    desc "Path to the config_profile to use for installation of a solaris zone.
f9a4100102d8 PSARC/2013/005 Puppet 3.0.1
Drew Fisher <drew.fisher@oracle.com>
parents:
diff changeset
    13
+          This is set when providing a sysconfig profile instead of running the
f9a4100102d8 PSARC/2013/005 Puppet 3.0.1
Drew Fisher <drew.fisher@oracle.com>
parents:
diff changeset
    14
+	  sysconfig SCI tool on first boot of the zone."
f9a4100102d8 PSARC/2013/005 Puppet 3.0.1
Drew Fisher <drew.fisher@oracle.com>
parents:
diff changeset
    15
+  end
f9a4100102d8 PSARC/2013/005 Puppet 3.0.1
Drew Fisher <drew.fisher@oracle.com>
parents:
diff changeset
    16
+
f9a4100102d8 PSARC/2013/005 Puppet 3.0.1
Drew Fisher <drew.fisher@oracle.com>
parents:
diff changeset
    17
   newparam(:id) do
f9a4100102d8 PSARC/2013/005 Puppet 3.0.1
Drew Fisher <drew.fisher@oracle.com>
parents:
diff changeset
    18
     desc "The numerical ID of the zone.  This number is autogenerated
f9a4100102d8 PSARC/2013/005 Puppet 3.0.1
Drew Fisher <drew.fisher@oracle.com>
parents:
diff changeset
    19
       and cannot be changed."
f9a4100102d8 PSARC/2013/005 Puppet 3.0.1
Drew Fisher <drew.fisher@oracle.com>
parents:
diff changeset
    20
@@ -161,19 +167,44 @@
f9a4100102d8 PSARC/2013/005 Puppet 3.0.1
Drew Fisher <drew.fisher@oracle.com>
parents:
diff changeset
    21
 
f9a4100102d8 PSARC/2013/005 Puppet 3.0.1
Drew Fisher <drew.fisher@oracle.com>
parents:
diff changeset
    22
     # overridden so that we match with self.should
f9a4100102d8 PSARC/2013/005 Puppet 3.0.1
Drew Fisher <drew.fisher@oracle.com>
parents:
diff changeset
    23
     def insync?(is)
f9a4100102d8 PSARC/2013/005 Puppet 3.0.1
Drew Fisher <drew.fisher@oracle.com>
parents:
diff changeset
    24
-      return true unless is
f9a4100102d8 PSARC/2013/005 Puppet 3.0.1
Drew Fisher <drew.fisher@oracle.com>
parents:
diff changeset
    25
-      is = [] if is == :absent
f9a4100102d8 PSARC/2013/005 Puppet 3.0.1
Drew Fisher <drew.fisher@oracle.com>
parents:
diff changeset
    26
+      is = [] if is == :absent or is.nil?
f9a4100102d8 PSARC/2013/005 Puppet 3.0.1
Drew Fisher <drew.fisher@oracle.com>
parents:
diff changeset
    27
       is.sort == self.should.sort
f9a4100102d8 PSARC/2013/005 Puppet 3.0.1
Drew Fisher <drew.fisher@oracle.com>
parents:
diff changeset
    28
     end
f9a4100102d8 PSARC/2013/005 Puppet 3.0.1
Drew Fisher <drew.fisher@oracle.com>
parents:
diff changeset
    29
   end
f9a4100102d8 PSARC/2013/005 Puppet 3.0.1
Drew Fisher <drew.fisher@oracle.com>
parents:
diff changeset
    30
 
f9a4100102d8 PSARC/2013/005 Puppet 3.0.1
Drew Fisher <drew.fisher@oracle.com>
parents:
diff changeset
    31
   newproperty(:iptype) do
f9a4100102d8 PSARC/2013/005 Puppet 3.0.1
Drew Fisher <drew.fisher@oracle.com>
parents:
diff changeset
    32
-    desc "The IP stack type of the zone."
f9a4100102d8 PSARC/2013/005 Puppet 3.0.1
Drew Fisher <drew.fisher@oracle.com>
parents:
diff changeset
    33
-    defaultto :shared
f9a4100102d8 PSARC/2013/005 Puppet 3.0.1
Drew Fisher <drew.fisher@oracle.com>
parents:
diff changeset
    34
+    desc "The IP stack type of the zone. The default is to exclusive."
f9a4100102d8 PSARC/2013/005 Puppet 3.0.1
Drew Fisher <drew.fisher@oracle.com>
parents:
diff changeset
    35
+    if ['5.11', '5.12'].include? Facter.value(:kernelrelease)
f9a4100102d8 PSARC/2013/005 Puppet 3.0.1
Drew Fisher <drew.fisher@oracle.com>
parents:
diff changeset
    36
+       defaultto :exclusive
f9a4100102d8 PSARC/2013/005 Puppet 3.0.1
Drew Fisher <drew.fisher@oracle.com>
parents:
diff changeset
    37
+    else
f9a4100102d8 PSARC/2013/005 Puppet 3.0.1
Drew Fisher <drew.fisher@oracle.com>
parents:
diff changeset
    38
+       defaultto :shared
f9a4100102d8 PSARC/2013/005 Puppet 3.0.1
Drew Fisher <drew.fisher@oracle.com>
parents:
diff changeset
    39
+    end
f9a4100102d8 PSARC/2013/005 Puppet 3.0.1
Drew Fisher <drew.fisher@oracle.com>
parents:
diff changeset
    40
     newvalue :shared
f9a4100102d8 PSARC/2013/005 Puppet 3.0.1
Drew Fisher <drew.fisher@oracle.com>
parents:
diff changeset
    41
     newvalue :exclusive
f9a4100102d8 PSARC/2013/005 Puppet 3.0.1
Drew Fisher <drew.fisher@oracle.com>
parents:
diff changeset
    42
   end
f9a4100102d8 PSARC/2013/005 Puppet 3.0.1
Drew Fisher <drew.fisher@oracle.com>
parents:
diff changeset
    43
 
f9a4100102d8 PSARC/2013/005 Puppet 3.0.1
Drew Fisher <drew.fisher@oracle.com>
parents:
diff changeset
    44
+  newproperty(:net_resource, :parent => Puppet::Property::List) do
f9a4100102d8 PSARC/2013/005 Puppet 3.0.1
Drew Fisher <drew.fisher@oracle.com>
parents:
diff changeset
    45
+    desc "The net resource assigned network resource to a zone. The net
f9a4100102d8 PSARC/2013/005 Puppet 3.0.1
Drew Fisher <drew.fisher@oracle.com>
parents:
diff changeset
    46
+          resource represents the assignment of a physical network resource
f9a4100102d8 PSARC/2013/005 Puppet 3.0.1
Drew Fisher <drew.fisher@oracle.com>
parents:
diff changeset
    47
+	   to a zone. The anet resource represents the automatic creation of a
f9a4100102d8 PSARC/2013/005 Puppet 3.0.1
Drew Fisher <drew.fisher@oracle.com>
parents:
diff changeset
    48
+	   network resource for an exclusive-IP zone. This property only needs
f9a4100102d8 PSARC/2013/005 Puppet 3.0.1
Drew Fisher <drew.fisher@oracle.com>
parents:
diff changeset
    49
+          to be set if additional network resources are desired. By default
f9a4100102d8 PSARC/2013/005 Puppet 3.0.1
Drew Fisher <drew.fisher@oracle.com>
parents:
diff changeset
    50
+          an anet resource is created for the zone. To add additional net
f9a4100102d8 PSARC/2013/005 Puppet 3.0.1
Drew Fisher <drew.fisher@oracle.com>
parents:
diff changeset
    51
+          or anet services"
f9a4100102d8 PSARC/2013/005 Puppet 3.0.1
Drew Fisher <drew.fisher@oracle.com>
parents:
diff changeset
    52
+    newvalue :anet
f9a4100102d8 PSARC/2013/005 Puppet 3.0.1
Drew Fisher <drew.fisher@oracle.com>
parents:
diff changeset
    53
+    newvalue :net
f9a4100102d8 PSARC/2013/005 Puppet 3.0.1
Drew Fisher <drew.fisher@oracle.com>
parents:
diff changeset
    54
+
f9a4100102d8 PSARC/2013/005 Puppet 3.0.1
Drew Fisher <drew.fisher@oracle.com>
parents:
diff changeset
    55
+    def should
f9a4100102d8 PSARC/2013/005 Puppet 3.0.1
Drew Fisher <drew.fisher@oracle.com>
parents:
diff changeset
    56
+      @should
f9a4100102d8 PSARC/2013/005 Puppet 3.0.1
Drew Fisher <drew.fisher@oracle.com>
parents:
diff changeset
    57
+    end
f9a4100102d8 PSARC/2013/005 Puppet 3.0.1
Drew Fisher <drew.fisher@oracle.com>
parents:
diff changeset
    58
+
f9a4100102d8 PSARC/2013/005 Puppet 3.0.1
Drew Fisher <drew.fisher@oracle.com>
parents:
diff changeset
    59
+    # overridden so that we match with self.should
f9a4100102d8 PSARC/2013/005 Puppet 3.0.1
Drew Fisher <drew.fisher@oracle.com>
parents:
diff changeset
    60
+    def insync?(is)
f9a4100102d8 PSARC/2013/005 Puppet 3.0.1
Drew Fisher <drew.fisher@oracle.com>
parents:
diff changeset
    61
+      is = [] if is == :absent or is.nil?
f9a4100102d8 PSARC/2013/005 Puppet 3.0.1
Drew Fisher <drew.fisher@oracle.com>
parents:
diff changeset
    62
+      is.sort == self.should.sort
f9a4100102d8 PSARC/2013/005 Puppet 3.0.1
Drew Fisher <drew.fisher@oracle.com>
parents:
diff changeset
    63
+    end
f9a4100102d8 PSARC/2013/005 Puppet 3.0.1
Drew Fisher <drew.fisher@oracle.com>
parents:
diff changeset
    64
+  end
f9a4100102d8 PSARC/2013/005 Puppet 3.0.1
Drew Fisher <drew.fisher@oracle.com>
parents:
diff changeset
    65
+
f9a4100102d8 PSARC/2013/005 Puppet 3.0.1
Drew Fisher <drew.fisher@oracle.com>
parents:
diff changeset
    66
   newproperty(:autoboot, :boolean => true) do
f9a4100102d8 PSARC/2013/005 Puppet 3.0.1
Drew Fisher <drew.fisher@oracle.com>
parents:
diff changeset
    67
     desc "Whether the zone should automatically boot."
f9a4100102d8 PSARC/2013/005 Puppet 3.0.1
Drew Fisher <drew.fisher@oracle.com>
parents:
diff changeset
    68
     defaultto true
f9a4100102d8 PSARC/2013/005 Puppet 3.0.1
Drew Fisher <drew.fisher@oracle.com>
parents:
diff changeset
    69
@@ -218,8 +249,7 @@
f9a4100102d8 PSARC/2013/005 Puppet 3.0.1
Drew Fisher <drew.fisher@oracle.com>
parents:
diff changeset
    70
 
f9a4100102d8 PSARC/2013/005 Puppet 3.0.1
Drew Fisher <drew.fisher@oracle.com>
parents:
diff changeset
    71
     # overridden so that we match with self.should
f9a4100102d8 PSARC/2013/005 Puppet 3.0.1
Drew Fisher <drew.fisher@oracle.com>
parents:
diff changeset
    72
     def insync?(is)
f9a4100102d8 PSARC/2013/005 Puppet 3.0.1
Drew Fisher <drew.fisher@oracle.com>
parents:
diff changeset
    73
-      return true unless is
f9a4100102d8 PSARC/2013/005 Puppet 3.0.1
Drew Fisher <drew.fisher@oracle.com>
parents:
diff changeset
    74
-      is = [] if is == :absent
f9a4100102d8 PSARC/2013/005 Puppet 3.0.1
Drew Fisher <drew.fisher@oracle.com>
parents:
diff changeset
    75
+      is = [] if is == :absent or is.nil?
f9a4100102d8 PSARC/2013/005 Puppet 3.0.1
Drew Fisher <drew.fisher@oracle.com>
parents:
diff changeset
    76
       is.sort == self.should.sort
f9a4100102d8 PSARC/2013/005 Puppet 3.0.1
Drew Fisher <drew.fisher@oracle.com>
parents:
diff changeset
    77
     end
f9a4100102d8 PSARC/2013/005 Puppet 3.0.1
Drew Fisher <drew.fisher@oracle.com>
parents:
diff changeset
    78