Good day,
After having lurked for a while I've decided to actually start using
puppet starting on my small home network. I've been following :
http://reductivelabs.com/trac/puppet/wiki/InstallationGuide
and :-
http://www.howtoforge.com/installing_puppet_on_ubuntu
to test puppet on 2 hosts, librarian running the puppetmasterd and
mortvm.
Unfortunately, I didn't get very far; whilst trying to obtain a cert
for mortvm I've received the following errors :-
adrian@mort:~$ sudo puppetd --server librarian --waitforcert 60 --test
Could not autoload "/usr/lib/ruby/1.8/puppet/provider/host/parsed.rb":
undefined method `set_options' for
#<Puppet::Util::FileParsing::FileRecord:0xb76cb684 @type=:text>
Could not autoload "/usr/lib/ruby/1.8/puppet/provider/mount/parsed.rb":
undefined method `set_options' for
#<Puppet::Util::FileParsing::FileRecord:0xb76a7bd0 @type=:text>
Could not autoload "/usr/lib/ruby/1.8/puppet/provider/sshkey/parsed.rb":
undefined method `set_options' for
#<Puppet::Util::FileParsing::FileRecord:0xb76a0da8 @type=:text>
Could not autoload "/usr/lib/ruby/1.8/puppet/provider/cron/crontab.rb":
undefined method `set_options' for
#<Puppet::Util::FileParsing::FileRecord:0xb7696e5c @type=:text>
Could not autoload "/usr/lib/ruby/1.8/puppet/provider/package/fink.rb":
undefined method `has_feature' for Puppet::Type::Package::ProviderFink:Class
Could not autoload "/usr/lib/ruby/1.8/puppet/provider/package/rug.rb":
undefined method `has_feature' for Puppet::Type::Package::ProviderRug:Class
/usr/local/lib/site_ruby/1.8/puppet/provider.rb:52: warning: multiple values
for a block parameter (2 for 1)
from /usr/lib/ruby/1.8/puppet/provider/package/urpmi.rb:7
Could not autoload "/usr/lib/ruby/1.8/puppet/provider/package/urpmi.rb": can't
convert Array into String
Could not autoload "/usr/lib/ruby/1.8/puppet/provider/package/aptrpm.rb":
undefined method `has_feature' for Puppet::Type::Package::ProviderAptrpm:Class
Could not autoload
"/usr/lib/ruby/1.8/puppet/provider/user/directoryservice.rb": undefined method
`has_feature' for Puppet::Type::User::ProviderDirectoryservice:Class
/usr/lib/ruby/1.8/puppet/util/subclass_loader.rb:22:in `handle_subclasses':
uninitialized constant Puppet::Util::Autoload (NameError)
from /usr/lib/ruby/1.8/puppet/network/client.rb:42
from /usr/sbin/puppetd:159
This is with the following packages (downloaded from debian sid) :-
ii facter 1.3.8-1 a library for retrieving
facts from operating systems
ii libopenssl-ruby 1.0.0+ruby1.8.2-1 OpenSSL interface for Ruby
ii libopenssl-ruby1.8 1.8.4-5ubuntu1.2 OpenSSL interface for Ruby 1.8
ii libshadow-ruby1.8 1.4.1-7 Interface of shadow password
for Ruby 1.8
ii libxmlrpc-ruby 1.8.2-1 XML-RPC support for Ruby
ii puppet 0.23.2-10 centralised configuration
management for networks
ii ruby 1.8.2-1 An interpreter of
object-oriented scripting language Ruby
ii ruby1.8 1.8.4-5ubuntu1.2 Interpreter of
object-oriented scripting language Ruby 1.8
I've just tested this on a Ubuntu feisty host and it doesn't give
this error so it would seem to indicate some problems with
(presumably newer versions of) puppet on Ubuntu edgy.
Can anyone else confirm (or deny) this before I report a bug.
Sincerely,
Adrian Phillips
--
Who really wrote the works of William Shakespeare ?
http://www.pbs.org/wgbh/pages/frontline/shakespeare/
Thread at a glance:
Previous Message by Date:
click to view message preview
managing FreeBSD services
Hi,
I'd like to hear opinions from FreeBSD users. I've wrote a freebsd service
provider, which is available as Ticket #837.
http://reductivelabs.com/trac/puppet/ticket/837
This hack extends init service provider, by adding enable method. With
freebsd.rb, you can enable services like other service providers do.
service { foo:
ensure => running,
enable => true,
...
}
service { foo:
ensure => stopped, # no need to modify rc.conf
enable => false,
...
}
To apply the patch, download and save the patch, copy it
under /usr/ports/sysutils/puppet/files
(or, /usr/ports/sysutils/puppet-devel/files if you're using puppet-devel),
update and restart puppet.
freebsd.rb invokes an external script to enable or disable services. The
attached file to this message is rc-update, which modifies rc.conf. To give
it a try, simply copy it under /usr/local/sbin, execute "rc-update enable
the-service-name-to-enable".
etc-update is meant to be used to enable or disable by adding foo_enable="..."
in rc.conf. The problem I am trying to solve is, when you want to start a
service, foo_enable must be set to YES. Another problem is, when you want to
stop and disable a running service, you must *NOT* set foo_enable to NO
before stopping the service.
* you make a change to rc.conf, foo_enable to "NO", preventing if from running
at boot
* stop the service in site.pp, service { foo: ensure => stopped }
* commit the changes to the repository
* the service doesn't stop (you should have stopped it before modifying
rc.conf!)
My solution is a hack in that it cannot use templates for rc.conf (actually,
it can, but a mess). Proper use of rc.conf.local might solve the issue.
This patch and rc-update are not in Puppet tree nor in Ports tree (FreeBSD
commiter doesn't like rc-update).
Another solution to the issue is to distribute each rc.conf with puppet. See
scott's solution.
[Puppet-users] handling rc.conf / freebsd init scripts
http://mail.madstop.com/pipermail/puppet-users/2007-September/004315.html
IMO, his solution is better in that you can manage both rc.conf and services
well. However, I'd like to manage services like other service providers do.
What do you think?
--
Tomoyuki Sakurai
rc-update
Description: application/shellscript
_______________________________________________
Puppet-users mailing list
Puppet-users@xxxxxxxxxxx
https://mail.madstop.com/mailman/listinfo/puppet-users
Next Message by Date:
click to view message preview
Re: Initial setup problems on Ubuntu edgy (06.10)
On Sun, Sep 30, 2007 at 02:12:20PM +0200, Adrian Phillips wrote:
> Unfortunately, I didn't get very far; whilst trying to obtain a cert
> for mortvm I've received the following errors :-
>
> adrian@mort:~$ sudo puppetd --server librarian --waitforcert 60 --test
> Could not autoload "/usr/lib/ruby/1.8/puppet/provider/host/parsed.rb":
> undefined method `set_options' for
> #<Puppet::Util::FileParsing::FileRecord:0xb76cb684 @type=:text>
That is a *weird* error. It's almost as if there's two completely separate
installations of Puppet fighting each other. Is this a clean Edgy install
that's just had the Puppet packages installed on top, or one that's perhaps
been experimented on before?
Try running 'find / -name puppetd' and 'find / -name methodhelper.rb' and
see if you get more than one result for either of those. Also, try
hard-coding the path to puppetd (/usr/sbin/puppetd) when you're running it
on the command line and see if that fixes the problem (since it's using the
packaged files for the libraries).
I've got Puppet running on Dapper and Edgy boxes, and I've also seen reports
from others that it's working on Edgy. PEBKAC seems the most likely option
at this stage.
- Matt
--
"I'm tempted to try Gentoo, but then I learned that its installer is in
Python, and, well, a base Python install on my system is something like
fifty megabytes (for what? oh, right, we NEED four XML libraries, I
forgot)." -- Dave Brown, ASR
Previous Message by Thread:
click to view message preview
managing FreeBSD services
Hi,
I'd like to hear opinions from FreeBSD users. I've wrote a freebsd service
provider, which is available as Ticket #837.
http://reductivelabs.com/trac/puppet/ticket/837
This hack extends init service provider, by adding enable method. With
freebsd.rb, you can enable services like other service providers do.
service { foo:
ensure => running,
enable => true,
...
}
service { foo:
ensure => stopped, # no need to modify rc.conf
enable => false,
...
}
To apply the patch, download and save the patch, copy it
under /usr/ports/sysutils/puppet/files
(or, /usr/ports/sysutils/puppet-devel/files if you're using puppet-devel),
update and restart puppet.
freebsd.rb invokes an external script to enable or disable services. The
attached file to this message is rc-update, which modifies rc.conf. To give
it a try, simply copy it under /usr/local/sbin, execute "rc-update enable
the-service-name-to-enable".
etc-update is meant to be used to enable or disable by adding foo_enable="..."
in rc.conf. The problem I am trying to solve is, when you want to start a
service, foo_enable must be set to YES. Another problem is, when you want to
stop and disable a running service, you must *NOT* set foo_enable to NO
before stopping the service.
* you make a change to rc.conf, foo_enable to "NO", preventing if from running
at boot
* stop the service in site.pp, service { foo: ensure => stopped }
* commit the changes to the repository
* the service doesn't stop (you should have stopped it before modifying
rc.conf!)
My solution is a hack in that it cannot use templates for rc.conf (actually,
it can, but a mess). Proper use of rc.conf.local might solve the issue.
This patch and rc-update are not in Puppet tree nor in Ports tree (FreeBSD
commiter doesn't like rc-update).
Another solution to the issue is to distribute each rc.conf with puppet. See
scott's solution.
[Puppet-users] handling rc.conf / freebsd init scripts
http://mail.madstop.com/pipermail/puppet-users/2007-September/004315.html
IMO, his solution is better in that you can manage both rc.conf and services
well. However, I'd like to manage services like other service providers do.
What do you think?
--
Tomoyuki Sakurai
rc-update
Description: application/shellscript
_______________________________________________
Puppet-users mailing list
Puppet-users@xxxxxxxxxxx
https://mail.madstop.com/mailman/listinfo/puppet-users
Next Message by Thread:
click to view message preview
Re: Initial setup problems on Ubuntu edgy (06.10)
On Sun, Sep 30, 2007 at 02:12:20PM +0200, Adrian Phillips wrote:
> Unfortunately, I didn't get very far; whilst trying to obtain a cert
> for mortvm I've received the following errors :-
>
> adrian@mort:~$ sudo puppetd --server librarian --waitforcert 60 --test
> Could not autoload "/usr/lib/ruby/1.8/puppet/provider/host/parsed.rb":
> undefined method `set_options' for
> #<Puppet::Util::FileParsing::FileRecord:0xb76cb684 @type=:text>
That is a *weird* error. It's almost as if there's two completely separate
installations of Puppet fighting each other. Is this a clean Edgy install
that's just had the Puppet packages installed on top, or one that's perhaps
been experimented on before?
Try running 'find / -name puppetd' and 'find / -name methodhelper.rb' and
see if you get more than one result for either of those. Also, try
hard-coding the path to puppetd (/usr/sbin/puppetd) when you're running it
on the command line and see if that fixes the problem (since it's using the
packaged files for the libraries).
I've got Puppet running on Dapper and Edgy boxes, and I've also seen reports
from others that it's working on Edgy. PEBKAC seems the most likely option
at this stage.
- Matt
--
"I'm tempted to try Gentoo, but then I learned that its installer is in
Python, and, well, a base Python install on my system is something like
fifty megabytes (for what? oh, right, we NEED four XML libraries, I
forgot)." -- Dave Brown, ASR