इस प्रोजेक्ट के बारे में

goVergeOS एक Go क्लाइंट लाइब्रेरी है जो VergeOS इंफ्रास्ट्रक्चर को प्रोग्रामेटिक रूप से प्रबंधित करने के लिए है। यह वर्चुअल मशीनों, नेटवर्किंग, स्टोरेज, मल्टी-टेनेंसी और डिजास्टर रिकवरी संचालन के लिए पूर्ण API कवरेज प्रदान करती है। इंफ्रास्ट्रक्चर एडमिनिस्ट्रेटर और Go डेवलपर्स के लिए निर्मित, यह Terraform प्रोवाइडर, Prometheus एक्सपोर्टर और अन्य VergeOS टूलिंग के लिए आधार के रूप में कार्य करती है। मुख्य विशेषताओं में पूर्ण VM प्रबंधन (बनाना, कॉन्फ़िगर करना, पावर, क्लोन, स्नैपशॉट), उन्नत नेटवर्किंग (वर्चुअल नेटवर्क, फ़ायरवॉल नियम, DHCP, DNS, BGP/OSPF/EIGRP, WireGuard और IPSec VPN), NAS और स्टोरेज (वॉल्यूम, CIFS/NFS शेयर, स्नैपशॉट प्रोफ़ाइल), मल्टी-टेनेंसी (टेनेंट प्रोविज़निंग, संसाधन आवंटन, नोड प्रबंधन), और डिजास्टर रिकवरी (क्लाउड स्नैपशॉट, रिमोट साइट सिंक्रोनाइज़ेशन, बैकअप शेड्यूलिंग) शामिल हैं। लाइब्रेरी मॉकिंग के लिए इंटरफेस, संदर्भ समर्थन और थ्रेड-सुरक्षित समवर्ती संचालन के साथ एक टाइप-सुरक्षित Go API प्रदान करती है। आवश्यकताएँ: Go 1.21 या बाद का संस्करण, VergeOS 26.0 या बाद का संस्करण, केवल मानक लाइब्रेरी (कोई बाहरी निर्भरता नहीं)। स्थापना: `go get github.com/verge-io/govergeos` त्वरित प्रारंभ: बेसिक ऑथ या API कुंजी का उपयोग करके कनेक्ट करें, पर्यावरण चर के माध्यम से कॉन्फ़िगर करें, और `client.VMs`, `client.Networks`, `client.Tenants` जैसी सेवा वस्तुओं के माध्यम से संसाधनों का प्रबंधन करें। लाइब्रेरी फ़ील्ड चयन, फ़िल्टरिंग, सॉर्टिंग, पेजिनेशन और टाइप की गई त्रुटि हैंडलिंग का समर्थन करती है। यह समवर्ती उपयोग के लिए सुरक्षित है और विभिन्न उपयोग मामलों के लिए व्यापक उदाहरण शामिल करती है।