Vagrant 使用Puppet Apache类在CentOS上安装Apache1

Vagrant 使用Puppet Apache类在CentOS上安装Apache1,vagrant,puppet,apache-1.3,Vagrant,Puppet,Apache 1.3,我正在尝试使用CentOS 6.4和Apache 1.3创建一个Vagrant设置(这是针对遗留应用程序的)。我正在使用Puppet(虽然如果Chef中的答案更简单,我很乐意使用它)和。我遇到的问题是它安装了Apache2.2,但我不知道如何让它安装Apache1.3 我做错了什么?我怎样才能做对?(关于“升级你的应用程序”的回答将被否决-我无权做出该决定。)你使用的模块没有明确公开一个参数来指定你要安装的httpd软件包的版本 您可以使用Alessandro Franceschi提供的Apac

我正在尝试使用CentOS 6.4和Apache 1.3创建一个Vagrant设置(这是针对遗留应用程序的)。我正在使用Puppet(虽然如果Chef中的答案更简单,我很乐意使用它)和。我遇到的问题是它安装了Apache2.2,但我不知道如何让它安装Apache1.3


我做错了什么?我怎样才能做对?(关于“升级你的应用程序”的回答将被否决-我无权做出该决定。)

你使用的模块没有明确公开一个参数来指定你要安装的
httpd
软件包的版本

您可以使用Alessandro Franceschi提供的Apache模块,而不是使用Puppetlabs模块(源代码-也是))。如果需要安装的软件包的名称不同于
httpd
,则模块会公开一个
package
参数,您可以这样覆盖该参数:

class { 'apache':
  package => 'apache13',
}
相反,如果Apache 1.3是由相同的
httpd
包通过声明所需的特定版本提供的,则可以依赖
version
参数:

class { 'apache':
  version => '1.3.39',
}

显然,您也可以将这两个参数组合在一起。

您使用的模块没有明确公开参数来指定要安装的
httpd
软件包的版本

您可以使用Alessandro Franceschi提供的Apache模块,而不是使用Puppetlabs模块(源代码-也是))。如果需要安装的软件包的名称不同于
httpd
,则模块会公开一个
package
参数,您可以这样覆盖该参数:

class { 'apache':
  package => 'apache13',
}
相反,如果Apache 1.3是由相同的
httpd
包通过声明所需的特定版本提供的,则可以依赖
version
参数:

class { 'apache':
  version => '1.3.39',
}

显然,您也可以将这两个参数组合在一起。

使用这些模块会在Redhat上返回以下错误:

服务器上的错误400:表达式非法。


/etc/puppet/modules/apache/man处的函数调用中,类型名作为函数名是不可接受的。
使用这些模块会在Redhat上返回以下错误:

服务器上的错误400:表达式非法。

/etc/puppet/modules/apache/man处的函数调用中,类型名不能作为函数名。