puppet 2.6.5-rc1 Parameter type failed: type is read-only

1,496 views
Skip to first unread message

John Warburton

unread,
Feb 7, 2011, 4:19:57 AM2/7/11
to puppet-users
Hello All

Well, I quickly packaged up puppet-2.6.5-rc1 and dropped it on my test VM (Solaris 10 U9) against my 2.6.4 server, and immediately started getting the same error message, but on different manifests, or the same manifests but different line numbers. These manifests were written in 0.25.5 days and successfully made the transition to 2.6.4 running on a couple of hundred servers

John

root@warbjohn# /opt/local/sbin/run-puppet.sh --color true
+ /opt/local/sbin/puppetd --server puppet-lab.bfm.com --verbose --onetime --no-daemonize --ignorecache --no-usecacheonfailure --config /var/puppet/etc/puppetd.conf --environment Lwarbjoh --logdest /var/log/puppet_client/puppet_client.log --color true
err: Could not run Puppet configuration client: Parameter type failed: type is read-only at /u1/warbjoh/svn-workspace/puppet/trunk/modules/base/manifests/openssh.pp:44

root@warbjohn# /opt/local/sbin/run-puppet.sh --color true
+ /opt/local/sbin/puppetd --server puppet-lab.bfm.com --verbose --onetime --no-daemonize --ignorecache --no-usecacheonfailure --config /var/puppet/etc/puppetd.conf --environment Lwarbjoh --logdest /var/log/puppet_client/puppet_client.log --color true
err: Could not run Puppet configuration client: Parameter type failed: type is read-only at /u1/warbjoh/svn-workspace/puppet/trunk/modules/base/manifests/openssh.pp:54

root@warbjohn# /opt/local/sbin/run-puppet.sh --color true
+ /opt/local/sbin/puppetd --server puppet-lab.bfm.com --verbose --onetime --no-daemonize --ignorecache --no-usecacheonfailure --config /var/puppet/etc/puppetd.conf --environment Lwarbjoh --logdest /var/log/puppet_client/puppet_client.log --color true
err: Could not run Puppet configuration client: Parameter type failed: type is read-only at /u1/warbjoh/svn-workspace/puppet/trunk/modules/base/manifests/init.pp:111

