इसे छोड़कर कंटेंट पर जाएं

कॉन्फ़िगरेशन संदर्भ

सभी पाइपलाइन व्यवहार config/ में दो YAML फ़ाइलों द्वारा नियंत्रित होता है।

api:
base_url: "https://example-tenant.console.ves.volterra.io"
tenant: "example-tenant"
namespace: "example-namespace"
timeout: 30
retries: 3
retry_delay: 2
फ़ील्डविवरण
base_urlF5 XC कंसोल API बेस URL। F5XC_API_URL एनवायरनमेंट वेरिएबल से ओवरराइड करें।
tenantAPI पथों में उपयोग किया जाने वाला टेनेंट नाम।
namespaceCRUD ऑपरेशनों के लिए डिफ़ॉल्ट नेमस्पेस।
timeoutHTTP अनुरोध टाइमआउट सेकंड में।
retriesविफलता पर पुनः प्रयास की संख्या।
retry_delayपुनः प्रयासों के बीच सेकंड।

डाउनलोड सेटिंग्स

Section titled “डाउनलोड सेटिंग्स”
download:
url: "https://docs.cloud.f5.com/docs-v2/downloads/f5-distributed-cloud-open-api.zip"
output_dir: "specs/original"
etag_cache: ".etag_cache"
फ़ील्डविवरण
urlआधिकारिक F5 XC OpenAPI स्पेक बंडल (ZIP) का URL।
output_dirजहाँ निकाली गई स्पेक्स संग्रहीत होती हैं।
etag_cacheवह फ़ाइल जो सशर्त डाउनलोड के लिए HTTP ETag संग्रहीत करती है।

सत्यापन श्रेणियाँ

Section titled “सत्यापन श्रेणियाँ”

OpenAPI स्कीमा बाधा प्रकारों के अनुरूप दस श्रेणियाँ। प्रत्येक को स्वतंत्र रूप से सक्षम/अक्षम किया जा सकता है।

validation_categories:
string_length:
enabled: true
keywords: ["minLength", "maxLength"]
description: "Validate string length boundaries"
श्रेणीकीवर्ड्स
string_lengthminLength, maxLength
patternpattern
numeric_boundsminimum, maximum, exclusiveMinimum, exclusiveMaximum
required_fieldsrequired
enum_valuesenum
array_boundsminItems, maxItems, uniqueItems
object_structureadditionalProperties, properties, propertyNames
compositiononeOf, anyOf, allOf
dependenciesdependentRequired, dependentSchemas
data_typestype, format
schemathesis:
enabled: true
max_examples: 100
hypothesis_phases:
- generate
- target
stateful_testing: true
base_url_override: null
auth_header: "Authorization"
auth_prefix: "APIToken"
फ़ील्डविवरण
enabledSchemathesis परीक्षण को टॉगल करें।
max_examplesप्रति ऑपरेशन जनरेट किए गए अधिकतम टेस्ट केसों की संख्या।
hypothesis_phasesचलाने के लिए Hypothesis चरण (generate, target)।
stateful_testingऑपरेशनों के बीच स्टेटफुल लिंक-आधारित परीक्षण सक्षम करें।
base_url_overrideपरीक्षणों के लिए API बेस URL ओवरराइड करें। null होने पर api.base_url का उपयोग होता है।
auth_headerप्रमाणीकरण के लिए HTTP हेडर नाम।
auth_prefixटोकन प्रीफ़िक्स फ़ॉर्मेट (अनुरोध APIToken <token> के रूप में भेजे जाते हैं)।

समाधान सेटिंग्स

Section titled “समाधान सेटिंग्स”
reconciliation:
priority:
- existing
- discovery
- inferred
fix_strategies:
tighter_spec: "relax"
looser_spec: "tighten"
missing_constraint: "add"
extra_constraint: "remove"
फ़ील्डविवरण
priorityजब एकाधिक डेटा स्रोत असहमत हों तो प्राथमिकता का क्रम।
fix_strategiesप्रत्येक विसंगति प्रकार को उसकी फ़िक्स कार्रवाई से मैप करता है। लागू किए गए सुधार देखें।
spectral:
enabled: true
ruleset: "spectral-pipeline.yaml"
auto_fix:
oas3-api-servers: true
info-contact: true
operation-tags: true
oas3-unused-component: true
operation-operationId-unique: true
oas3-valid-schema-example: true
no-script-tags-in-markdown: true
gate:
max_errors: null
max_warnings: null
contact:
name: "F5 Distributed Cloud"
url: "https://docs.cloud.f5.com"
email: "support@f5.com"
servers:
- url: "https://{tenant}.console.ves.volterra.io"
description: "F5 Distributed Cloud API"
variables:
tenant:
default: "example-tenant"
description: "Your F5 XC tenant name"
security_scheme:
type: "apiKey"
in: "header"
name: "Authorization"
description: "F5 XC API Token (format: APIToken <token>)"
फ़ील्डविवरण
enabledSpectral लिंटिंग को पूरी तरह टॉगल करें।
rulesetकौन सी Spectral कॉन्फ़िग फ़ाइल उपयोग करनी है (पाइपलाइन spectral-pipeline.yaml उपयोग करती है)।
auto_fixनियम नाम से बूलियन का मैप। true का अर्थ है कि समाधानकर्ता उल्लंघनों को ठीक करेगा।
gate.max_errorsसमाधान-पश्चात गेट में अधिकतम अनुमत त्रुटियाँ। null जाँच अक्षम करता है।
gate.max_warningsअधिकतम अनुमत चेतावनियाँ। null जाँच अक्षम करता है।
contactinfo-contact फ़िक्सर द्वारा info.contact में इंजेक्ट की जाने वाली संपर्क जानकारी।
serversoas3-api-servers फ़िक्सर द्वारा इंजेक्ट किया जाने वाला सर्वर्स ऐरे।
security_schemeप्रत्येक स्पेक में इंजेक्ट की जाने वाली सुरक्षा स्कीम परिभाषा।

