gpt4 book ai didi

rubygems - Puppet:在没有预装 Rubygems 的机器上安装 Rubygem-package

转载 作者:行者123 更新时间:2023-12-01 06:40:53 26 4
gpt4 key购买 nike

在干净的 Debian 系统上——没有安装 Rubygems——我想安装一个带有 Puppet 的 Rubygem 包(版本 2.7.13)。所以包有“gem”作为包提供者。

到目前为止,这是我的 list (我保持简单):

# test.pp
Package { ensure => 'installed' }

package {
'rubygems' :
name => 'rubygems',
}

package {
'libldap-ruby1.8' :
name => 'libldap-ruby1.8',
}

package { 'libldap2-dev' :
name => 'libldap2-dev',
}

package { 'libsasl2-dev' :
name => 'libsasl2-dev',
}

package { 'libsasl2-modules-ldap' :
name => 'libsasl2-modules-ldap',
}

# My Rubygem, with Provider type 'gem'
package {
'ruby-ldap' :
name => 'ruby-ldap',
provider => 'gem',
}

Package [ 'rubygems' ] -> Package [ 'ruby-ldap' ]
Package [ 'libldap2-dev' ] -> Package [ 'ruby-ldap' ]
Package [ 'libsasl2-modules-ldap' ] -> Package [ 'ruby-ldap' ]

当我测试这个 list (使用 puppet apply --noop test.pp )时,我得到以下输出:
err: /Stage[main]//Package[ruby-ldap]: Provider gem is not functional on this host

我在网上挖掘并找到了一些关于 Puppet+Rubygems 的信息(例如 this ),但这些都没有帮助我解决我的问题,因为没有一个提供了一些代码的真正解决方案。

我也尝试使用类和阶段(在 gem 安装之前的一个阶段进行 ruby​​gem 安装),但我总是得到 Provider gem -error(但也许我只是以错误的方式使用了这些阶段)。

任何人都可以向我提供一份在没有 Rubygems 的系统上安装 ruby​​gems 和任何 ruby​​gem 的工作 list ,或者至少是如何到达那里的最终提示?

最佳答案

虽然我的问题应该用 Puppet 2.7.8 解决(我使用的是 2.7.13) - 见 this issue - 我很确定我在 2.7.13 中遇到了这个问题。

我在另一台安装了 2.7.14 的机器上重新尝试了这个,在那里我可以成功地安装 Rubygems 和一个带有 Puppet 的 Rubygem 包。

关于rubygems - Puppet:在没有预装 Rubygems 的机器上安装 Rubygem-package,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10538975/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com