root@warbjohn# /opt/local/sbin/run-puppet.sh --color true --trace
+ /opt/local/sbin/puppetd --server puppet-lab.bfm.com --verbose --onetime --no-daemonize --ignorecache --no-usecacheonfailure --config /var/puppet/etc/puppetd.conf --environment Lwarbjoh --logdest /var/log/puppet_client/puppet_client.log --color true --trace
info: Retrieving plugin
info: Loading facts in cyberark_init
info: Loading facts in pkgs_facts
info: Loading facts in svcs_facts
info: Loading facts in serialnumber
info: Loading facts in solaris_memory
info: Loading facts in cyberark_init
info: Loading facts in pkgs_facts
info: Loading facts in svcs_facts
info: Loading facts in serialnumber
info: Loading facts in solaris_memory
info: Caching catalog for warbjohn.insidelive.net
/opt/local/lib/puppet/parameter.rb:171:in `fail'
/opt/local/lib/puppet/type/file/type.rb:15:in `unsafe_validate'
/opt/local/lib/puppet/parameter.rb:255:in `validate'
/opt/local/lib/puppet/property.rb:300:in `should='
/opt/local/lib/puppet/property.rb:300:in `each'
/opt/local/lib/puppet/property.rb:300:in `should='
/opt/local/lib/puppet/property.rb:337:in `value='
/opt/local/lib/puppet/type.rb:416:in `[]='
/opt/local/lib/puppet/type.rb:1773:in `set_parameters'
/opt/local/lib/puppet/type.rb:1767:in `each'
/opt/local/lib/puppet/type.rb:1767:in `set_parameters'
/opt/local/lib/puppet/type.rb:1749:in `initialize'
/opt/local/lib/puppet/type/file.rb:387:in `initialize'
/opt/local/lib/puppet/resource.rb:277:in `new'
/opt/local/lib/puppet/resource.rb:277:in `to_ral'
/opt/local/lib/puppet/resource/catalog.rb:553:in `send'
/opt/local/lib/puppet/resource/catalog.rb:553:in `to_catalog'
/opt/local/lib/puppet/resource/catalog.rb:531:in `each'
/opt/local/lib/puppet/resource/catalog.rb:531:in `to_catalog'
/opt/local/lib/puppet/resource/catalog.rb:468:in `to_ral'
/opt/local/lib/puppet/configurer.rb:113:in `convert_catalog'
/opt/local/lib/puppet/configurer.rb:108:in `retrieve_catalog'
/opt/local/lib/puppet/configurer.rb:139:in `run'
/opt/local/lib/puppet/agent.rb:39
/opt/local/lib/puppet/agent/locker.rb:21:in `lock'
/opt/local/lib/puppet/agent.rb:39
/opt/local/pkgs/ruby-1.8.7-p249/lib/ruby/1.8/sync.rb:230:in `synchronize'
/opt/local/lib/puppet/agent.rb:39
/opt/local/lib/puppet/agent.rb:103:in `with_client'
/opt/local/lib/puppet/agent.rb:37
/opt/local/lib/puppet/application.rb:171:in `call'
/opt/local/lib/puppet/application.rb:171:in `controlled_run'
/opt/local/lib/puppet/agent.rb:35:in `run'
/opt/local/lib/puppet/application/agent.rb:114:in `onetime'
/opt/local/lib/puppet/application/agent.rb:88:in `run_command'
/opt/local/lib/puppet/application.rb:304:in `run'
/opt/local/lib/puppet/application.rb:410:in `exit_on_fail'
/opt/local/lib/puppet/application.rb:304:in `run'
/opt/local/sbin/puppetd:4
err: Could not run Puppet configuration client: Parameter type failed: type is read-only at /u1/warbjoh/svn-workspace/puppet/trunk/modules/base/manifests/openssh.pp:44

John Warburton

unread,
Feb 7, 2011, 5:46:51 PM2/7/11
to puppet-users
Let me get back to you on this. The server is still 2.6.4!
--
John Warburton
Ph: 0417 299 600
Email: jwarb...@gmail.com

John Warburton

unread,
Feb 9, 2011, 5:57:58 AM2/9/11
to puppet-users
OK - I found the issue. Because 2.6.x gives us nice human readable(ish) catalogs, I compiled mine and the 'random' hits were all for directories. Re-reading the manifest, I see those directories in the error messages all had "type => directory", like

    file { "/var/empty":
        ensure => 'directory',
        type   => 'directory',
        mode   => 755,

Seems 2.6.5 is being a bit tighter

Anyway - all is well after deleting these types.

John

John Warburton

unread,
Feb 14, 2011, 6:30:57 PM2/14/11
to puppet-users
On 9 February 2011 21:57, John Warburton <jwarb...@gmail.com> wrote:
OK - I found the issue. Because 2.6.x gives us nice human readable(ish) catalogs, I compiled mine and the 'random' hits were all for directories. Re-reading the manifest, I see those directories in the error messages all had "type => directory", like

    file { "/var/empty":
        ensure => 'directory',
        type   => 'directory',
        mode   => 755,

I was wondering how the type in the file resource for directories got in there. Maybe too enthusiastic reading of the manual? It seems it may have been ralsh from when it was working.

Now that https://projects.puppetlabs.com/issues/3165 is resolved, I used ralsh on a directory with 2.6.5rc2, and it generated the same bad code!

I have raised https://projects.puppetlabs.com/issues/6314

John

Nigel Kersten

unread,
Feb 14, 2011, 7:26:54 PM2/14/11
to puppet...@googlegroups.com

Thanks John. I'll do some clarification around your ticket, as we have
a wider problem with all read-only attributes.

I'm wondering whether it would be useful for puppet resource to have
an optional flag that did display read-only attributes? Certainly by
default we shouldn't be displaying them.

Reply all
Reply to author
Forward
0 new messages