
VEX रिपॉजिटरी विनिर्देशन
इस दस्तावेज़ में कीवर्ड "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", और "OPTIONAL" की व्याख्या RFC 2119 में वर्णित अनुसार की जानी है।
संस्करणों की तुलना करते समय:
उदाहरण तुलनाएँ:
मैनिफेस्ट फ़ाइल VEX डेटा रिपॉजिटरी के बारे में मेटाडेटा प्रदान करती है। इस फ़ाइल में VEX डेटा प्राप्त करने और अद्यतन करने के लिए आवश्यक जानकारी होनी चाहिए (MUST)।
https://<domain>/.well-known/vex-repository.json पर स्थित होना आवश्यक (MUST) है।vex-repository.json को मुख्य शाखा की रूट निर्देशिका में रखा जाना आवश्यक (MUST) है।मैनिफेस्ट फ़ाइल के लिए JSON स्कीमा यहाँ परिभाषित है।
{
"name": "Example Org VEX Repository",
"description": "VEX repository for Example Organization",
"versions": [
{
"spec_version": "0.1",
"locations": [
{
"url": "https://example.com/vex-hub/v0/vex-data-v0.tar.gz"
}
],
"update_interval": "24h",
"repository_specific": {
"location": {
"repository_type": "db",
"db_type": "bbolt",
"url": "oci://ghcr.io/example.com/vex-db:0"
}
}
},
{
"spec_version": "1.0",
"locations": [
{
"url": "https://example.com/vex-hub/v1/vex-data-v1.tar.gz//subdirectory"
},
{
"url": "https://example.com/vex-api/v1"
}
],
"update_interval": "1h"
}
]
}
| फ़ील्ड | आवश्यक | विवरण और उपयोग नोट्स |
|---|---|---|
| name | ✓ | रिपॉजिटरी का नाम। |
| description | ✓ | रिपॉजिटरी का संक्षिप्त विवरण। |
| versions | ✓ | उपलब्ध संस्करणों के विवरण वाली एक सरणी। सरणी का प्रत्येक ऑब्जेक्ट एक संस्करण का प्रतिनिधित्व करता है जो VEX रिपॉजिटरी विनिर्देश के एक संस्करण को लागू करता है। संस्करणों को आरोही क्रम में, सबसे पुराने से नवीनतम तक क्रमबद्ध होना आवश्यक (MUST) है। उप-फ़ील्ड के लिए अलग तालिका देखें। |
| फ़ील्ड | आवश्यक | विवरण और उपयोग नोट्स |
|---|---|---|
| spec_version | ✓ | लागू किए गए VEX रिपॉजिटरी विनिर्देश का संस्करण (जैसे, "0.1")। प्रारूप "X.Y" होना आवश्यक (MUST) है, जैसा कि अनुभाग 1 में परिभाषित है। |
| locations | ✓ | VEX डेटा लोकेशन का वर्णन करने वाले ऑब्जेक्ट्स की एक सरणी। इसमें कम से कम एक लोकेशन ऑब्जेक्ट होना आवश्यक (MUST) है। उप-फ़ील्ड के लिए अलग तालिका देखें। |
| update_interval | ✓ | इस संस्करण के VEX डेटा के लिए अनुशंसित अद्यतन जाँच अंतराल। Go अवधि प्रारूप का उपयोग करता है (जैसे, "1h", "30m", "24h")। |
| repository_specific | - | अतिरिक्त रिपॉजिटरी-विशिष्ट जानकारी। |
| फ़ील्ड | आवश्यक | विवरण और उपयोग नोट्स |
|---|---|---|
| url | ✓ | VEX डेटा लोकेशन के लिए URL, जो "https://" से शुरू होता है। सामग्री अनुभाग 3 और 4 में दी गई रिपॉजिटरी संरचना विनिर्देशों का पालन करती है। URL में '//' के बाद उपनिर्देशिका पथ जोड़कर एक उपनिर्देशिका निर्दिष्ट की जा सकती है। |
रिपॉजिटरी में निम्नलिखित संरचना होना आवश्यक (MUST) है:
vex-repository.<archive_extension>
[optional_subdirectory/]
├── index.json
└── pkg/
├── <type>/
│ ├── <namespace>/
│ │ ├── <name>/
│ │ │ └── vex.json
│ │ └── ...
│ └── ...
└── ...