एक ही वर्ग / मॉड्यूल / orwhateveritis कई बार


9

कठपुतली को मुझसे घृणा करनी चाहिए। मैं अंत में घंटे के लिए डॉक्टर पढ़ रहा हूं और फिर भी निम्नलिखित प्राप्त करने का प्रबंधन नहीं कर सकता:

  • एक वर्ग या मॉड्यूल (या इसे क्या कहा जाता है) इसमें एक चर के साथ (एक मानकीकृत वर्ग;);
  • इस वर्ग को एक ही मेजबान में कई बार शामिल किया जाना है।

छद्म कोड में, यह होगा:

# The class
classorwhatever myclass ($value) {
    notify { "$value world" }
}

# In the node definition
node whatever {
    myclass("Hello")
    myclass("Goodbye")
}

मुझे इतना मूर्खतापूर्ण लगता है कि यह मजाकिया भी नहीं है। मुझे पता है कि यह उल्लेखनीय होना चाहिए। पर कैसे? :(


आप इसे पढ़ रहे हैं? docs.puppetlabs.com/learning/modules2.html । कठपुतली का क्या प्रतिशोध आपके सर्वर / क्लाइंट पर है?
ज़ॉर्दाचे

@Zoredache 2.6.12 सर्वर और क्लाइंट दोनों पर
fge

जवाबों:


13

आप केवल एक बार एक मानकीकृत वर्ग का उपयोग कर सकते हैं। यदि आप एक परिभाषा के साथ कई बार नोड को हिट करने की योजना बनाते हैं, तो डेटा परिभाषाएं अलग-अलग होती हैं।

उदाहरण

class apache ( $module ) {
  if module = ssl then and so on
}

define apache::vhost ($priority=99) {
  file { "apache/vhost.d/${name}":
    content => template("apache/vhosts/$name.erb"),
  }
}

node webserver {
  class { 'apache': module => 'ssl', }
  apache::vhost { 'www': priority => 00, }
  apache::vhost { 'test': priority => 99, } 
}

अति उत्कृष्ट। fwode पर fwiw #puppet और मेल सूचियाँ बहुत सक्रिय हैं और इस तरह की चीजों को गहराई से कवर किया है। यदि आप सिर्फ कठपुतली से शुरुआत कर रहे हैं तो मैं सुझाव दूंगा कि उन दोनों संसाधनों को हाथ में रखें।
काशानी
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.