How to set default package provider for a node?

I have several OSX nodes that have packages installed via MacPorts and others that use HomeBrew to install packages, the macports_package resource documentation explicitly says that it is preferential to use the package resource so that the recipe will be portable, something I’m trying to do.

What I can’t figure out is how to set Chef::Provider::Package::Macports as the default package provider for a node. I’m using chef-client version 12.17.44 and the default package provider is HomeBrew, which I can’t use on an existing node due to it already having and needing MacPorts.

CHEF-3371 (still open) from 2012 requests specifying a default provider for a node, but that issue doesn’t look to have any traction since then.

Is there any way to get Chef::Provider::Package::Macports, macports_package as the default package provider for a node?


  • Adam