On 12/17/2013 04:31 PM, Patrick Gibson wrote: > Debug: Executing '/usr/local/sbin/portupgrade -N -M BATCH=yes devel/jsmin'
In short, out-of-the-box, puppet is broken on FreeBSD in regards to package handling. Portupgrade doesn't like being run with stdin not being a terminal. You'll probably find you have a `script` process taking 100% cpu when you see it hang. This problem has been around for a long time and still hasn't been fixed as far as I know. The default (freebsd) pkg_add binary package provider is also broken mainly because the of heuristics that pkg_add -r use. You'll find this to a problem when the symlink name under /Latest doesn't match the name that the package records in the pkgdb. This leads to puppet trying to install the package on every run. If you install puppet from ports, it applies a patch to address this problem but requires using the ports origin (like with the ports provider) as the package name. Instead of using pkg_add -r, it downloads the ports index and looks up the package name for a given ports origin and then supplies the specific url of the full package name as a argument to pkg_add. I have an updated version of this provider that fixes a number of issues as well as supporting ensure => latest. https://bitbucket.org/csub/puppet-module-freebsd Be aware, having this module in your module path will mask the default freebsd provider distributed with puppet. There are also third party puppet modules that implement a provider for pkgng that work well. If you can migrate to pkgng, I would strongly suggest doing so. -- Russell A. Jackson <r...@csub.edu> Network/Datacenter Operations California State University, Bakersfield
signature.asc
Description: OpenPGP digital signature