2016-04-26 84 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所做的,它聲明瞭這個類。