عن المشروع
Fuel Core هو تنفيذ عميل Fuel الرسمي، مكتوب بلغة Rust كعقدة كاملة لبروتوكول Fuel v2. يتضمن المستودع ملف العقدة التنفيذي، والحزم الداعمة، والأدوات اللازمة لبناء واختبار وتشغيل عقدة Fuel.
## إصدارات الشبكة
يسرد ملف README الإصدارات المستخدمة حالياً في شبكات Fuel المختلفة:
- Fuel Ignition: 0.48.1
- Testnet: 0.48.1
- Devnet: 0.48.1
كما يشير المستودع إلى وسم checkout بالإصدار v0.45.1 لتشغيل عقدة Ignition من المصدر، والذي قد يختلف عن أحدث إصدار في الجدول.
## البناء
تشمل متطلبات النظام أدوات البناء الشائعة مثل cmake وpkg-config وclang وRust مع هدف `wasm32-unknown-unknown`. وتُقدَّم أوامر إعداد خاصة بكل منصة لنظام macOS (Homebrew) وDebian (apt) وArch (pacman).
أوامر البناء:
- `make build` لبناء ملف العقدة التنفيذي بنمط الإصدار
- `cargo xtask build` لعمليات البناء التطويرية، والتي تعيد أيضاً إنشاء مخطط GraphQL
## تشغيل عقدة
تشير روابط التوثيق إلى وثائق Fuel لمشغلي العقد لتشغيل عقد الشبكة الرئيسية (Ignition) أو الشبكات المحلية. ويمكن أيضاً تشغيل عقدة مباشرة باستخدام `fuel-core run`؛ وتوضح الأمثلة استخدام `--db-type in-memory` للحالة غير الدائمة و`--poa-instant=false` لتعطيل إنتاج الكتل التلقائي. قاعدة البيانات الافتراضية هي RocksDB، وتُحفظ الحالة بشكل دائم ما لم يُستخدم وضع الذاكرة.
## الاختبار والمساهمة
يشجع المشروع المساهمين على تشغيل `source ci_checks.sh` قبل دفع التغييرات أو فتح طلبات السحب. يشغّل هذا السكربت جميع فحوصات CI، بما في ذلك الاختبارات. وهناك أيضاً ملاحظات لاستكشاف الأخطاء وإصلاحها تتعلق بنشر الحزم، وأخطاء قواعد البيانات القديمة (`rm -rf ~/.fuel/db`)، وحدود واصفات الملفات في macOS، وتكوين مستوى السجلات عبر `RUST_LOG` أو `HUMAN_LOGGING`.
## خدمة GraphQL
تُتاح وظائف العميل عبر نقطة نهاية خدمة GraphQL على المسار `/v1/graphql`. يصبح المخطط متاحاً في `crates/client/assets/schema.sdl` بعد البناء. وتتوقع الخدمة طفرة `submit` تقبل Transaction بصيغة ثنائية مُرمَّزة بالنظام الست عشري، وفقاً لمواصفات Fuel.
## Docker وKubernetes
تُضمَّن أصول النشر ضمن `deployment/`، مع Dockerfile وبيان Kubernetes. وتوضح الأوامر كيفية بناء صورة Docker وإنشاء/حذف موارد وحدة التخزين والنشر والخدمة في Kubernetes.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.