我怎样才能强制puppet在freebsd中使用端口集合?

我怎样才能强制puppet在freebsd中使用端口集合?

我刚刚尝试了基本的 Puppet 清单,实际上需要大约 23 秒才能应用。

root@ovh:/root # cat freebsd.pp
package { '*./editors/vim':
    ensure => installed,
}

添加--debug开关后,可以清楚地看到puppet每次如何使用pkg_add重新安装vim包。

q1)如何强制 Puppet 使用端口集合(可能是使用某些 portmaster 或任何其他端口管理实用程序)?

q2) 此软件包名称是否也适用于 Linux 发行版?或者我应该使用file不同的provider?

答案1

删除通配符并提供提供商是否有助于加快速度?

package { 'editors/vim':
    ensure => 'installed',
    provider => 'ports',
}

要添加对多种操作系统的支持,您可以使用:

case $operatingsystem {
    centos, redhat: { 
        $provider = "yum",
        $vim = "vim", 
    }
    freebsd: { 
        $provider = "ports", 
        $vim = "editors/vim", 
    }
    default: { fail("Unrecognized operating system") }

}

package { $vim:
    ensure => 'installed',
    provider => $provider,
}

相关内容