body package_method homebrew
{
package_changes => "bulk";
package_add_command => "/usr/local/bin/brew install";
package_delete_command => "/usr/local/bin/brew uninstall";
package_delete_convention => "$(name)";
package_installed_regex => ".*";
package_list_command => "/usr/local/bin/brew list --versions";
package_list_name_regex => "([\S]+)\s[\S]+";
package_list_update_command => "/usr/local/bin/brew update";
package_list_update_ifelapsed => "240";
package_list_version_regex => "[\S]+\s([\S]+)";
package_name_convention => "$(name)";
package_verify_command => "/usr/local/bin/brew list";
package_noverify_returncode => "1";
package_update_command => "/usr/local/bin/brew upgrade";
}
bundle agent nrpe
{
packages:
"nrpe"
package_policy => "add",
package_method => brew;
}
I get this error :
acme:~ adminesl$ sudo /usr/local/bin/cf-agent -KIl -f ./test-brew.cf
Q: brew update ...:Already up-to-date.
Installing nrpe...
Q: brew install nrpe ...:Error: Cowardly refusing to `sudo brew install`
Q: brew install nrpe ...:You can use brew with sudo, but only if the brew executable is owned by root.
Q: brew install nrpe ...:However, this is both not recommended and completely unsupported so do so at
Q: brew install nrpe ...:your own risk.
Finished command related to promiser 'nrpe' -- an error occurred, returned 1
Bulk package schedule execution failed somewhere - unknown outcome for 'nrpe'
acme:~ adminesl$
whereas if I change
package_add_command => "/usr/local/bin/brew install";
to
package_add_command => "sudo -u adminesl /usr/local/bin/brew install";
adminesl being:
acme:~ adminesl$ id adminesl
uid=501(adminesl) gid=20(staff) groups=20(staff),404(com.apple.sharepoint.group.2),405(com.apple.sharepoint.group.3),402(com.apple.access_ssh),403(com.apple.sharepoint.group.1),401(com.apple.access_screensharing),12(everyone),33(_appstore),61(localaccounts),79(_appserverusr),80(admin),81(_appserveradm),98(_lpadmin),100(_lpoperator),204(_developer)
it works :
acme:~ adminesl$ sudo /usr/local/bin/cf-agent -KIl -f ./test-brew.cf
Q: brew update ...:Already up-to-date.
Installing nrpe...
Q: ...:==> Downloading http://downloads.sourceforge.net/project/nagios/nrpe-2.x/nrpe-2.15/nrpe-2.15.tar.gz
Q: ...:Already downloaded: /Library/Caches/Homebrew/nrpe-2.15.tar.gz
Q: ...:==> ./configure --prefix=/usr/local/Cellar/nrpe/2.15 --libexecdir=/usr/local/Cellar/nrpe/2.15/sbin --with-nrpe-user=adminesl --with-nrpe-group=staff --with-nagios-user=adminesl --with-nagios-group=staff --enable-ssl --enable-command-args
Q: ...:==> make all
Q: ...:==> make install
Q: ...:==> make install-daemon-config
Q: ...:==> Caveats
Q: ...:The nagios plugin check_nrpe has been installed in:
Q: ...: /usr/local/sbin
Q: ...:
Q: ...:You can start the daemon with
Q: ...: /usr/local/Cellar/nrpe/2.15/bin/nrpe -c /usr/local/etc/nrpe.cfg -d
Q: ...:==> Summary
Q: ...:🍺 /usr/local/Cellar/nrpe/2.15: 6 files, 112K, built in 8 seconds
acme:~ adminesl$