我正在尝试创建一个依赖关系,以使phpwebserver
配置文件在silex_api
配置文件之前运行。我使用木偶是否正确?
作用:
class roles::dev{
include profiles::phpwebserver
include profiles::silex_api
Class ['profiles::phpwebserver'] ->
Class ['profiles::silex_api']
}
silex_api简介:
class profiles::silex_api{
class { '::silex' :
package_version => '1.6.2',
}
class {'::composer' :
command_name => 'composer.phar',
target_dir => '/var',
user => 'root'
}
contain ::composer
contain ::silex
}
phpwebserver简介:
class profiles::phpwebserver{
class { '::apache':
default_vhost => false,
conf_template => "apache/httpd.silex.conf.erb",
service_name => "httpd",
package_ensure => "2.2.15-39.el6",
service_enable => true,
service_ensure => "running",
}
class {'::apache::mod::php':
package_name => "php",
path => "${::apache::params::lib_path}/libphp54-php5.so",
}
contain ::apache
contain ::apache::mod::php
}
类:如下图所示
class silex{
class { 'silex::install': }
class { 'silex::service': }
}
的phpwebserver
曲线运行成功,第一,如果我明确地包含内部silex_api
所有类:
class profiles::silex_api{
class { '::silex' :
package_version => '1.6.2',
}
class {'::composer' :
command_name => 'composer.phar',
target_dir => '/var',
user => 'root'
}
contain ::composer
contain ::silex::install
contain ::silex::service
}
现在我需要contain
所有子类这对于我来说,似乎不正确。有没有更好的方法来完成这一点,或者这是确保依赖关系的标准方法吗?
谢谢,但我没有看到自动数据绑定将如何解决依赖关系问题? – kaizenCoder
RE:“如果你使用包含不要再声明类” - 木偶初学者指南确实如此:https://puppet.com/docs/puppet/5.3/bgtm.html#ordering – 7yl4r