2013-02-01 51 views
8

पुन: प्राप्त नहीं कर सकता है शायद यहां कुछ बेहद बेवकूफ कर रहा है लेकिन मुझे इसका कारण बनने पर कोई दस्तावेज नहीं मिल रहा है।कठपुतली डुप्लिकेट घोषणा: कक्षा [Mongodb] पहले ही घोषित कर दिया गया है;

कठपुतली का उपयोग कर एक वग्रेंट वीएम सेट करना और मैं mongodb मॉड्यूल के भीतर एक विशिष्ट सेटिंग को ओवरराइड करने का प्रयास कर रहा हूं।

जहां तक ​​मुझे पता है कि README.md वाक्यविन्यास उस रेपो में गलत है (हालांकि मैंने भी कोशिश की है)।

मेरे मैनिफ़ेस्ट:

include mongodb 

class { 'mongodb' : 
port => '1111'; 
} 

जब vagrant up चल मैं निम्नलिखित त्रुटि मिलती है: अगर मैं विन्यास ओवरराइड यह पूरी तरह से काम करता है लेकिन वहाँ कोई कारण नहीं क्यों यह नहीं है निकाल

Duplicate declaration: Class[Mongodb] is already declared; cannot redeclare at /tmp/vagrant-puppet/manifests/mongodb.pp:5 on node www 

उत्तर

9

आप इसे प्राप्त करने के लिए दो नोटेशन का उपयोग कर रहे हैं, लेकिन आप केवल दूसरे नोटेशन के साथ पैरामीटर का उपयोग कर सकते हैं। संक्षेप में, आप इसे दो बार घोषित कर रहे हैं।

तो, बस 'मोंगोडब शामिल करें' खो दें और आप अच्छे हैं।

और जानकारी: http://docs.puppetlabs.com/puppet/2.7/reference/lang_classes.html#declaring-a-class-with-include

+0

धन्यवाद !! इसके बारे में सबसे बुरा हिस्सा यह है कि जब मैंने यह प्रश्न लिखा था तो मेरा पृष्ठ खुला था। वह मुझे सुबह 1 बजे यह सामान करने के लिए सिखाएगा। एक बार फिर धन्यवाद –

1

हाँ, बस include mongodb पंक्ति निकाल दें। यह काम करेगा, लेकिन सुनिश्चित करें कि class { 'mongodb': ... } अभी भी रहेगा। अन्यथा, include mongodb

 संबंधित मुद्दे

  • कोई संबंधित समस्या नहीं^_^