रिपोर्ट सेटिंग्स

Section titled “रिपोर्ट सेटिंग्स”
reports:
output_dir: "reports"
formats:
- json
- html
- markdown
include_examples: true
max_examples_per_issue: 5

रिलीज़ सेटिंग्स

Section titled “रिलीज़ सेटिंग्स”
release:
output_dir: "release"
include_changelog: true
include_validation_report: true
version_from: "git"
फ़ील्डविवरण
output_dirरिलीज़ आर्टिफ़ैक्ट्स के लिए डायरेक्टरी।
include_changelogरिलीज़ पैकेज में CHANGELOG.md शामिल करें।
include_validation_reportरिलीज़ पैकेज में सत्यापन रिपोर्ट शामिल करें।
version_fromसंस्करण स्रोत। git स्पेक मेटाडेटा तिथि + पैच नंबर से संस्करण प्राप्त करता है।

लाइव API सत्यापन के लिए उपयोग किए जाने वाले बेसलाइन एंडपॉइंट्स को परिभाषित करता है। प्रत्येक प्रविष्टि एक तार्किक संसाधन नाम को उसकी स्पेक फ़ाइल, API समूह, और CRUD पथों से मैप करती है।

एंडपॉइंट संरचना

Section titled “एंडपॉइंट संरचना”
endpoints:
healthcheck:
resource: healthchecks
domain_file: docs-cloud-f5-com.0124.public.ves.io.schema.healthcheck.ves-swagger.json
api_group: config
crud_operations:
create: POST /api/config/namespaces/{namespace}/healthchecks
read: GET /api/config/namespaces/{namespace}/healthchecks/{name}
list: GET /api/config/namespaces/{namespace}/healthchecks
update: PUT /api/config/namespaces/{namespace}/healthchecks/{name}
delete: DELETE /api/config/namespaces/{namespace}/healthchecks/{name}
test_priority: high
description: "Health check configurations for origin monitoring"
फ़ील्डविवरण
resourceAPI संसाधन नाम (URL पथों में उपयोग किया जाता है)।
domain_filespecs/original/ में OpenAPI स्पेक का फ़ाइलनाम।
api_groupAPI समूह प्रीफ़िक्स (config, web, आदि)।
crud_operationsप्रत्येक CRUD ऑपरेशन के लिए HTTP मेथड और पथ।
test_priorityhigh, medium, या low — परीक्षण निष्पादन क्रम को नियंत्रित करता है।
descriptionसंसाधन का मानव-पठनीय विवरण।

वर्तमान बेसलाइन एंडपॉइंट्स

Section titled “वर्तमान बेसलाइन एंडपॉइंट्स”

तीन डोमेन में 10 एंडपॉइंट्स:

एंडपॉइंटडोमेनप्राथमिकता
healthcheckवर्चुअलhigh
origin_poolवर्चुअलhigh
app_firewallवर्चुअलhigh
service_policyवर्चुअलmedium
api_definitionAPI सुरक्षाhigh
api_discoveryAPI सुरक्षाmedium
api_groupsAPI सुरक्षाmedium
code_base_integrationAPI सुरक्षाlow
data_typeडेटा गोपनीयताmedium
sensitive_data_policyडेटा गोपनीयताmedium

नए एंडपॉइंट्स जोड़ना

Section titled “नए एंडपॉइंट्स जोड़ना”

सत्यापन के लिए नया एंडपॉइंट जोड़ने हेतु:

  1. specs/original/ में स्पेक फ़ाइलनाम खोजें (फ़ॉर्मेट: docs-cloud-f5-com.NNNN.*.ves-swagger.json)
  2. ऊपर दी गई संरचना का पालन करते हुए endpoints: के अंतर्गत एक प्रविष्टि जोड़ें
  3. domain_files: के अंतर्गत प्राथमिकता संख्या के साथ डोमेन फ़ाइल मैपिंग जोड़ें
  4. एंडपॉइंट नाम को test_order: में वांछित स्थिति पर जोड़ें