2016-04-26 87 views
0

我正在开发木偶学习虚拟机使用Ruby,我不太熟悉。我被困在练习5舱单和类,任务2 https://kjhenner.gitbooks.io/puppet-quest-guide/content/quests/manifests_and_classes.html木偶学习虚拟机:清单和类(红宝石)

在前面的任务,我创建cowsay.pp:

class cowsayings::cowsay { 
    package { 'cowsay': 
    ensure => present, 
    provider => 'gem', 
    } 
} 

然后在任务二,我想创建同一个文件中与指令的另一位置:

任务2:

如果你要这个代码应用到您的生产基础设施,你可以使用控制台的节点分类到任何节点牛逼分类帽子需要cowsay与你的cowsay类一起安装。但是,当你在模块上工作时,直接应用类是有用的。按照惯例,这些测试清单保存在示例目录中。 (您可能有时也会在测试目录中看到这些清单。)

要实际声明该类,请在examples目录中创建一个cowsay.pp测试。

vim cowsayings/examples/cowsay.pp 在这个清单中,用include关键字声明cowsay类。

include cowsayings::cowsay 

我不知道如何创建第二个文件以及在哪里添加此行。我曾经尝试都:

class cowsayings::coway { 
    include cowsayings::cowsay 
    package { 'cowsay': 
    ensure => present, 
    provider => 'gem', 
    } 
} 

class cowsayings{ 
    include cowsayings::cowsay 
} 

虽然它似乎并没有工作,当我运行它,它不正确的任务3(安装cowsay在上面,我的链接发布

回答

1

示例目录清单只需要与一个行“包括cowsayings :: cowsay”。

有迹象表明,有木偶发生两个任务,“规定”共轭亚油酸sses并“宣布”它们。 cowsayings/manifests/cowsay.pp包含该定义,但您需要实际声明该类才能使某些事情发生。

这就是puppet apply cowsayings/examples/cowsay.pp所做的,它声明了这个类。