मैंने परिभाषित करने में कई तर्क पारित किए।कठपुतली में परिभाषित करने के लिए दो या दो से अधिक चर कैसे पास करें
निम्नलिखित मेरा कोड है। मैं परिभाषित के अंदर दो सरणी पास करना चाहता हूं, लेकिन मैं निम्नलिखित की तरह केवल एक को पास करने में सक्षम हूं।
class test {
$path = [$path1,$path2]
$filename = [$name1,$name2]
define testscript { $filename: } // Can able to pass one value.
}
define testscript() {
file {"/etc/init.d/${title}": //Can able to receive the file name.
ensure => file,
content => template('test/test.conf.erb'),
}
मेरे ऊपर कोड से, मैं filename
संसाधन परिभाषित के अंदर पुनः प्राप्त कर सकते हैं। टेम्पलेट में मान सेट करने के लिए मुझे path
की भी आवश्यकता है। मैं टेम्पलेट में दूसरा तर्क भेजने/पुनर्प्राप्त करने में सक्षम नहीं हूं।
क्या संसाधन को परिभाषित करने के अंदर दो मान ($path
और $filename
) पास करने के लिए मेरे कोड को बेहतर बनाने का कोई तरीका है?
किसी भी मदद की बहुत सराहना की जाती है।
अपने कोड से, आप * परिभाषित प्रकार के शरीर के अंदर फ़ाइल नाम पुनर्प्राप्त नहीं कर सकते हैं, क्योंकि आपकी कक्षा में वाक्यविन्यास त्रुटि है। –
@ जॉन बोलिंगर: ओउप्स, क्या आप इसे इंगित कर सकते हैं? ताकि मैं इसे भविष्य में ठीक कर सकूं। – ArunRaj
परिभाषित प्रकार के उदाहरण की घोषणा करते समय आप 'परिभाषित' कीवर्ड का उपयोग नहीं करते हैं, क्योंकि कठपुतली स्वयं आपको बताएगी। जैसा कि मैंने अपने उत्तर में कहा था, आप एक परिभाषित प्रकार का उपयोग किसी अन्य संसाधन प्रकार की तरह करते हैं। –