يتم التحكم في جميع سلوكيات خط المعالجة من خلال ملفي YAML في config/.
base_url : " https://example-tenant.console.ves.volterra.io "
namespace : " example-namespace "
الحقل الوصف base_urlعنوان URL الأساسي لواجهة برمجة تطبيقات وحدة تحكم F5 XC. يمكن تجاوزه بمتغير البيئة F5XC_API_URL. tenantاسم المستأجر المستخدم في مسارات واجهة برمجة التطبيقات. namespaceمساحة الأسماء الافتراضية لعمليات CRUD. timeoutمهلة طلب HTTP بالثواني. retriesعدد محاولات إعادة المحاولة عند الفشل. retry_delayالثواني بين محاولات إعادة المحاولة.
تنبيه
قيم base_url و tenant و namespace في validation.yaml هي عناصر نائبة عامة. يجب عليك تهيئة هذه القيم لبيئتك عبر متغيرات البيئة قبل تشغيل خط المعالجة:
export F5XC_API_URL = " https://example-tenant.console.ves.volterra.io "
export F5XC_TENANT = " example-tenant "
export F5XC_NAMESPACE = " example-namespace "
export F5XC_API_TOKEN = " your-api-token "
تأخذ متغيرات البيئة الأولوية على القيم الافتراضية في ملف YAML أثناء التشغيل.
url : " https://docs.cloud.f5.com/docs-v2/downloads/f5-distributed-cloud-open-api.zip "
output_dir : " specs/original "
etag_cache : " .etag_cache "
الحقل الوصف urlعنوان URL لحزمة مواصفات OpenAPI الرسمية من F5 XC (بصيغة ZIP). output_dirمكان تخزين المواصفات المستخرجة. etag_cacheالملف الذي يخزن علامة ETag الخاصة ببروتوكول HTTP للتنزيلات المشروطة.
عشر فئات تتوافق مع أنواع قيود مخطط OpenAPI. يمكن تمكين/تعطيل كل منها بشكل مستقل.
keywords : [ " minLength " , " maxLength " ]
description : " Validate string length boundaries "
الفئة الكلمات المفتاحية string_lengthminLength، maxLengthpatternpatternnumeric_boundsminimum، maximum، exclusiveMinimum، exclusiveMaximumrequired_fieldsrequiredenum_valuesenumarray_boundsminItems، maxItems، uniqueItemsobject_structureadditionalProperties، properties، propertyNamescompositiononeOf، anyOf، allOfdependenciesdependentRequired، dependentSchemasdata_typestype، format
auth_header : " Authorization "
الحقل الوصف enabledتبديل تشغيل/إيقاف اختبار Schemathesis. max_examplesالحد الأقصى لعدد حالات الاختبار المولدة لكل عملية. hypothesis_phasesمراحل Hypothesis المراد تشغيلها (generate، target). stateful_testingتمكين الاختبار ذي الحالة القائم على الروابط عبر العمليات. base_url_overrideتجاوز عنوان URL الأساسي لواجهة برمجة التطبيقات للاختبارات. القيمة null تستخدم api.base_url. auth_headerاسم ترويسة HTTP للمصادقة. auth_prefixتنسيق بادئة الرمز المميز (تُرسل الطلبات بصيغة APIToken <token>).
missing_constraint : " add "
extra_constraint : " remove "
الحقل الوصف priorityترتيب الأولوية عندما تتعارض مصادر البيانات المتعددة. fix_strategiesيربط كل نوع من التناقضات بإجراء الإصلاح الخاص به. انظر الإصلاحات المُطبقة .
ruleset : " spectral-pipeline.yaml "
oas3-unused-component : true
operation-operationId-unique : true
oas3-valid-schema-example : true
no-script-tags-in-markdown : true
name : " F5 Distributed Cloud "
url : " https://docs.cloud.f5.com "
- url : " https://{tenant}.console.ves.volterra.io "
description : " F5 Distributed Cloud API "
default : " example-tenant "
description : " Your F5 XC tenant name "
description : " F5 XC API Token (format: APIToken <token>) "
الحقل الوصف enabledتبديل تشغيل/إيقاف فحص Spectral بالكامل. rulesetملف إعدادات Spectral المراد استخدامه (يستخدم خط المعالجة spectral-pipeline.yaml). auto_fixخريطة من اسم القاعدة إلى قيمة منطقية. القيمة true تعني أن المُسوّي سيصلح الانتهاكات. gate.max_errorsالحد الأقصى المسموح به للأخطاء في بوابة ما بعد التسوية. القيمة null تعطل الفحص. gate.max_warningsالحد الأقصى المسموح به للتحذيرات. القيمة null تعطل الفحص. contactمعلومات الاتصال المُدرجة في info.contact بواسطة مُصلح info-contact. serversمصفوفة الخوادم المُدرجة بواسطة مُصلح oas3-api-servers. security_schemeتعريف مخطط الأمان المُدرج في كل مواصفة.
max_examples_per_issue : 5
include_validation_report : true
الحقل الوصف output_dirدليل مخرجات الإصدار. include_changelogتضمين CHANGELOG.md في حزمة الإصدار. include_validation_reportتضمين تقرير التحقق في حزمة الإصدار. version_fromمصدر الإصدار. القيمة git تستخلص الإصدار من تاريخ بيانات المواصفات الوصفية + رقم التصحيح.
يحدد نقاط النهاية الأساسية المستخدمة للتحقق المباشر من واجهة برمجة التطبيقات. يربط كل إدخال اسم مورد منطقي بملف المواصفات الخاص به ومجموعة واجهة برمجة التطبيقات ومسارات CRUD.
domain_file : docs-cloud-f5-com.0124.public.ves.io.schema.healthcheck.ves-swagger.json
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}
description : " Health check configurations for origin monitoring "
الحقل الوصف resourceاسم مورد واجهة برمجة التطبيقات (يُستخدم في مسارات URL). domain_fileاسم ملف مواصفات OpenAPI في specs/original/. api_groupبادئة مجموعة واجهة برمجة التطبيقات (config، web، إلخ). crud_operationsطريقة HTTP والمسار لكل عملية CRUD. test_priorityhigh أو medium أو low — يتحكم في ترتيب تنفيذ الاختبارات.descriptionوصف مقروء للمورد.
10 نقاط نهاية عبر ثلاثة نطاقات:
نقطة النهاية النطاق الأولوية healthcheckافتراضي عالية origin_poolافتراضي عالية app_firewallافتراضي عالية service_policyافتراضي متوسطة api_definitionأمان واجهة برمجة التطبيقات عالية api_discoveryأمان واجهة برمجة التطبيقات متوسطة api_groupsأمان واجهة برمجة التطبيقات متوسطة code_base_integrationأمان واجهة برمجة التطبيقات منخفضة data_typeخصوصية البيانات متوسطة sensitive_data_policyخصوصية البيانات متوسطة
لإضافة نقطة نهاية جديدة للتحقق:
ابحث عن اسم ملف المواصفات في specs/original/ (الصيغة: docs-cloud-f5-com.NNNN.*.ves-swagger.json)
أضف إدخالاً تحت endpoints: باتباع الهيكل الموضح أعلاه
أضف ربط ملف النطاق تحت domain_files: مع رقم أولوية
أضف اسم نقطة النهاية إلى test_order: في الموضع المطلوب