Issue #22769 has been updated by Paul Lussier.

My main points were:

1) There is no clearly documented default for this option (it should probably 
be 'true')
2) There are no documented valid values for this options
3) In 2.7.x the only valid value for this option is 'yes', 
4) The ABSENCE of an atboot option on Solaris results in failure with an 
obfuscated error message that provides no indication of what the problem is. In 
the event that the value is unspecified, puppet should assume a reasonable 
default of 'yes'.
5) The use of "atboot => false" results in the same failure mode as NOT having 
this option listed for Solaris (with or without quoting the word 'false')
5) The error message reported during all failure cases associated with the 
'atboot' option leaves NO indication as to what the problem is.  It is not even 
a coherent error message: “err: /Stage[main]/Mount[/foo]/ensure: change from 
absent to mounted failed: Got a nil value for should at "

What does "Got a nil value for should at" mean ? How about: "atboot option not 
set", or "invalid value for atboot option" or ANYTHING else that indicates the 
issue is with the 'atboot' option.

6) As you pointed out, the only valid values for this option in the /etc/vfstab 
are 'yes' or 'no', NOT 'true' or 'false'.  Yet in puppet 2.7.x puppet will 
complain with the above mentioned obfuscated error if 'true' and 'false' are 
used.  And further, puppet complains if 'false' or 'no' are used.  The only 
valid value which results in a working configuration is 'atboot => yes'.

Most of these issues could be cleared up by documenting this behavior in the 
mount{} Type documentation.

----------------------------------------
Bug #22769: mount{} type on Solaris 10 requires 'atboot' option to be set to 
true.
https://projects.puppetlabs.com/issues/22769#change-98828

* Author: Paul Lussier
* Status: Needs More Information
* Priority: Normal
* Assignee: 
* Category: Solaris
* Target version: 
* Affected Puppet version: 2.7.21
* Keywords: mount solaris
* Branch: 
----------------------------------------
$mountops  = 'proto=tcp,vers=3,rsize=32768,wsize=32768,noexec,nosuid,rw,bg,hard\
,intr'
$fs = '/foo'

# This works fine
mount {
  $fs :
    device      => "${nfs_server}:${fs}",
    atboot      => true,
    ensure      => mounted,
    fstype      => 'nfs',
    blockdevice => '-',
    options     => $mountops,
    dump        => 1;                                                           
}

#####
# The following fail
#####
mount {
  $fs :
    device      => "${nfs_server}:${fs}",
    ensure      => mounted,
    fstype      => 'nfs',
    blockdevice => '-',
    options     => $mountops,
    dump        => 1;                                                           
}

mount {
  $fs :
    device      => "${nfs_server}:${fs}",
    atboot      => false,
    ensure      => mounted,
    fstype      => 'nfs',
    blockdevice => '-',
    options     => $mountops,
    dump        => 1;                                                           
}

The error message provided for the last two calls to mount is:

"err: /Stage[main]/Mount[/foo]/ensure: change from absent to mounted failed: 
Got a nil value for should at /etc/puppet/manifests/nodes.pp:68"

This does not occur on Linux, or with puppet 2.7.9 and earlier.



-- 
You have received this notification because you have either subscribed to it, 
or are involved in it.
To change your notification preferences, please click here: 
http://projects.puppetlabs.com/my/account

-- 
You received this message because you are subscribed to the Google Groups 
"Puppet Bugs" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/puppet-bugs.
For more options, visit https://groups.google.com/groups/opt_out.

Reply via email to