[chef] opensolaris and chef


Chronological Thread 
  • From: Sig Lange < >
  • To:
  • Subject: [chef] opensolaris and chef
  • Date: Tue, 1 Sep 2009 09:24:18 -0700
  • Domainkey-signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:date:message-id:subject:from:to:content-type; b=fmYYb7u/Ocx8WFcEI/rzM/fdYmwgGUjuCwOhD+Oy8c2gyx9FiSBoLEOltxwZxlLZ7/ 7Z3V2IfTANfMDDZXAtwSdE8npGu7gyqAkCyXbT6stTpM486zD10s7mOTXgYtcBjyvTu3 l7ZtMMbaz9QeGlzZYWJUPaLqGYtGJ0fv9dy0U=

Greetings,

Here is my first run with chef on opensolaris and the feedback of the installation process and usage

# cat /etc/release
                         OpenSolaris 2009.06 snv_111a X86
           Copyright 2009 Sun Microsystems, Inc.  All Rights Reserved.
                        Use is subject to license terms.
                             Assembled 17 April 2009


platform is being detected incorrectly (I assume it should be just solaris) I had to symlink
some ohai plugins

The code uses the output of this command:
# /sbin/uname -X
System = SunOS
Node = xxxx.xxxxxxxx.xxxxxxx
Release = 5.11
KernelID = snv_111a
Machine = i86pc
BusType = <unknown>
Serial = <unknown>
Users = <unknown>
OEM# = 0
Origin# = 1
NumCPU = 1

# The hacky fix was this
cd /var/ruby/1.8/gem_home/gems/ohai-0.3.2/lib/ohai/plugins
ln -s solaris2/ solaris2.11


I didn't use bootstrap for chef to setup instead did it manually in bash script since the group and user resources are missing.

Then after working with solaris for a bit I realized I needed to write a package provider. I developed Chef::Provider::Package::Opensolaris that uses IPS.
The code was modeled after the gem package manager so some things don't make sense but it works.

I also developed Chef::Provider::Service::Opensolaris which does the basics with svcs/svcadmin and has worked for me thus far. I intend to make more revisions to these as time/need permits but here it is now.

Also put together a very mininum zfs resource/provider pair. Far from complete but it got the job done :)

There was also some issues with building and installing. I ran into the "isinf()" undefined symbol, addressed here: http://wiki.opscode.com/display/chef/Installation+on+OpenSolaris+2008.11+with+RubyGems

And from snv101 to svn111 the install prefixes changes durastically too. Uncertain why

The attached tar.gz contains the three providers (and resources) mentioned, it'd be nice to get these put into mainstream chef.

Keep it cooking,

~ Sig


Attachment: chef-lib-2009-09-01.tar.gz
Description: GNU Zip compressed data




Archive powered by MHonArc 2.6.16.

§