[英]Order of resources in a class using ensure_packages
我有一个使用apt库和puppet的stdlib的puppet类,这是代码:
class mymodule::gcc_48
{
if $::lsbdistrelease == 12.04 {
include apt
apt::ppa { 'ppa:ubuntu-toolchain-r/test': }
ensure_packages( ['gcc-4.8', 'g++-4.8'] )
exec { 'update_alternatives_gcc':
command => '/usr/sbin/update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.8 50',
creates => '/etc/alternatives/gcc'
}
exec { 'update_alternatives_gpp':
command => '/usr/sbin/update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-4.8 50',
creates => '/etc/alternatives/g++'
}
}
}
我需要木偶按其编写顺序执行所有这些操作(好,除了最后两个exec之外),但是我不清楚如何编写包含sure_packages的依赖关系。 我尝试使用排序箭头(->),但这些命令不适用于函数(例如,sure_packages)。
如所写,所有资源都无序地应用,并且需要运行几次up才能正常工作。
如果可能的话,我想尝试将所有这些代码保留在同一类中。
这是我的理解。 将类apt::ppa
设置如下:
apt::ppa { 'ppa:ubuntu-toolchain-r/test':
# Here puts your code for this class apt::ppa,
before => Package['gcc-4.8', 'g++-4.8']
}
我建议阅读本文档: 学习木偶-资源排序
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.